zj3t

email: euntaejang@gmail.com

Latest Posts

pwnable.kr fix

By 오전 2:50 ,

오늘 거의 하루를 이 문제만 잡고있었습니다.

풀이는 대부분 풀때마다 공개했었는데요.

Rookiss 부분은 토틀러와는 다르게 풀이도 공개가 안되어있기 때문에 저도 공개하지 않겠습니다.

하지만 유용한 사이트 2개를 첨부하겠습니다.

참조: opcode

 
참조: shellcode -> asm 변환 사이트
 

팁 하나를 더 드리자면 ret을 하나씩 확인해보는 것입니다.

x/x $eip ,x/i $eip, x/x $esp ,ni 제가 사용한 gdb 명령들 입니다.


매일 이 블로그는 접속을하고, 메일도 실시간으로 확인하고있으니 질문해주시면 빠르게 답변해 드리겠습니다.


You Might Also Like

3 개의 댓글

  1. 아무리 생각해봐도 안풀려서 여쭤봅니다.
    쉘코드는 틀린부분이 없는데 돌아가지 않는 이유는 전역변수로 선언된 쉘코드가 push 명령어를 실행함으로써 stack의 값으로 덮어쓰여져서 그런것이라고 생각했습니다.
    그래서 스택이 쉘코드를 침범하지 않는다면 풀수 있을것이라 생각했습니다. 처음에는 popa를 사용해서 0x20의 크기만큼 스택을 줄여보려고 했습니다. 그런데 eax에 들어가는 값때문에 인터럽트가 제대로 걸리지 않는것 같았습니다. 그래서 2번째 push eax를 nop으로 바꿔 보기도 했습니다. 그래도 스택이 쉘코드를 변견하더군요...
    이제 더이상 아이디어가 떠오르지 않아서 질문드립니다. 어떤 명령어로 문제를 해결할 수 있을까요?

    답글삭제
  2. push eax쪽에서 eip랑 esp가 충돌 나는것 같은데 이부분을 어떤식으로 고쳐줘야되나요???? 여기서 막막합니다. 조언 부탁드립니다

    답글삭제