디지털 라이브러리[ 검색결과 ]
명령어 특성 요약을 사용한 신경망 기반 ROP 공격 탐지의 성능 개선
http://doi.org/10.5626/JOK.2021.48.5.493
귀환 지향 프로그래밍(Return-Oriented Programming (ROP))은 메모리에 적재되어 있는 코드 조각들을 귀환 명령을 사용하여 원하는 순서대로 실행하는 프로그램 공격 기법이다. 이 논문은 신경망을 사용하여 ROP 공격을 효율적으로 탐지하는 방법을 제안하고 있다. 이 방법은 명령어 특징을 나타내는 요약을 사용하여 데이터의 크기를 축소시키고, 귀환 명령 이후에 실행되는 12개의 명령에 대해서만 신경망을 가동한다. 웹 서버와 브라우저, 그리고 이들 실행에 필요한 라이브러리를 사용한 실험에서 F1 점수 100을 유지하는 가운데 DeepCheck과 HeNet보다 각각 9.6배, 그리고 1,403.1배의 속도 향상을 보였다.
계층화된 문맥 자유 문법을 사용한 입력 데이터 기술
http://doi.org/10.5626/JOK.2019.46.4.321
본 논문에서는 복수의 입력 장치로부터 들어오는 입력의 형태적 특성을 문맥 자유 문법 기반으로 표현하는 데이터 기술 언어(DDL)를 정의하고 있다. 각 입력 파일 또는 장치는 자체의 입력 데이터 기술을 가지며, 상위 계층 입력 기술과 연결되어 계층 구조를 형성한다. 또한 본 논문에서는 DDL을 사용하여 입력 데이터를 생성하는 방법을 개발하였다. DDL의 유용성을 확인하기 위하여 기본 블록 실행 범위와 입력 생성 시간에 대하여 2 개의 다른 입력 생성 체계와 비교 평가하였다. Coreutils의 37 개 프로그램에 대하여 DDL 방식은 KLEE보다 O(103) 배 더 빠르게 입력을 생성하였으며, 기본 블록 실행 범위는 25.44%가 더 넓었다. DDL 방식은 단일 계층 CFG 방식보다 평균 1.52 배의 생성 시간이 더 필요하지만 기본 블록 실행 범위를 6.59%만큼 더 감당하였다. 현재 DDL은 동적 제어흐름 분석을 위한 정상적인 입력 생성에 사용하고 있다.
실행시간 침입 방지 평가 프로그램(RIPE)의 개선
이현규, 이담호, 김태환, 조동황, 이상훈, 김훈규, 표창우
2011년에 발표된 RIPE는 프로그램 공격에 대한 완화 기법 평가 도구로서 850 가지 패턴의 버퍼 오버플로우 기반 공격에 대한 완화 기법만을 평가한다. RIPE는 공격과 방어 루틴이 하나의 프로세스로 실행되도록 구성되어, RIPE가 실행될 때에는 공격과 방어 루틴이 프로세스 상태와 주소 공간 배치를 공유할 수밖에 없게 된다. 그 결과 공격 루틴은 방어 루틴의 메모리 공간을 아무런 제약 없이 접근할 수 있게 된다. 이 논문에서는 RIPE의 공격과 방어 루틴이 독립적인 2개의 프로세스로 동작하도록 하여 주소 공간배치 난독화와 같은 기밀성에 근거한 방어 기법을 정확히 평가할 수 있도록 개선하였다. 또한 억지 공격에 대한 방어 능력을 실험할 수 있도록 실행 모드를 추가하였다. 마지막으로 vtable 포인터 공격과 형식문자열 공격을 수행하도록 38 가지 패턴의 공격을 추가하여 확장하였다. 개선 결과 공격 패턴이 다양하게 되었고, 보호 효과 평가의 정확성도 높아졌다.