• Title/Summary/Keyword: 바이너리

Search Result 304, Processing Time 0.028 seconds

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

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

SVM 기반 유전 알고리즘을 이용한 컴파일러 분석 프레임워크 : 특징 및 모델 선택 민감성 (Compiler Analysis Framework Using SVM-Based Genetic Algorithm : Feature and Model Selection Sensitivity)

  • 황철훈;신건윤;김동욱;한명묵
    • 정보보호학회논문지
    • /
    • 제30권4호
    • /
    • pp.537-544
    • /
    • 2020
  • 악성코드 기술 발전으로 변이, 난독화 등의 탐지 회피 방법이 고도화되고 있다. 이에 악성코드 탐지 기술에 있어 알려지지 않은 악성코드 탐지 기술이 중요하며, 배포된 악성코드를 통해 저자를 식별하여 알려지지 않은 악성코드를 탐지하는 악성코드 저자 식별 방법이 연구되고 있다. 본 논문에서는 바이너리 기반 저자 식별 방법에 대해 중요 정보인 컴파일러 정보를 추출하고자 하였으며, 연구 간에 특징 선택, 확률 및 비확률 모델, 최적화가 분류 효율성에 미치는 민감성(Sensitive)을 확인하고자 하였다. 실험에서 정보 이득을 통한 특징 선택 방법과 비확률 모델인 서포트 벡터 머신이 높은 효율성을 보였다. 최적화 연구 간에 제안하는 프레임워크를 통한 특징 선택 및 모델 최적화를 통해 높은 분류 정확도를 얻었으며, 최대 48%의 특징 감소 및 51배가량의 빠른 실행 속도라는 결과를 보였다. 본 연구를 통해 특징 선택 및 모델 최적화 방법이 분류 효율성에 미치는 민감성에 대해 확인할 수 있었다.

컴포넌트 개조 지원 도구의 설계 및 구현 (Design and Implementation of Component Adaptation Supporting Tool)

  • 김정아;권오천;최유희;신규상;윤심
    • 정보처리학회논문지D
    • /
    • 제9D권5호
    • /
    • pp.903-914
    • /
    • 2002
  • 본 연구에서는 컴포넌트의 개조에 필요한 기법과 이를 지원하는 도구를 개발하였다. 컴포넌트를 재사용 하거나 조림하는 과정 중에 컴포넌트의 개조가 필요하게 되는데, 이는 컴포넌트의 인터페이스가 조립하고자 하는 다른 컴포넌트와 다른 경우가 많기 때문이다. 가끔은 새로운 요구 사항에 의해 추가적인 속성의 정의가 필요한 경우도 생기게 된다. 그러므로 컴포넌트의 재사용과 조립에는 컴포넌트 개조의 과정이 필수적이다. 본 연구에서는 컴포넌트 개조를 지원하기 위해서 바이너리 컴포넌트 개조 기법과 개조 컴포넌트에 의한 개조 기법을 제안하였다. 또한 효과적 개조 과정 지원을 위해 개조 지원 도구를 개발하였다. 이로써 소스코드가 없는 기존의 컴포넌트를 개조하여 새로운 요구 사항에 부합되지 못하거나 기존의 다른 컴포넌트와 조립에 문제가 있는 컴포넌트를 쉽게 개조할 수 있도록 지원하였다.

방송콘텐츠 저작권 식별관리를 위한 UCI 표준식별체계와 내용기반 식별정보의 상호연계 연구 (A Study on Cross-Association between UCI Identification System and Content-based Identifier for Copyright Identification and Management of Broadcasting Content)

  • 김주섭;남제호
    • 방송공학회논문지
    • /
    • 제14권3호
    • /
    • pp.288-298
    • /
    • 2009
  • 본 논문에서는 방송콘텐츠 저작권 식별관리를 위한 방송콘텐츠의 Video Signature와 국가표준콘텐츠식별체계인 UCI(Universal Content Identifier)의 연계 방안을 제시한다. Video Signature는 UCI와 같은 식별자의 인위적인 부여 과정이 없더라도 동영상 콘텐츠 자체에서 직접 특징정보를 추출할 수 있기 때문에, 이미 배포 유통된 콘텐츠에 대해서도 식별 확인이 가능하다. 따라서, 본 연구에서는 최근 국가표준콘텐츠식별체계로 통합, 단일화된 UCI 식별체계와 내용기반 식별정보인 Video Signature의 지속적인 연계를 위하여, 바이너리로 표현된 Video Signature를 포함하는 UCI 응용메타데이터를 정의한다. 그리고 UCI 표준식별체계 기반 Video Signature 전송 및 관리 메카니즘에 기반한 방송콘텐츠의 저작권 식별관리 및 부가서비스 시나리오를 제시한다.

TOE를 위한 소켓 인터페이스의 구현 (An Implementation of Socket Interface for TOEs)

  • 손성훈
    • 한국멀티미디어학회논문지
    • /
    • 제8권11호
    • /
    • pp.1472-1482
    • /
    • 2005
  • TOE (TCP/IP Offload Engine)는 부하가 많은 대규모 네트워크 서버에서 TCP/IP 프로토콜 처리의 부담을 줄이기 위해 고안된 하드웨어 장치이다. 본 논문에서는 TOE (TCP Offload Engine)를 사용하는 대규모 멀티미디어 서버를 위한 소켓 인터페이스 계층의 설계 및 구현에 대해 다룬다. 제안된 소켓 인터페이스 계층은 리눅스 운영체제 상에서 커널 모듈로 설계, 구현되었으며, BSD소켓 계층과 INET소켓 계층 사이에 존재하면서 응용 프로그램의 소켓 관련 요청을 TOE나 기존 INET소켓 계층으로 전달하는 역할을 한다. 본 논문에서 제안한 소켓 인터페이스는 소켓을 통해 TOE를 사용하는 응용 프로그램에 대해서 모든 표준 소켓 입출력 API와 파일 입출력 관련 API를 그대로 제공하고, 기존 응용 프로그램들에 대해서도 수정 없이 TOE의 기능을 그대로 사용할 수 있는 바이너리 수준의 호환성을 제공하며, 한 시스템에서 TOE와 이더넷 NIC을 동시에 사용할 수 있게 된다.

  • PDF

저 면적 타원곡선 암호프로세서를 위한 GF(2$^{m}$ )상의 새로운 산술 연산기 (A New Arithmetic Unit Over GF(2$^{m}$ ) for Low-Area Elliptic Curve Cryptographic Processor)

  • 김창훈;권순학;홍춘표
    • 한국통신학회논문지
    • /
    • 제28권7A호
    • /
    • pp.547-556
    • /
    • 2003
  • 본 논문에서는 저 면적 타원곡선 암호프로세서를 위한 GF(2$^{m}$ )상의 새로운 산술 연산기를 제안한다. 제안된 연산기는 바이너리 확장 최대공약수 알고리즘과 MSB(Most Significant Bit) 우선 곱셈 알고리즘으로부터 하드웨어 공유를 통하여 LFSR(Linear Feed Back Shft Register)구조로 설계되었으며, 나눗셈 및 곱셈 모두를 수행 할 수 있다. 즉 나눗셈 모드에서 2m-1 클락 사이클 지연 후 나눗셈의 결과를 출력하며, 곱셈 모드에서 m 클락 사이클 지연 후 곱셈 결과를 각각 출력한다. 본 논문에서 제안된 연산기를 기존의 나눗셈기들과 비교 분석한 결과 적은 트랜지스터의 사용으로 계산 지연시간을 감소 시켰다. 또한 제안된 연산기는 기약다항식의 선택에 어떠한 제약도 두지 않을 뿐 아니라 매우 규칙적이고 묘듈화 하기 쉽기 때문에 필드 크기 m 에 대하여 높은 확장성 및 유연성을 제공한다 따라서, 본 연구에서 제안된 산술 연산기는 타원곡선 암호프로세서의 나눗셈 및 곱셈 연산기로 사용될 수 있다. 특히 스마트 카드나 무선통신기기와 같은 저 면적을 요구하는 응용들에 매우 적합하다.

기계학습 기반 경쟁자 자동추출 방법 (Competitor Extraction based on Machine Learning Methods)

  • 이충희;김현진;류법모;김현기;서영훈
    • 한국정보과학회 언어공학연구회:학술대회논문집(한글 및 한국어 정보처리)
    • /
    • 한국정보과학회언어공학연구회 2012년도 제24회 한글 및 한국어 정보처리 학술대회
    • /
    • pp.107-112
    • /
    • 2012
  • 본 논문은 일반 텍스트에 나타나는 경쟁 관계에 있는 고유명사들을 경쟁자로 자동 추출하는 방법에 대한 것으로, 규칙 기반 방법과 기계 학습 기반 방법을 모두 제안하고 비교하였다. 제안한 시스템은 뉴스 기사를 대상으로 하였고, 문장에 경쟁관계를 나타내는 명확한 정보가 있는 경우에만 추출하는 것을 목표로 하였다. 규칙기반 경쟁어 추출 시스템은 2개의 고유명사가 경쟁관계임을 나타내는 단서단어에 기반해서 경쟁어를 추출하는 시스템이며, 경쟁표현 단서단어는 620개가 수집되어 사용됐다. 기계학습 기반 경쟁어 추출시스템은 경쟁어 추출을 경쟁어 후보에 대한 경쟁여부의 바이너리 분류 문제로 접근하였다. 분류 알고리즘은 Support Vector Machines을 사용하였고, 경쟁어 주변 문맥 정보를 대표할 수 있는 언어 독립적 5개 자질에 기반해서 모델을 학습하였다. 성능평가를 위해서 이슈화되고 있는 핫키워드 54개에 대해서 623개의 경쟁어를 뉴스 기사로부터 수집해서 평가셋을 구축하였다. 비교 평가를 위해서 기준시스템으로 연관어에 기반해서 경쟁어를 추출하는 시스템을 구현하였고, Recall/Precision/F1 성능으로 0.119/0.214/0.153을 얻었다. 제안 시스템의 실험 결과로 규칙기반 시스템은 0.793/0.207/0.328 성능을 보였고, 기계 학습기반 시스템은 0.578/0.730/0.645 성능을 보였다. Recall 성능은 규칙기반 시스템이 0.793으로 가장 좋았고, 기준시스템에 비해서 67.4%의 성능 향상이 있었다. Precision과 F1 성능은 기계학습기반 시스템이 0.730과 0.645로 가장 좋았고, 기준시스템에 비해서 각각 61.6%, 49.2%의 성능향상이 있었다. 기준시스템에 비해서 제안한 시스템이 Recall, Precision, F1 성능이 모두 대폭적으로 향상되었으므로 제안한 방법이 효과적임을 알 수 있다.

  • PDF

Hausdorff와 LBP 거리의 융합을 이용한 개선된 얼굴검출 (An Improved Face Detection Method Using a Hybrid of Hausdorff and LBP Distance)

  • 박성천;구자영
    • 한국컴퓨터정보학회논문지
    • /
    • 제15권11호
    • /
    • pp.67-73
    • /
    • 2010
  • 본 논문에서는 두 점의 집합들 사이의 기하학적 유사도에 근거한 Hausdorff 거리와 국지적 미세 텍스처의 분포에 근거한 Local Binary Pattern 거리가 융합된 새로운 측도를 도입함으로써 얼굴검출의 정확도를 높이는 방법을 제안하고 있다. 트레이닝 데이터를 이용해서 두 가지의 상이한 측도들을 정규화할 수 있는 매개변수와 최적화된 융합 비율을 찾는 방법을 보였다. 흔히 사용되는 얼굴 데이터베이스에 적용함으로써 제시된 방법이 두 가지 방법 각각을 이용한 방법보다 효과적이고 얼굴의 자세, 조명, 배경의 변화에 강인함을 보였다. 실험에서 사용된 데이터베이스의 경우 실제 얼굴의 위치와 검출된 얼굴의 위치 간의 평균거리오차가 LBP 방식의 47.9%, Hausdorff 방식의 22.8% 로 감소됨을 보였다.

Automatic malware variant generation framework using Disassembly and Code Modification

  • Lee, Jong-Lark;Won, Il-Yong
    • 한국컴퓨터정보학회논문지
    • /
    • 제25권11호
    • /
    • pp.131-138
    • /
    • 2020
  • 멀웨어는 일반적으로 다른 사용자의 컴퓨터시스템에 침입하여 개발자가 의도하는 악의적인 행위를 일으키는 컴퓨터프로그램으로 인식되지만 사이버 공간에서는 적대국을 공격하기 위한 사이버 무기로써 사용되기도 한다. 사이버 무기로서 멀웨어가 갖춰야 할 가장 중요한 요소는 상대방의 탐지시스템에 의해 탐지되기 이전에 의도한 목적을 달성하여야 한다는 것인데, 하나의 멀웨어를 상대방의 탐지 시스템을 피하도록 제작하는 데에는 많은 시간과 전문성이 요구된다. 우리는 DCM 기법을 사용하여, 바이너리코드 형태의 멀웨어를 입력하면 변종 멀웨어를 자동으로 생성해 주는 프레임워크를 제안한다. 이 프레임워크 안에서 샘플 멀웨어가 자동으로 변종 멀웨어로 변환되도록 구현하였고, 시그니쳐 기반의 멀웨어 탐지시스템에서는 이 변종 멀웨어가 탐지되지 않는 것을 확인하였다.

핫스팟 접근영역 인식에 기반한 바이너리 코드 역전 기법을 사용한 저전력 IoT MCU 코드 메모리 인터페이스 구조 연구 (Low-Power IoT Microcontroller Code Memory Interface using Binary Code Inversion Technique Based on Hot-Spot Access Region Detection)

  • 박대진
    • 대한임베디드공학회논문지
    • /
    • 제11권2호
    • /
    • pp.97-105
    • /
    • 2016
  • Microcontrollers (MCUs) for endpoint smart sensor devices of internet-of-thing (IoT) are being implemented as system-on-chip (SoC) with on-chip instruction flash memory, in which user firmware is embedded. MCUs directly fetch binary code-based instructions through bit-line sense amplifier (S/A) integrated with on-chip flash memory. The S/A compares bit cell current with reference current to identify which data are programmed. The S/A in reading '0' (erased) cell data consumes a large sink current, which is greater than off-current for '1' (programmed) cell data. The main motivation of our approach is to reduce the number of accesses of erased cells by binary code level transformation. This paper proposes a built-in write/read path architecture using binary code inversion method based on hot-spot region detection of instruction code access to reduce sensing current in S/A. From the profiling result of instruction access patterns, hot-spot region of an original compiled binary code is conditionally inverted with the proposed bit-inversion techniques. The de-inversion hardware only consumes small logic current instead of analog sink current in S/A and it is integrated with the conventional S/A to restore original binary instructions. The proposed techniques are applied to the fully-custom designed MCU with ARM Cortex-M0$^{TM}$ using 0.18um Magnachip Flash-embedded CMOS process and the benefits in terms of power consumption reduction are evaluated for Dhrystone$^{TM}$ benchmark. The profiling environment of instruction code executions is implemented by extending commercial ARM KEIL$^{TM}$ MDK (MCU Development Kit) with our custom-designed access analyzer.