본문 바로가기
Security

레지스터 (Register) 와 레지스트리 (Registry) 정리

by Kyn 2021. 6. 20.

레지스터란?

- CPU가 요청을 처리하는데 필요한 데이터의 임시 저장할 수 있는 휘발성 메모리입니다. 

- Ram 과 데이터와 명령어를 저장한다는 공통점이 있지만 Ram과 달리 물리적으로 CPU와 가까운 곳에 위치하여 고속으로 처리한다.

- 메모리 계층의 최상위에 위치하며 가장 빠른 속도로 처리한다.

CPU 구조 (사진 출처 : 위키 백과)

레지스터 종류

범주 레지스터 이름 용도
범용
세그먼트
EAX 누산기 레지스터 산술 연산 및 논리 연산 수행
EBX 베이스 레지스터 메모리 주소 저장
ECX 카운트 레지스터 반복문 활용 시 카운터로 사용
EDX 데이터 레지스터 일반 자료 저장
세그먼트 
레지스터
CS 코드 세그먼트 레지스터 코드 세그먼트의 주소
DS 데이터 세그먼트 레지스터 프로그램에 정의된 데이터
SS 스택 세그먼트 레지스터 데이터나 연산 결과 등을 임시로 저장하거나 삭제시 사용
ES 엑스트라 세그먼트 레지스터 추가로 사용된 데이터 주소 가르킴
FS 여분의 레지스터
GS 여분의 레지스터
인덱스
레지스터
ESI 출발지 인덱스 레지스터 출발지 주소 저장
포인터
레지스터
EBP 베이스 포인터 레지스터 메모리 스택 내 변수값을 읽음
ESP 스택 포인터 레지스터 메모리 스택의 끝 지점 주소 포인터
포인터
레지스터
EBP 베이스 포인터 레지스터 메모리 스택 내 변수 값을 읽음
ESP 스택 포인터 레지스터 메모리 스택의 끝 지점 주소 포인터
플래그
레지스터
Z 제로 플래그 연산 결과가 0일 때 할당
C 캐리 플래그 (부호 없는) 숫자 연산 결과가 비트 범위를 초과시 할당
A 보조 캐리 플래그 하위 4bit 비트 범위를 초과시 할당
O 오버플로우 플래그 (부호 있는) 숫자 연산 결과가 비트 범위를 초과시 할당
S 사인 플래그 연산 결과가 음수일시 할당
P 패리티 플래그 1로된 비트의 수가 짝수이면 할당
D 디렉션 플래그 문자열 조작에서 참일시 값 감소, 거짓일시 값 증가
T 트랩 플래그 디버깅시 사용  

 

레지스트리란?

- 윈도우 전반에 사용되는 설정 및 운영에 필요한 정보들을 담고 있는 데이터베이스이다.

- 디지털 포렌식에서 감염된 PC 레지스트리를 분석하여 악성코드의 행위를 파악하고자 할 때 활용할 수 있다.

 

레지스트리

 

레지스트리 키 설명

범주 이름 용도
레지스트리
루트키
HKEY_CLASSES_ROOT 해당 섹션을 활용하여 파일 연관성 및 COM 객체 등록 정보를 관리
HKEY_CURRENT_USER 현재 로그인한 사용자에 대한 프로파일 정보를 관리
HKEY_LOCAL_MACHINE 시스템 전체 설정(하드웨어, 소프트웨어) 정보를 관리
HKEY_USERS 시스템의 모든 사용자와 그룹에 관한 프로파일 정보를 관리
HKEY_CURRENT_CONFIG 하드웨어 구성에 대한 모든 정보를 관리, 시스템이 시작할 때 사용하는 프로파일 정보

 

반응형

댓글