|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|


1576, 1/79 |
![]() |
![]() |
![]() |
![]() |
|
tkakr7458 | ||||||
|
format string bug + got overwite | ||||||
|
http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=1864 [복사]
Hit : 3324 Date : 2017/04/19 08:28
|
|||||||
| ![]() |
| |
| 해쿨러 | 이 문제 자체의 의도는 hello를 한번만 호출하란건데, hello에 _exit이 있어서 어차피 hello간다음에 종료하겠지만 만약에 없는 상황에서 연속해서 호출하는 방법은 스택을 덮어야 합니다 exit함수의 GOT를 인자 1을 받아도 정상진행하는 함수 예를들어 execve로 덮고(execve는 인자가 잘못되도 프로그램이 종료되지 않습니다) 그다음에 sfp의 포인터를 찾습니다, 즉 main함수의 sfp를 vuln함수의 sfp가 가르키고 있으니 vuln함수의 sfp에 %n으로 주소를 덮어서 main함수의 ret부터 쭉 페이로드를 fsb로 덮으면 fsb로도 call chaining을 할 수 있습니다 |
2017/04/20 | |
| 해쿨러 | http://www.hackerschool.org/Sub_Html/HS_Posting/?uid=38 | 2017/04/20 | |
| tkakr7458 | 감사합니다. ㅠㅠ | 2017/04/20 | |
|
|