j0n9hyun's secret 본문
statically linked, stripped이다.
ida로 main을 찾았다
sub_43f670 = open()
sub_43f6d0 = read()
sub_43f730 = write()
함수를 눌러보면 무슨함수인지 유추할 수 있다.
sub_43f670에 bp를 걸고 확인하면 rax에 2가 들어가 있다.
sys_open을 실행하기 위해서 이다.
반환 값을 확인해본다.
top_secret이라는 파일의 fd는 4이다. RSI에 r이 있으므로 읽기 전용이다.
프로그램을 실행하고 나면 flag와 top_secret 두 개의 파일이 생성되는데
flag가 fd 3번이라는 것을 유추할 수 있다.
입력받는 곳에서 BOF가 발생한다. fd를 덮을 수 있다.(dword_6cce98)
-----------검색해서 확인했는데
디버깅 도중 이런 식으로 fd값을 확인할 수 있다고 한다.
Comments