본문 바로가기

hacking/pwnable74

[Dream hack] Quiz: Shellcode-3 보호되어 있는 글 입니다. 2024. 5. 23.
[Dream hack] Quiz: Shellcode-2 보호되어 있는 글 입니다. 2024. 5. 23.
[Dream hack] Quiz: x86 Assembly 1-12 답더보기초기상태레지스터:rcx = 0rdx = 0rsi = 0x400000메모리0x400000: 0x67 0x55 0x5c 0x53 0x5f 0x5d 0x55 0x100x400008: 0x44 0x5f 0x10 0x51 0x43 0x43 0x55 0x5d0x400010: 0x52 0x5c 0x49 0x10 0x47 0x5f 0x42 0x5c0x400018: 0x54 0x11 0x00 0x00 0x00 0x00 0x00 0x00어셈블리 코드 분석1.  mov dl, BYTE PTR[rsi+rcx]현재 rcx = 0 이므로, 첫 번쨰 바이트(0x400000)를 'dl'로 이동한다.dl = 0x672.  xor dl, 0x30'dl'에 0x30을 xor 연산 한다. 0x67 ^ 0x30 = 0x57 (ASCI.. 2024. 5. 20.
[Dream hack] Quiz: x86 Assembly 1-11 답더보기기본 지식not: 모든 비트를 반전 시킨다. (1은 0으로, 0은 1로 바꾼다.)사용법: not op코드 해설'xor rax, rbx': 0xEBBCFBAE'xor rax, rbx': 0x35014541'not eax' : 0011 0101 0000 0001 0100 0101 0100 00011100 1010 1111 1110 1011 1010 1011 1110 -> 0xcafebabe 참고'eax':하위 32비트를 가리킨다.16진수는 하나당 4비트 이다.하지만 이 문제에선 총 32비트이기 때문에 모든 값을 가리킨다.끝 2024. 5. 19.
[Dream hack] Quiz: x86 Assembly 1-10 답더보기기본 지식xor: dst와 stc의 비트가 서로 다르면 1, 같으면 0사용법: xor dst, src코드 해설'xor rax, rbx': 0xEBBCFBAE 'xor rax, rbx': rax = 0xEBACFBAE -> 11110 1011 1010 1100 1111 1011 1010 1110 rbx = 0xdeadbeef -> 1101 1110 1010 1101 1011 1110 1110 1111xor 결과0011 0101 0000 0001 0100 0101 0100 0001  -> 0x35014541참고논리연산 할때는 이진수로 바꾸어서 계산한다.xor은 같음 값에 댛서 두번 xor하면 원래 값이 복원되는 특성이 있다. 끝 2024. 5. 18.
[Dream hack] Quiz: x86 Assembly 1-9 답더보기기본 지식xor: dst와 stc의 비트가 서로 다르면 1, 같으면 0사용법: xor dst, src코드 해설'rax' : 0x35014541 -> 0011 0101 0000 0001 0100 0101 0100 0001'rbx' : 0xDEADBEEF -> 1101 1110 1010 1101 1011 1110 1110 1111 xor 결과1110 1011 1010 1100 1111 1011 1010 1110 -> 0xEBACFBAE 참고논리연산 할때는 이진수로 바꾸어서 계산한다.끝 2024. 5. 18.