완료됨
/tmp/flag

0x616c662f706d742f67 (/tmp/flag) 라고 되어있는데요
0x67616c662f706d742f 가 되어야하는거 아닌가요?
왜 0x67이 뒤로빠졌는지 이해를 못하겠어요!

그리고 구현한 코드보면 또 다르게 나와있어서요

push 0x67
mov rax, 0x616c662f706d742f <<<<<<<< 이 부분도 잘못나온게 아닌가요...ㅠㅠ 이해하기어렵네요
push rax
mov rdi, rsp ; rdi = "/tmp/flag"
xor rsi, rsi ; rsi = 0 ; RD_ONLY
xor rdx, rdx ; rdx = 0
mov rax, 2 ; rax = 2 ; syscall_open
syscall ; open("/tmp/flag", RD_ONLY, NULL)

#시스템_해킹 #공격기법
작성자 정보
더 깊이 있는 답변이 필요할 때
드림핵 팀과 멘토에게 직접 문의해 보세요!
답변 2

/tmp/flag 는 자세히 세어보면 9글자입니다 !!

2022.04.03. 19:58

순서 문제는 endian (이 경우에는 little endian) 때문입니다.

2022.04.13. 14:57