스택 공격 탐지와 방어를 위한 반환 주소 이중 인코딩Dual-Encoding of Return Addresses for Detection and Defense against Stack Attacks
- Other Titles
- Dual-Encoding of Return Addresses for Detection and Defense against Stack Attacks
- Authors
- 김경태; 표창우; 김선일; 이경호
- Issue Date
- 2011
- Publisher
- 한국정보과학회
- Keywords
- program counter encoding; dual-encoding; program self-protection; program attack detection; stack attack; 프로그램 카운터 인코딩; 이중 인코딩; 프로그램 자기 보호; 프로그램 공격 탐지; 스택 공격
- Citation
- 정보과학회 컴퓨팅의 실제 논문지, v.17, no.3, pp.159 - 164
- Journal Title
- 정보과학회 컴퓨팅의 실제 논문지
- Volume
- 17
- Number
- 3
- Start Page
- 159
- End Page
- 164
- URI
- https://scholarworks.bwise.kr/hongik/handle/2020.sw.hongik/20393
- ISSN
- 2383-6318
- Abstract
- 프로그램 카운터 인코딩은 제어 데이터의 대부분을 차지하는 코드 포인터를 암호화 하는 프로그램 자기보호의 방법이다. 이 논문은 함수 반환 주소에 대한 프로그램 카운터 인코딩의 방어력과 공격 탐지 능력을 개선하기 위한 방법으로서 반환 주소 이중 인코딩을 제시한다. 반환 주소 이중 인코딩은 반환 주소를 암호화 할 때 독립적인 2개의 암호화 키를 사용하여 2벌의 암호화 된 반환 주소를 만들어 보관한다. 64 비트의 암호화 키를 사용하여 인코딩 한 것과 같은 효과를 가져와 반환 주소에 대한 공격 성공 확률을 1/2^(64)로 낮추며, 2벌의 암호화된 주소를 디코딩하여 비교함으로써 공격 여부를 정확히 판정할 수 있다. x86 마이크로프로세서를 타겟으로 하는 GNU C 컴파일러를 수정하여 반환 주소 이중 인코딩을 구현하였고, 이를 사용한 모의 공격과 성능 실험을 실시하였다. GCC에 내장된 ProPolice와 비교할 때 ProPolice가 탐지하지 못하는 2가지 공격 유형을 추가로 탐지하였고, 8.62% 수준의 실행 시간 과부하 수준을 보였다. 이중 인코딩은 반환 주소뿐만 아니라 모든 코드 포인터에 대해 적용이 가능하며, 일부 데이터 포인터도 적당한 성능 과부하로 적용할 수 있을 것으로 예상된다.
- Files in This Item
- There are no files associated with this item.
- Appears in
Collections - College of Engineering > Computer Engineering > Journal Articles
![qrcode](https://api.qrserver.com/v1/create-qr-code/?size=55x55&data=https://scholarworks.bwise.kr/hongik/handle/2020.sw.hongik/20393)
Items in ScholarWorks are protected by copyright, with all rights reserved, unless otherwise indicated.