x64 Buffer Overflow150
2020. 5. 28. 21:33ㆍHackctf
오늘은
x64 Buffer Overflow 를 풀어보겟다
음 64비트짜리 bof 이려나??? 한번 exeinfo로 까봅시다.
오 64bit 짜리 elf 파일이다 ㅎㅎ 참고로 32bit에서 sfp의 값은 4였지만 64bit는 8이다.
보호기법부터 살펴봐야겠다
음... RELLO, NX가 걸려있으면 Shell코드나 갓 오버라이트도 못하는뒈... 아마도 함수에 쉘이있는 함수가 있지 않을까?
그럼 우리는 킹 갓 엠페러 충무공 미르스띤 판타스틱 붐바스틱한 아이다로 분석을 해보쟈
역시나 callMeMaybe 라는 엑소같은 함수가 있었고
그 안에는 /bin/bash가 있돠
그르타면 main 함수에는 bof가 가능한 코드가 있을텐데
역시나 main 함수 안에 _isoc99_scanf를 통해 bof 가 가능하고
s의 크기는 0x110 = 272 + sfp(64bit일때) 8 = 280이 된다
그러면 callMeMaybe 함수의 주소를 얻으면
payload = "a"*280 + callMeMaybe의 주소 가 되겠다.
요기 주소가 있다
그럼 코드를 짜보겠다.
사실 bit만 64로 바꼇지 앞의 문제를 풀었다면 쉽게 flag 를 얻을 수 있다.
클리어!
'Hackctf' 카테고리의 다른 글
HackCTF Forensic 2번 (0) | 2021.03.27 |
---|---|
Hackctf Forensic 1번 (0) | 2021.03.27 |
Hackctf 내 버퍼가 흘러넘친다 !!!!!!!!!!!!!!!!!!!!!!!!!!!!! (0) | 2020.05.21 |
Hackctf basic_bof #2 (0) | 2020.05.21 |
hackctf basic_bof (0) | 2020.05.21 |