완료됨
접근 자체가 쉽지 않은데 도움 주세요...

일단 쉘코드를 buf에 넣고 싶어도 gdb를 확인해보면 0x18정도의 크기밖에 되지 않아서 buf에 쉘코드를 입력하는 것을 어려울 것이라고 생각이 드는데 아닌가요?

또, 익스플로잇을 위한 순서를 아래와 같이 생각하는데 맞나요?

  1. stdout이 출력되는 것을 보고 라이브러리 베이스 주소를 구한다.
  2. size는 쉘코드가 들어갈만한 크기의 값을 넣고 read를 통해 쉘코드를 buf에 넣는다. (리턴될 때는 카나리를 확인하기 때문에 리턴되기 전에 value를 이용해서 쉘코드 실행)
  3. value에는 쉘코드가 저장된 buf를 가리키도록 해서 쉘코드를 실행하고 마친다.

이게 맞나요?? 도움주세요...

#pwnable
작성자 정보
더 깊이 있는 답변이 필요할 때
드림핵 팀과 멘토에게 직접 문의해 보세요!
답변 1
avatar
Sechack
2024 Invitational Contenders
avatar
Sechack
2024 Invitational Contenders

문제 이름이 environ입니다. 강의를 한번 보고 오시면 풀이가 훨씬 수월하실거에요.

2021.07.22. 00:37