감이 안잡히네요...

처음으로 wargame 접하다보니 길을 좀 잃었습니다. obj.c파일에서 주소를 /home/shell_basic/flag_name_is_loooooong바꾸고 objdump -d사용해서 opcode까지 뽑아냈습니다.
그렇게 뽑은 opcode를 nc host1.dreamhack.games 9349들어가서 shellcode: 에 냅다 붙여넣더니 아무 반응이 없다군요... 어떻게 opcode를 전달해야 하나요? 그리고 shell_basic.c은 어떻게 이용해야 하나요?

작성한 orw.c코드이고 밑에는 objdump -q ./orw 실행후 run_sh함수의 결과입니다...
캡처1.PNG
캡처2.PNG
<run_sh>에 있는 기계어만 \x형태로 shellcode:에 전달하면 되는거 아닌가요?

#pwnable
작성자 정보
답변 2
5unkn0wn
강의 수강: 50

"\x" 자체를 문자열로 전송하면 안되고 파이썬 등을 이용하여 escape된 형태로 전달해주셔야 합니다.
즉, print("\x31\xc0\x41...") 형태로 출력해주셔야 합니다.

2022.02.16. 11:17
5unkn0wn
강의 수강: 50

안녕하세요, 관련 문의가 많이 들어와 시스템 해킹 로드맵의 순서를 약간 변경하였습니다. STAGE 3: Tool Installation의 pwntools 코스를 먼저 수강한 후, pwntools를 이용해 쉘코드를 전송해보시면 좋을 것 같습니다.

2022.02.16. 11:46
질문에 대한 답을 알고 계신가요?
지식을 나누고 포인트를 획득해보세요.
답변하고 포인트 받기