본문 바로가기 주메뉴 바로가기
국회도서관 홈으로 정보검색 소장정보 검색

결과 내 검색

동의어 포함

목차보기

목차

프로그램의 구조와 상수 값을 이용하는 바이너리 실행 파일의 차이점 분석 / 박희완 ; 최석우 ; 서선애 ; 한태숙 1

요약 1

Abstract 1

1. 서론 1

2. 관련연구 2

2.1. 명령어 기반 비교 방법 2

2.2. 구조 정보를 이용하는 비교 방법 3

3. 바이너리 코드 비교를 위한 알고리즘 3

3.1. 바이너리 구조 정보의 요약 3

3.2. 상수 정보의 요약 4

3.3. 바이너리 비교 알고리즘 5

3.4. 일치율 계산 6

4. 평가 7

4.1. 구현 7

4.2. 실험 8

5. 결론 및 향후 연구 9

참고문헌 10

초록보기

바이너리 코드의 차이점 분석은 보안 패치와 같은 매우 유사한 두 프로그램 사이의 차이점을 구별해 주는 방법이다. 이전의 연구에서는 분석을 위하여 프로그램의 구조 또는 명령어의 세부 사항만을 각각 이용하였다. 프로그램의 구조를 이용하는 차이점 분석 방법은 제어 흐름의 변화는 잘 탐지해 낼 수 있지만, 버퍼 크기 변화와 같은 상수 값의 변화는 잘 찾아낼 수 없다. 명령어 기반의 차이점 분석 방법은 세부적인 값의 변화는 발견할 수 있으나 명령어 재배치와 같은 컴파일러에 의해 생성되는 불필요한 차이점을 결과로 낸다는 단점이 있다. 이 연구에서는 프로그램 구조를 이용한 비교 분석 방법에 상수 값의 변화를 함께 추적할 수 있는 방법을 제안하고 바이너리 차이점 분석 도구를 구현하였다. 구현된 도구는 윈도 보안 업데이트를 이용하여 평가하였다. 실험 결과 제안된 방법은 구조적인 차이점 분석과 같이 빠른 속도로 구조적인 변화를 찾아낼 뿐 아니라 상수 값의 변화까지 추적할 수 있다는 것을 보였다.

Binary diffing is a method to find differences in similar binary executables such as two different versions of security patches. Previous diffing methods using flow information can detect control flow changes, but they cannot track constant value changes. Diffing methods using assembly instructions can detect constant value changes, but they give false positives which are due to compiling methods such as instruction reordering. We present a binary diffing method and its implementation named SCV which utilizes both structure and value information. SCV summarizes structure and constant value information from disassembled code, and matches the summaries to find differences. By analyzing a Microsoft Windows security patches, we showed that SCV found necessary differences caused by constant value changes which the state-of-the-art binary diffing tool BinDiff failed to find.

권호기사

권호기사 목록 테이블로 기사명, 저자명, 페이지, 원문, 기사목차 순으로 되어있습니다.
기사명 저자명 페이지 원문 목차
URI를 이용한 개체 중심적 통합 검색 시스템 정한민 ;이미경 ;성원경 pp.405-416

보기
유사-가능도 최대화를 통한 가우시안 프로세스 기반 음원분리 박선호 ;최승진 pp.417-423

보기
Aspect-oriented 소프트웨어 개발을 위한 목표-시나리오 모델링 기반의 횡단관심사 식별 및 명세화 방법 김선화 ;김민성 ;박수용 pp.424-430

보기
OntoFrame 기반 학술정보 분석 서비스 :심사자 추천과 연구성과 분석 김 평 ;이승우 ;강인수 ;정한민 ;이정연 ;성원경 pp.431-441

보기
바이트코드 분석을 이용한 자바 프로그램 표절검사기법 지정훈 ;우 균 ;조환규 pp.442-451

보기
프로그램의 구조와 상수 값을 이용하는 바이너리 실행 파일의 차이점 분석 박희완 ;최석우 ;서선애 ;한태숙 pp.452-461

보기

참고문헌 (13건) : 자료제공( 네이버학술정보 )

참고문헌 목록에 대한 테이블로 번호, 참고문헌, 국회도서관 소장유무로 구성되어 있습니다.
번호 참고문헌 국회도서관 소장유무
1 Using SABRE BinDiff v1.6 for Malware analysis.http://www.zynamics.com/content/_documents/bindiff_malware.pdf last accessed, Using SABRE BinDiff v1.6 for Malware analysis, 미소장
2 Using SABRE BinDiff for Code theft detection, 미소장
3 A Static Birthmark of Binary Executables Based on API Call Structure 네이버 미소장
4 Sabin,T, (2004) Comparing binaries with graph isomorphisms.unpublished, 미소장
5 eEye Digital Security, eEye Diffing Suite, 미소장
6 Flake, H, (2004) Structural comparison of executable objects, Proceedings of DIMVA 2004:Detection of Intrusions and Malware and Vulnerability Assessment 미소장
7 Dullien, T, (2005) Graph-based comparison of executable objects, Symposium sur la securite des technologies de l’information et des communications. 미소장
8 Zynamics BinDiff, 미소장
9 Hex-Rays, The IDA Pro disassembler and debugger, 미소장
10 Koutsofios, E, (1993) Drawing graphs with dot.AT&T Bell Laboratories,Murray Hill,NJ, Murray Hill 미소장
11 GraphViz, Graph vizualization package, AT&T Research 미소장
12 Ferraiolo, J, (2003) Scalable vector graphics (SVG) 1.1 specification, W3C Recommendation 14, 미소장
13 Linn, C, (2003) Obfuscation of executable code to improve resistance to static analysis, 10th ACM Conference of Computer and Communications Security (CCS). 미소장