Mitigation layers

버퍼 오버플로우 방어 지점

컴파일 옵션, 커널 메모리 정책, MAC, 방화벽, 로그 모니터링은 서로 다른 실패 지점을 겨냥한다.

canary

반환 주소 앞 손상 탐지

스택 프레임의 카나리 값이 바뀌면 함수 반환 전에 프로세스를 중단한다.

NX

스택 실행 차단

스택과 힙을 실행 불가 페이지로 표시해 주입한 쉘코드 실행을 어렵게 만든다.

ASLR

주소 예측 방해

스택, 힙, 라이브러리, PIE 실행 파일의 위치를 무작위화해 ROP 주소 계산을 어렵게 한다.

RELRO

GOT 변조 축소

Full RELRO는 동적 링킹 뒤 GOT를 읽기 전용으로 바꿔 함수 포인터 덮어쓰기를 막는다.

MAC

침해 뒤 권한 제한

SELinux나 AppArmor가 프로세스 타입별 파일, 네트워크, capability 사용 범위를 제한한다.

무결성 검사

AIDE, Tripwire, 패키지 검증은 시스템 바이너리와 설정 파일이 몰래 바뀌었는지 비교한다.

로그 상관 분석

인증 실패, sudo 사용, 비정상 포트, 새 SetUID 파일을 함께 보면 단일 로그보다 침해 흐름이 잘 보인다.

기본 차단 정책

iptables나 nftables는 허용한 서비스만 열고 기존 연결 상태를 추적해 노출면을 줄인다.