• 제목/요약/키워드: Dynamic binary analysis

검색결과 55건 처리시간 0.03초

경량 동적 코드 변환 기법을 이용한 동적 인스트루멘테이션 기법 설계 및 구현 (Design and Implementation of a Dynamic Instrumentation Framework based on Light-weight Dynamic Binary Translation)

  • 김지홍;이동우;김인혁;엄영익
    • 정보과학회 논문지
    • /
    • 제41권11호
    • /
    • pp.892-899
    • /
    • 2014
  • 동적 인스트루멘테이션 기법은 동적 코드 변환 기법을 사용하여 프로그램의 수행 흐름을 흐트러뜨리지 않으면서 분석 코드를 삽입하는 구현 기법으로 사용되고 있다. 기존의 동적 코드 변환 기법은 머신 코드 스트림을 중간 코드 형태로 파싱하고, 이를 일반적인 컴파일러 기법에 적용함으로써 코드를 변환한다. 이러한 방식의 코드 변환 과정에서 수반되는 높은 변환 오버헤드는 응답성이 높은 사용자 프로그램에 적용을 어렵게 한다. 본 논문에서는 변환 과정의 경량화를 통해 변환 오버헤드를 줄임으로써, 높은 동적 코드 변환 성능을 가지는 경량 동적 코드 변환 기법을 제안하고, 이를 기반으로 하는 동적 인스트루멘테이션 프레임워크를 제안한다. 제안 기법은 테이블 기반의 새로운 동적 주소 변환 기법으로 코드를 변환하고, 더불어 자주 실행되는 라이브러리 함수에 대해 변환 과정에 대해서는 주소 변환만을 함으로써 변환 오버헤드를 줄이는 변환 우회 기법을 이용한다. 기존 동적 코드 변환 기법과의 비교를 통해 2%~65%의 성능 향상을 확인하였다.

동적 링크를 활용한 특정 함수 호출 (Exploit the method according to the function call)

  • 옥근호;강영진;이훈재
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2016년도 춘계학술대회
    • /
    • pp.755-758
    • /
    • 2016
  • 본 논문에서는 바이너리 프로그램에서 함수가 호출될 시 바이너리 내에서 어떠한 방법으로 함수를 호출하는지 설명한다. 그리고 그 함수를 호출할시 필요한 요소들과 C언어 파일의 동적링크 컴파일 과정과 그 요소들을 이어주는 '링커'라는 개념을 설명하고, 정적링크와 동적링크를 차이점을 비교 분석한다. 또한 동적 링크를 활용하여 취약점을 공격하는 Return To Dynamic Linker에 대해 간략히 서술하며 테스트바이너리에 시험해본다.

  • PDF

Dynamic Model for Ocean Thermal Energy Conversion Plant with Working Fluid of Binary Mixtures

  • Nakamura, Masatoshi;Zhang, Yong;Bai, Ou;Ikegami, Yasuyuki
    • 제어로봇시스템학회:학술대회논문집
    • /
    • 제어로봇시스템학회 2003년도 ICCAS
    • /
    • pp.2304-2308
    • /
    • 2003
  • Ocean thermal energy conversion (OTEC) is an effective method of power generation, which has a small impact on the environment and can be utilized semi-permanently. This paper describes a dynamic model for a pilot OTEC plant built by the Institute of Ocean Energy, Saga University, Japan. This plant is based on Uehara cycle, in which binary mixtures of ammonia and water is used as the working fluid. Some simulation results attained by this model and the analysis of the results are presented. The developed computer simulation can be used to actual practice effectively, such as stable control in a steady operation, optimal determination of the plant specifications for a higher thermal efficiency and evaluation of the economic prospects and off-line training for the operators of OTEC plant.

  • PDF

Intel VT 기술을 이용한 Xen 기반 동적 악성코드 분석 시스템 구현 및 평가 (Development and Analyses of Xen based Dynamic Binary Instrumentation using Intel VT)

  • 김태형;김인혁;엄영익;김원호
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제37권5호
    • /
    • pp.304-313
    • /
    • 2010
  • 악성코드를 분석하기 위한 기법에는 다양한 방법들이 존재한다. 하지만 기존의 악성코드 분석 기법으로는 악성코드들의 동작들을 정확하게 분석하는 것이 점점 어려워지고 있다. 특히, 분석 시스템들이 악성코드의 안티-디버깅 기술에 의해 감지되기 쉽고, 실행속도 등 여러 가지 한계점을 보임에 따라 이를 해결할 수 있는 분석 기법이 요구되고 있다. 본 논문에서는 동적 코드 분석을 위한 기본 요구사항인 명령어 단위 분석 및 메모리 접근 추적 기능을 제공하는 동적 코드 분석 시스템을 설계 및 구현한다. 그리고 DLL 로딩 추적을 통한 API 호출 정보를 추출하여, 다양한 실행 코드들을 분석 할 수 있는 기반 환경을 구축한다. 제안 시스템은 Intel의 VT 기술을 이용하여 Xen 기반으로 전가상화 환경을 구축하였으며, 게스트에서는 윈도우즈 XP가 동작할 수 있도록 하였다. 제안 시스템을 이용하여 대표적인 악성코드들을 분석해 봄으로써 제안 시스템 각각의 기능들의 활용을 살펴보고, 제안 시스템이 악성코드들을 정확하게 분석 및 탐지함을 보여준다.

A Multi-Class Classifier of Modified Convolution Neural Network by Dynamic Hyperplane of Support Vector Machine

  • Nur Suhailayani Suhaimi;Zalinda Othman;Mohd Ridzwan Yaakub
    • International Journal of Computer Science & Network Security
    • /
    • 제23권11호
    • /
    • pp.21-31
    • /
    • 2023
  • In this paper, we focused on the problem of evaluating multi-class classification accuracy and simulation of multiple classifier performance metrics. Multi-class classifiers for sentiment analysis involved many challenges, whereas previous research narrowed to the binary classification model since it provides higher accuracy when dealing with text data. Thus, we take inspiration from the non-linear Support Vector Machine to modify the algorithm by embedding dynamic hyperplanes representing multiple class labels. Then we analyzed the performance of multi-class classifiers using macro-accuracy, micro-accuracy and several other metrics to justify the significance of our algorithm enhancement. Furthermore, we hybridized Enhanced Convolution Neural Network (ECNN) with Dynamic Support Vector Machine (DSVM) to demonstrate the effectiveness and efficiency of the classifier towards multi-class text data. We performed experiments on three hybrid classifiers, which are ECNN with Binary SVM (ECNN-BSVM), and ECNN with linear Multi-Class SVM (ECNN-MCSVM) and our proposed algorithm (ECNNDSVM). Comparative experiments of hybrid algorithms yielded 85.12 % for single metric accuracy; 86.95 % for multiple metrics on average. As for our modified algorithm of the ECNN-DSVM classifier, we reached 98.29 % micro-accuracy results with an f-score value of 98 % at most. For the future direction of this research, we are aiming for hyperplane optimization analysis.

가상 머신 기반으로 난독화된 실행파일의 구조 및 원본의미 추출 동적 방법 (A Dynamic Approach to Extract the Original Semantics and Structure of VM-based Obfuscated Binary Executables)

  • 이성호;한태숙
    • 정보과학회 논문지
    • /
    • 제41권10호
    • /
    • pp.859-869
    • /
    • 2014
  • 최근 몇 년 동안, 난독화 기술은 악성 코드를 보호하기 위해 악용되어 큰 위협이 되고 있다. 특히, 가상 머신 기반으로 난독화된 악성 코드의 경우, 원본 프로그램이 직접적으로 드러나지 않고 가상머신의 의미와 원본 프로그램의 의미가 함께 수행되므로 분석하기 어렵다. 이러한 위협에 대응하기 위하여, 가상 머신 기반으로 난독화된 프로그램을 분석하는 동적 분석 기반의 프레임워크를 제안한다. 첫째, 난독화된 실행파일의 동적 실행 트레이스를 추출한다. 둘째, 동적 실행 트레이스를 중간언어로 변환하고 동적 제어 흐름 그래프를 이용하여 가상 머신의 구조를 추출한다. 결과적으로, 추출된 가상 머신 구조를 이용하여 원본 프로그램의 의미를 추출한다. 본 논문은 최신 상용 난독화 도구로 난독화된 실행파일에서 원본 프로그램을 추측할 수 있는 방안을 제시한다. 개발된 도구는 가상 머신 기반으로 난독화된 프로그램을 이해하고 프로그램 분석 기법을 적용하는 데 활용될 수 있으며 추출된 원본 프로그램의 요약 의미를 이용하여 추가적인 분석을 적용할 수 있을 것으로 기대한다.

바이너리 코드 취약점 탐지를 위한 딥러닝 기반 동적 오염 탐지 기술 (Deep Learning based Dynamic Taint Detection Technique for Binary Code Vulnerability Detection)

  • 고광만
    • 한국정보전자통신기술학회논문지
    • /
    • 제16권3호
    • /
    • pp.161-166
    • /
    • 2023
  • 최근 바이너리 코드에 대한 신종·변종 해킹이 증가되고 있으며 소스 프로그램에서 악성코드를 탐지하고 공격에 대한 방어 기술의 한계점이 자주 노출되는 상황이다. 바이너리 코드에 대해 머신러닝, 딥러닝 기술을 활용하여 고도화된 소프트웨어 보안 취약점 탐지 기술과 공격에 대한 방어와 대처 능력이 필요하다. 본 논문에서는 바이너리 코드의 실행 경로를 추적(execution trace)하여 동적 오염 정보를 입력한 후 오염 정보를 따른 특징을 기반으로 멀웨어를 그룹핑하는 멀웨어 클러스터링 방법을 제안한다. 멀웨어 취약점 탐지는 3-계층으로 구성한 Few-shot 학습 모델에 적용하여 각 계층의 CPU, GPU에 대해 F1-score를 산출하였다. 학습 과정에서 97~98%의 성능과 테스트 과정에서 80~81% 정도의 탐지 성능을 얻었다.

동적 기호 실행을 이용한 그래프 기반 바이너리 코드 실행 경로 탐색 플랫폼 (Graph based Binary Code Execution Path Exploration Platform for Dynamic Symbolic Execution)

  • 강병호;임을규
    • 정보보호학회논문지
    • /
    • 제24권3호
    • /
    • pp.437-444
    • /
    • 2014
  • 본 논문에서는 그래프 기반의 바이너리 코드 동적 실행 경로 탐색 플랫폼을 제안한다. 바이너리 코드의 조건 분기 명령어를 노드(Node), 그 외의 명령어를 에지(Edge)로 구성된 그래프를 정의하며, 이 그래프를 기반으로 하여 실행 경로 탐색을 수행하는 방안을 제안한다. 실험을 통해 제안하는 그래프 기반 바이너리 코드 실행 경로 탐색 플랫폼의 프로토타입이 실행 경로 탐색을 올바르게 수행함을 확인하였으며, 본 논문에서 제안하는 방안을 통해 소프트웨어 테스팅을 보다 효과적으로 수행하여 소프트웨어 보증, 시큐어 프로그래밍 및 악성 프로그램 분석 등을 보다 효과적으로 수행할 수 있을 것으로 기대한다.

바이너리 분석을 통한 UNIX 커널 기반 File System의 TOCTOU Race Condition 탐지 (Detecting TOCTOU Race Condition on UNIX Kernel Based File System through Binary Analysis)

  • 이석원;김문회;오희국
    • 정보보호학회논문지
    • /
    • 제31권4호
    • /
    • pp.701-713
    • /
    • 2021
  • Race Condition은 둘 이상의 프로세스가 하나의 공통 자원에 대해 입력이나 조작이 동시에 일어나 의도치 않은 결과를 가져오는 취약점이다. 해당 취약점은 서비스 거부 또는 권한 상승과 같은 문제를 초래할 수 있다. 소프트웨어에서 취약점이 발생하면 관련된 정보를 문서화하지만 종종 취약점의 발생 원인을 밝히지 않거나 소스코드를 공개하지 않는 경우가 있다. 이런 경우, 취약점을 탐지하기 위해서는 바이너리 레벨에서의 분석이 필요하다. 본 논문은 UNIX 커널기반 File System의 Time-Of-Check Time-Of-Use (TOCTOU) Race Condition 취약점을 바이너리 레벨에서 탐지하는 것을 목표로 한다. 지금까지 해당 취약점에 대해 정적/동적 분석 기법의 다양한 탐지 기법이 연구되었다. 기존의 정적 분석을 이용한 취약점 탐지 도구는 소스코드의 분석을 통해 탐지하며, 바이너리 레벨에서 수행한 연구는 현재 거의 전무하다. 본 논문은 바이너리 정적 분석 도구인 Binary Analysis Platform (BAP)를 통해 Control Flow Graph, Call Graph 기반의 File System의 TOCTOU Race Condition 탐지 방법을 제안한다.

지능형 악성코드 분석을 위한 리얼머신 기반의 바이너리 자동실행 환경 (Automatic Binary Execution Environment based on Real-machines for Intelligent Malware Analysis)

  • 조호묵;윤관식;최상용;김용민
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제22권3호
    • /
    • pp.139-144
    • /
    • 2016
  • 최근 악성코드를 이용한 위협은 사이버 상에서 가장 위협적이고 점차 지능화되고 있다. 하지만 안티 바이러스 제품이나 기존의 탐지 솔루션은 복잡해지고 정교해지는 악성코드에 대해 효과적으로 대응하지 못한다. 본 논문에서는 분석 환경 회피 기술을 갖는 악성코드를 보다 효과적으로 식별하기 위해 실제 컴퓨터 환경을 기반으로 악성코드의 동작 및 상태를 감지하고 악성코드의 요구사항을 동적으로 핸들링하는 환경을 제안한다. 제안하는 방법은 리얼머신 기반의 바이너리 자동실행 환경과 가상머신 환경에서의 악성코드 악성행위 활동성을 비교하여 지능형 악성코드를 효과적으로 분석하기 위한 동적 분석환경을 제공할 수 있음을 실험하여 보였다.