earticle

논문검색

Crypto System

시간 기반 키 생성 방식을 이용한 안티 디버깅 기법

원문정보

Anti-debugging scheme with time-based key generation

이광재, 김성훈, 이동훈

피인용수 : 0(자료제공 : 네이버학술정보)

초록

영어

Debuggers are the tools which are helping the user to find out and correct the logic errors or bug by showing internal state and running mechanism while developing software. But it is also misused as vulnerability analysis for system attacks like extracting internal algorithm of program or privilege elevation. For this reason, anti-debugging techniques are applied to prevent debugging, but the techniques to bypass anti-debugging are keep developing. In this paper, we propose anti-debugging techniques by using time-based key generation method to prevent previous bypass techniques. The proposed techniques are difficult to bypass attack generate key by using hash value instead of not using previous method which is detecting previous debugging and respond in conditional method. We also introduce scheme that setting scope of the execution time by shift operation instead of simply induce the value of the key by specific area of the program’s execution time. It can set a range of run-time errors can be occurred by system hardware so scheme can be applied flexibly in the various environments.

한국어

디버깅(debugging) 도구는 소프트웨어 개발 과정에서 논리 오류나 버그가 발생되었을 때 프로그램의 내부 상태와 동작 방식을 사용자에게 보여줌으로써 오류를 찾고 수정하는데 도움을 주는 도구이다. 반면에 지적재산권이 포함된 프로그램의 내부 알고리즘 추출이나 권한 상승과 같은 시스템 공격을 위한 취약성 분석에 디버깅 도구가 악용되고 있어 문제가 되고 있다. 이에 대한 대응 기술로 디버깅을 방지할 수 있는 안티 디버깅(anti-debugging) 기술이 적용되고 있으나 이를 우회하는 기술도 지속적으로 발전하고 있다. 본 논문에서는 기존의 우회 기법을 방지할 수 있는 시간 기반 키 생성 방식을 이용한 안티 디버깅 기법을 제안한다. 제안하는 기법은 기존 디버깅을 탐지 후 조건문 방식으로 응답 하는 방식이 아닌 프로그램 실행 시간의 차분 값과 특정 코드 영역의 해시 값으로 키를 생성하고 이를 키 값으로 다음 실행될 코드 영역을 암호화함으로써 우회 공격을 어렵게 하는 방법이다. 또한 단순히 프로그램의 특정 영역의 실행 시간으로 키 값을 유도하는 방식이 아닌 시프트(shift) 연산으로 실행 시간의 범위를 설정할 수 있게 하는 방식을 소개한다. 이는 시스템 하드웨어에 따라 발생할 수 있는 실행 시간의 오차 범위를 설정할 수 있게 함으로써 기법을 유연하게 적용할 수 있게 한다.

목차

요약
 Abstract
 1. 서론
 2. 배경지식 및 관련연구
  2.1 안티 디버깅 기술
  2.2 코드 암호화 기법
  2.3 명령어 자가 변조 기법
 3.제안하는 시간 기반 안티 디버깅 기법
  3.1 키 생성 방법
  3.2 제안하는 기법을 적용한 기존 기법[5,9] 개선
 4. 개선된 기법의 보안 분석
  4.1 코드 암호화 기법
  4.2 명령어 위장 기법
 5. 결론
 참고문헌 [Reference]

저자정보

  • 이광재 Kwangjae Lee. 고려대학교 정보보호대학원.
  • 김성훈 Sunghoon Kim. 고려대학교 정보보호대학원.
  • 이동훈 Dong Hoon Lee. 고려대학교 정보보호대학원.

참고문헌

자료제공 : 네이버학술정보

    함께 이용한 논문

      ※ 원문제공기관과의 협약기간이 종료되어 열람이 제한될 수 있습니다.

      0개의 논문이 장바구니에 담겼습니다.