일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Python
- 웹해킹
- SQL Injection
- termux
- Nop Slide
- 어셈블리어
- buffer over flow
- 보안뉴스
- BOF
- writeup
- NewsClipping
- ftz
- PWN
- HackCTF
- reversing
- RITSEC CTF 2019
- CodeEngn
- Shadow 동아리
- webhacking
- requests
- 리눅스
- ctf
- Next.js
- 뉴스클리핑
- x64dbg
- Linux
- 리버싱
- 버퍼오버플로우
- RITSEC
- Hackerschool
Archives
- Today
- Total
Jaeseo's Information Security Story
리버싱 기초 - 기초 명령어 본문
- PUSH, POP
스택에 값을 넣는 것이 PUSH 스택에 있는 값을 가져오는 것이 POP - PUSHAD , POPAD
모든 레지스터를 PUSH 하고 POP 하라는 명령어
ex) PUSHAD == PUSH EAX, PUSH EBX, PUSH ECX... - MOV
값을 넣어주는 역할
ex) MOV eax,1 == eax에 1를 넣는 명령어 - LEA
LEA는 주소를 가져온다. MOV는 값을 가져온다.
ex) esp+8 : 0x123456 , *esp+8 : 1234
LEA eax,esp+8 -> eax == 0x123456
MOV eax,esp+8 -> eax == 1234 - ADD
source 에서 destnation으로 더해라
ex) ADD source,destnation - SUB
source 에서 destnation으로 빼라
ex) SUB source,destnation - INT
인터럽트를 발생시키는 명령어
ex) INT 3 -> DebugBreak() == BreakPoint - CALL
함수를 호출 하는 명령어 CALL 뒤에는 오퍼랜드로 번지가 붙는다.
함수가 끝난뒤 RET를 통해 CALL 다음 번지로 되돌아온다. - INC
ex) i++ - DEC
ex) i-- - AND, OR, XOR
비트 연산자 source와 destnation를 연산한다.
보통 XOR EAX,EAX를 해서 0으로 초기화 하는데 자주 사용. - NOP
아무것도 하지 말라는 명령어이다.
ex) stolen byte 영역이 EP시작부터 NOP으로 채워져 있다. - CMP
비교하라는 명령어이다. - JMP
점프하는 명령어이다. CMP의 값에 따라 작동 하는지 안하는지 결정되기도 한다.
'Security Study > Reversing' 카테고리의 다른 글
dnspy - 사용법 (.Net assembly-editor, debugger, decompiler) (0) | 2019.12.23 |
---|---|
GDB(GNU Debuger) 간단 사용법! (2) | 2019.11.12 |
리버싱 기초 - 범용 레지스터 (0) | 2019.10.14 |
Comments