반응형 IT 자격증/정보보안기사12 ASM to C (1) Dump of assembler code for function main: 0x0804841c : push ebp 0x0804841d : mov ebp,esp 0x0804841f : sub esp,0x10 // 지역변수가 선언되면 스택을 할당한다. ; init (0x10) 0x08048422 : mov BYTE PTR [ebp-0x1],0x61 ; ebp = 0x61 0x08048426 : movsx edx,BYTE PTR [ebp-0x1] 0x0804842a : movsx eax,BYTE PTR [ebp-0x1] ; edx = 1 ; eax = 1 0x0804842e : mov DWORD PTR [esp+0x8],edx 0x08048432 : mov DWORD PTR [esp+0x4],eax 0x080.. 2014. 12. 10. 리버싱 공부 1. 메모리 쓰는 방법과 레지스터 쓰는 방법 2. EIP, ESP, EBP는 항상 목적에 맞게 사용해야 한다. 3. 컴퓨터가 메모리를 어떻게 사용하는지 달달 외우고 있어야 한다. 4. 어셈블리어를 C언어로 고치는 연습방법 리눅스에서 C언어 작성 후 Compile 후 GDB를 이용하여 디버깅 gcc -o test test.c -m32 -mpreferred-stack-boundary=2 -fno-stack-protector gdb ./test 리눅스에서 C언어 작성 후 어셈블리어로 변경하여 코드 비교 gcc -S test.c cat test.s 코드 분석 시 중요한 것이 변수명과 함수명인데… 어셈에서는 이름을 알기 어려움 인자면 a 라는 변수로 치환 지역변수면 v 라는 변수로 치환 전역변수면 g 라는 변수로.. 2014. 12. 9. 이전 1 2 3 다음 반응형