반응형
I. 주소공간배열 무작위화, ASLR의 개념
- 프로세스를 실행할떄마다 스택, 힙, 라이브러리 등 데이터영역의 주소를 무작위화하여 해킹등의 공격으로부터 메모리를 보호하는 기법
- 같은 방법으로 바이너리 영역에 대한 무작위화 기법으로 PIE 사용
II. ASLR의 주소 변환 절차 및 절차 설명
가. ASLR의 주소 변환 절차
나. ASLR의 주소 변환 절차 설명
구분 | 절차 | 설명 |
Allocation | 1. 오프셋 선택 | - OS, 프로그램 수행 중 다른 라이브러리 배치 가능한 Offset 선택 |
2. MSB 랜덤계산 제외 | - 스택과 힙이 충돌되지 않도록 배치 - 라이브러리가 스택과 힙이 충돌하지 않도록 배치 |
|
Re-Randomize | 3. 셔플 | - 가상메모리 내 Stack base와 Heap base 주소 셔플 |
4 무작위화 | - 주소의 Image Base, 즉 시작주소 변경 |
III. ASLR의 우회기법 및 대응방법
우회기법 | 설명 | 대응방법 |
Brute Force | - 규칙을 파악해서 여러번 시도하면 리턴 주소가 덮어 씌여지는 경우가 존재 | - NOP 슬라이드 방지 |
Non ASLR Module | - 한 프로그램 안에서도 ASLR이 적용되지 않은 모듈(DLL 등)을 찾아 공격 | - EMET 도구 등으로 강제 ASLR 적용 |
Heap Spray | - 힙 공간의 메모리가 해제되는 순간에 같은 크기의 악성코드를 할당하면 빈 주소에 악성코드 할당 | - NOP 슬라이드 방지 |
Info Leak | - 스택의 메모리를 읽어오는 버그(또 다른 취약점)를 이용해 랜덤화된 메모리 주소를 읽어서 사용 | - 알려지지 않은 취약점(제로데이) 대응 |
반응형
'IT기술노트 > 디지털보안' 카테고리의 다른 글
Log4shell (CVE-2021-44228) (0) | 2021.12.12 |
---|---|
OWASP, 2021 OWASP TOP 10 (0) | 2021.11.17 |
토르 네트워크(Tor Network) (0) | 2021.11.17 |
동형암호 (Homomorphic Encryption, HE) (0) | 2021.08.19 |
가명정보 결합방식 (0) | 2021.06.11 |
Bi-Ba Model (0) | 2021.05.13 |
Bell-Lapadula Model (0) | 2021.05.13 |
연결함정(Connection Trap) (0) | 2021.03.07 |
댓글