This thesis introduces defense approaches for protecting system memory integrity against various adversary models. The adversary models are categorized into three folds: (i) fully-privileged, (ii) partiallyprivileged, and (iii) zero-privileged adversary model. The fully privileged adversary model assumes that an attacker has the capability of executing highest-privileged (e.g., supervisor mode) arbitrary code to harm the memory integrity (e.g., rootkit). The partially privileged adversary model assumes that the attacker is only capable of executing limited set of instructions (e.g., memory access instructions). The zero-privileged adversary model assumes the memory integrity violation by an attacker is caused due to unintended software vulnerabilities while executing benign codes. The thesis analyzes the details of each threat against memory integrity and proposes defense solution correspondingly.
본 논문에서는 시스템 메모리의 무결성을 침해할 수 있는 다양한 공격 모델들에 대한 방어 기법들을 소개한 다. 공격 모델은 공격자에게 주어진 권한에 따라 (i) 최고 권한을 가진 공격자, (ii) 부분적 코드 실행 권한을 가진 공격자, 그리고 (iii) 코드실행권한이 없는 공격자로 나눈다. 최고 권한을 가진 공격자는 공격대상 시스템에 대해서 어떠한 코드라도 (예: 커널 코드) 실행이 가능한 경우를 전제한다. 부분적 코드 실행 권한을 가진 공격자의 경우 메모리 변조를 위한 코드 실행은 가능하나, 상위 권한의 코드들을 제외한 제한된 코드 집합 (메모리 접근 코드) 만 실행이 가능한 경우를 전제한다. 코드실행권한이 없는 공격자의 경우 공격자의 데이터를 통해 버그가 유발되고 이를 통해 메모리가 변조되는 상황을 가정한다. 본 논문은 각각의 공격모델들에 대해서 메모리의 무결성을 보호할 수 있는 기존 방법들을 논의하고, 그 한계점을 개선할 수 있는 효과적인 대응방안들을 제시한다.