감자 텃밭

orge 본문

my_study/LOB

orge

g2h 2021. 5. 20. 03:57

해당 계정 또한 ls -l로 파일 및 디렉터리를 확인 후. c파일을 열어 소스코드를 확인함.

troll.c파일

해당 소스코드를 보면 나머지는 이전과 전부 동일하지만 인자 값이 하나만 입력받도록 되어있다. 또한 argv [0] 값도 버퍼가 초기화되듯 초기화된다. 흠... 그럼 여기서 쓸 수 있는 방법은 argv [0]을 사용하는 것이다.

이번 문제도 ln -s 심볼릭 링크를 사용하면 풀 수 있을 거 같다.

 

이번에도 rename은 권한 문제로 되지 않는다.

이번엔 argv [0]의 주소를 알아내야 한다.

작업을 위해 tmp 디렉터리 생성 후 tmp디렉터리에서 작업을 해보자

core dump

이번에도 마찬가지로 core dump를 사용할 것이다.

앗 여기서 실수를 했다.. 여기서 argv [1]의 값이 사라지므로 argc [0] 즉 파일 이름을 기록하기에 보기쉽게 파일이름을 바꿔 실행했다. 여기서는 권한 문제가 없으므로 rename을 사용했다.


파일 이름에 쉘 코드를 삽입하였으니 쉘코드 처음 \xeb\x11 를 찾아보니 0xbffffbb8 주소값이 나왔다!!

아 참고로 이번엔 쉘코드를 다른 걸 사용하였다.

\x2f는 "\"를 가리키기 때문에 디렉터리 구분 인자로 본다. 그러므로 \x 2가 없는

\xeb\x11\x5e\x31\xc9\xb1\x32\x80\x6c\x0e\xff\x01\x80\xe9\x01\x75\xf6\xeb\x05\xe8\xea\xff\xff\xff\x32\xc1\x51\x69\x30\x30\x74\x69\x69\x30\x63\x6a\x6f\x8a\xe4\x51\x54\x8a\xe2\x9a\xb1\x0c\xce\x81

이 코드를 사용하였다.

이제 심볼릭 링크를 이용하여 원본 파일과 일치하는 쉘 코드가 담긴 파일을 생성하자

 

성공적으로 파일을 생성

자 이제 payload를 작성해보자

성공적으로 쉘을 획득하고 패스워드를 알아낼 수 있었다!!!

'my_study > LOB' 카테고리의 다른 글

darkelf  (0) 2021.05.20
wolfman  (0) 2021.05.20
orc  (0) 2021.05.19
goblin  (0) 2021.05.18
cobolt  (0) 2021.05.18