일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- radare2
- C언어
- kernel
- 시스템
- css
- 리버싱
- Bandit
- 프로그래밍
- Leviathan
- 리눅스커널
- 시스템프로그래밍
- 리눅스 커널
- 리눅스
- 시그널
- C++
- pwn.college
- write up
- 워게임
- Pwnable.kr
- 알고리즘
- 컴퓨터구조
- 어셈블리어
- 취약점
- 드론
- 커널
- wargame
- pwncollege
- 시스템 프로그래밍
- 시스템해킹
- px4
- Today
- Total
목록어셈블리어 (6)
Computer Security
프로그램 기본 구조 .MODEL SMALL -메모리 모델을 정의한다. Small의 경우 데이터 세그먼트와 코드 세그먼트가 각각 하나씩 존재하는데, 대부분의 실습용으로 충분하다. .DATA, .CODE -데이터 세그먼트와 코드 세그먼트를 나타내는 어셈블리어 지시어 .PROC -프로시저의 시작을 나타내는 지시어. RPOC 앞에는 프로시저의 이름이 들어간다. .ENDP -프로시저의 끝을 나타내는 지시어. ENDP 앞에 프로시저의 이름이 들어간다. .END -전체 프로그램의 끝을 나타내는 지시어 -END 다음에 들어가는 인수는 옵션이지만, 대부분의 경우 프로그램의 시작지점이 되는 첫 번째 프로시저의 이름(ex. main) 이 들어간다. 프로그램 실행의 종료 -INT(interupt) 21H(0x21) 는 AH로..
레지스터 집합 범용 레지스터(General Purpose Register) -범용레지스터는 데이터를 임시로 저장하기 위해 주로 사용되며, 프로그래머가, 즉 소프트웨어적으로 임의로 접근 가능하다. 8086에는 16비트 범용 레지스터 AX, BX, CX, DX등이 있고, 상위 8비트와 하위 8비트를 각각 H(High)와 L(Low)로 접근할 수 있다. AX(Accumulator): 주 누산기(primary accumulator) -입출력과 대부분의 산술 연산에서 사용된다. 예를 들어, 곱셈, 나눗셈, 변환 명령어들은 AX의 사용을 가정한다. BX(Base) : 베이스 레지스터 -인덱스로 사용될 수 있는 유일한 범용 레지스터다. 또한 베이스 레지스터로서 인덱스 레지스터 DI나 SI와 결합될 수 있다. -BX의..