• 제목/요약/키워드: 바이너리 시스템

검색결과 120건 처리시간 0.025초

바이너리 코드-SIL 중간언어 변환 검증을 위한 시각화 도구 구현 (A Visualization Tool Implementation for Evaluation of Binary Code to Smart Intermediate Language Conversion)

  • 임정호;이태규;백도우;손윤식;정준호;최진영;고광만;오세만
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2017년도 춘계학술발표대회
    • /
    • pp.280-282
    • /
    • 2017
  • 최근 소프트웨어에 내장된 취약점 분석을 위한 자동화 도구 개발 연구가 각 분야에서 활발히 연구되고 있다. 그 중 바이너리 코드를 대상으로 바로 보안취약점을 분석하는 방법이 아닌 중간언어를 활용하여 분석하는 방법이 대두되고 있으며 이를 위한 다양한 중간언어가 제시되었다. 그 중 하이레벨 언어 수준의 내용의 기술이 가능하며 명령어 자체적으로 자료형을 유지하여 보안 취약점 분석에 효과적인 언어로 SIL 중간언어가 재조명 받고 있다. 따라서 본 논문에서는 이룰 위해서 x86/64 기반 어셈블리어를 SIL 로 효과적으로 변환하며 프로그램의 의미가 변하지 않는 것을 확인하기 위해서 프로그램의 제어흐름을 시각화하는 기능을 가진 시스템을 제안한다.

PinDemonium 기반 Original Entry Point 탐지 방법 개선 (Improved Original Entry Point Detection Method Based on PinDemonium)

  • 김경민;박용수
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제7권6호
    • /
    • pp.155-164
    • /
    • 2018
  • 많은 악성프로그램은 역공학을 막기 위해 다양한 상용 패커를 사용해 압축 혹은 암호화를 했기 때문에 악성코드 분석가는 압축해제 혹은 복 호화를 먼저 수행해야 한다. OEP(Original Entry Point)는 암호화되거나 압축되어 있는 실행파일을 다시 원본 바이너리 상태로 되돌린 후 실행된 첫 번째 명령어의 주소이다. 여러 언패커는 OEP가 나타나기 전까지 패킹된 파일을 실행하며 주소를 기록한다. 그리고 기록된 주소들 중에 OEP를 찾는다. 그러나 일부 언패커에서 제공하는 OEP 후보들은 비교적 큰 OEP 후보 집합을 제공하거나 후보들 중에 OEP가 없는 경우가 있다. 이에 악성코드 분석가들은 더 적은 OEP 후보 집합을 제공하는 도구가 필요한 실정이다. 본 논문에서는 PinDemonium이라 불리는 언패커에 두 가지 OEP 탐지방법을 추가하여 더 적은 OEP 후보 집합을 제공하는 도구를 만들었다. 첫 번째 방법은 패킹된 프로그램이 완전히 원본 바이너리상태로 되돌아 간 후에는 원프로그램 함수 호출과 동일하다는 것을 활용한 OEP 탐지방법이다. C/C++ 언어로 작성된 프로그램은 바이너리 코드로 언어를 변환하는 컴파일 과정을 거친다. 컴파일 과정을 거친 프로그램에는 특정 시스템 함수들이 추가된다. 이 시스템 함수들은 컴파일러 별로 다르다. 컴파일러 별로 사용되는 시스템 함수를 조사한 후, 패킹된 프로그램에서 호출되는 시스템 함수와 패턴매칭하여 언패킹 작업이 끝났는지 탐지하는 방법이다. 두 번째 방법은 패킹된 프로그램이 완전히 원본 바이너리 상태로 돌아간 후 시스템함수에서 사용되는 매개 변수가 원프로그램과 동일하다는 것을 활용한 OEP 탐지방법이다. 시스템함수에서 사용되는 매개변수의 값을 이용해 OEP를 찾는 방법이다. 본 연구는 16종의 상용 패커로 압축된 샘플 프로그램을 대상으로 OEP 탐지 실험을 했다. 본 연구에선 안티 디버깅 기법으로 프로그램을 실행하지 못하는 경우인 2종을 제외하고 PinDemonium 대비 평균 40% 이상 OEP후보를 줄일 수 있었다.

JMP+RAND: 바이너리 난수 삽입을 통한 메모리 공유 기반 부채널 공격 방어 기법 (JMP+RAND: Mitigating Memory Sharing-Based Side-Channel Attack by Embedding Random Values in Binaries)

  • 김태훈;신영주
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제9권5호
    • /
    • pp.101-106
    • /
    • 2020
  • 컴퓨터가 보급된 이래로 정보보안을 달성하기 위해 많은 노력이 이루어졌다. 그중 메모리 보호 기법에 대한 연구가 가장 많이 이루어졌지만, 컴퓨터의 성능 향상으로 기존 메모리 보호 기법의 문제들이 발견되었고 부채널 공격의 등장으로 새로운 방어기법이 필요하게 되었다. 본 논문에서는 JMP+RAND 기법을 이용해 페이지(Page)마다 5-8byte의 난수를 삽입하여 메모리 공유 기반 부채널 공격을 방어하고 기존 메모리 보호 기법도 보완하는 방법을 제안한다. 기존 부채널 공격들의 방어기법과 달리 JMP+RAND 기법은 정적 바이너리 재작성 기법(Static binary rewriting)과 연속된 jmp 명령어, 난수 값을 이용해 사전에 부채널 공격을 방어한다. 우리는 메모리 공유 기반 부채널 공격이 JMP+RAND 기법이 적용된 바이너리를 공격하는 데 걸리는 시간을 정량적으로 계산하였고 현실적인 시간 내에 공격할 수 없다는 것을 보여주었다. 최근 아키텍처는 분기 예측(Branch prediction)을 이용해 jmp 명령어의 분기처리가 매우 빠르고 정확하므로 JMP+RAND 기법의 오버헤드가 매우 낮다. 특히 특정 프로그램에만 난수 삽입이 가능하므로 클라우드 컴퓨팅 환경에서 메모리 중복제거 기능과 함께 사용하면 높은 효율성을 보일 수 있을 것으로 기대한다.

유해 사이트를 접속하는 안드로이드 앱을 문자열 분석으로 검사하는 시스템 (A String Analysis based System for Classifying Android Apps Accessing Harmful Sites)

  • 최광훈;고광만;박희완;윤종희
    • 정보처리학회논문지A
    • /
    • 제19A권4호
    • /
    • pp.187-194
    • /
    • 2012
  • 안드로이드 기반 스마트폰 앱의 바이너리 코드를 오프라인 상에서 분석하여 유해 사이트 목록에 포함된 서버에 접속하는지 여부를 판단하는 시스템을 제안하고, 실제 앱에 대해 적용한 실험 결과를 제시한다. 주어진 앱의 바이너리 코드를 Java 바이트 코드로 역 컴파일하고, 문자열 분석을 적용하여 프로그램에서 사용하는 모든 문자열 집합을 계산한 다음, 유해 매체물을 제공하는 사이트 URL을 포함하는지 확인하는 방법이다. 이 시스템은 앱을 실행하지 않고 배포 단계에서 검사할 수 있고 앱 마켓 관리에서 유해 사이트를 접속하는 앱을 분류하는 작업을 자동화 할 수 있는 장점이 있다. DNS 서버를 이용하거나 스마트폰에 모니터링 모듈을 설치하여 차단하는 기존 방법들과 서로 다른 단계에서 유해 앱을 차단함으로써 상호 보완할 수 있는 방법이 될 수 있다.

바이너리 수준에서의 Jump-Oriented Programming에 대한 탐지 메커니즘 (A detection mechanism for Jump-Oriented Programming at binary level)

  • 김주혁;이요람;오수현
    • 정보보호학회논문지
    • /
    • 제22권5호
    • /
    • pp.1069-1078
    • /
    • 2012
  • 컴퓨터 시스템의 안전성을 위협하는 주요 취약점으로 메모리 관련 취약점이 알려져 있으며, 최근 들어 이러한 메모리 취약점을 이용한 시스템 상에서의 실제 공격 또한 증가하고 있다. 이에 따라 시스템을 보호하기 위해서 다양한 메모리 보호 메커니즘들이 연구되고 운영체제를 통해 구현되어 왔지만, 더불어 이를 우회할 수 있는 공격 기법들 또한 발전하고 있다. 특히 버퍼 오버플로우 공격은 Return to Library, Return-Oriented Programming 등의 공격 기법으로 발전되어왔으며, 최근에는 Return-Oriented Programming 공격 기법에 대한 보호 방법 등의 연구로 인해 이를 우회하는 Jump-Oriented Programming 공격 기법이 등장하였다. 따라서 본 논문에서는 메모리 관련 공격 기법 중 최근 등장한 Jump-Oriented Programming 공격 기법에 대해 살펴보고, 이에 대한 특징을 분석한다. 또한, 분석된 특징을 통한 바이너리 수준에서의 탐지 메커니즘을 제안하고, 실험을 통해 제안하는 방법이 Jump-Oriented Programming 공격에 대한 탐지가 가능함을 검증한다.

안전등급 제어기 프로세서 모듈 가상화 (Virtualization of Safety-Related Controller Processor Module)

  • 이윤상;김종명;윤혁제;송승환;김정범
    • 한국전자통신학회논문지
    • /
    • 제17권3호
    • /
    • pp.449-458
    • /
    • 2022
  • 발전소에는 사고에 대비하여 사고를 방지하거나, 사고 시 발전소의 안정적인 운영을 위하여 여러 단계의 검증을 거친 프로그램을 제어기에 설치하여 운영한다. 본 논문은 발전소 안전 제어 설비에 사용되는 제어기 프로세서에 대하여 검증 완료된 바이너리 형태의 운영체제 및 응용 프로그램이 동작할 수 있도록 가상화한 기술에 대해 기술하였다. 본 가상화 프로세서에 적용된 기술은 상용 Tool을 이용하여 명령어 해석기, 분석기 등 안전등급 제어기 프로세서 모듈 동작에 필수적인 구성 요소들을 구현하였으며, 가상화 플랫폼 개발은 Imperas Tool을 사용하여 Linux 기반의 운영체제에서 개발하였다. 또한, 구현된 가상 프로세서 모듈이 정상적으로 바이너리 형태의 명령을 해석하고 수행하는지 확인하였다.

매입형 영구자석 동기전동기의 속도 센서리스에 관한 연구 (A study for speed sensorless of the Interior permanent magnet synchronous motors)

  • 강형석;김영석
    • 대한전기학회:학술대회논문집
    • /
    • 대한전기학회 2007년도 추계학술대회 논문집 전기기기 및 에너지변환시스템부문
    • /
    • pp.141-143
    • /
    • 2007
  • 본 논문은 매입형 영구자석 동기전동기의 속도 센서리스의 제어 방법에 관한 것이다. 매입형 영구자석 동기전동기의 센서리스 구동을 위하여 적응 적분바이너리 관측기와 적응 슬라이딩 모드 관측기를 이용하였다. 두 관측기의 성능 비교를 위하여 매입형 영구자석 동기전동기의 고정자 전압방정식으로부터 각각 관측기를 구성하였고, 동일한 시스템에서의 실험을 통하여 관측기의 성능을 비교하였다.

  • PDF

스키마를 이용한 XML 문서의 압축과 복원 (Compression/Decompression of XML Instance Documents Conforming to a Schema)

  • 염지현;김혁만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2006년도 가을 학술발표논문집 Vol.33 No.2 (D)
    • /
    • pp.157-160
    • /
    • 2006
  • 본 논문은 MPEG-7 BiM 규격에 따라 XML 스키마 정의를 기반으로 바이너리 형태로 압축하고 복원하는 시스템의 구현에 관한 것이다. MPEG-7 BiM 압축기 및 복원기의 세부 모듈과 기능을 서술하고, 설계 및 구현방법을 제안한다. 구현된 MPEG-7 BiM 압축기 및 복원기는 대역폭의 제약이 심한 방송 분야에서 메타데이터 전송을 위한 핵심 모듈로 사용 될 수 있다.

  • PDF

드론 펌웨어 역공학 방지를 위한 난독화 연구 (Anti-Reverse Engineering of Drone Firmware through Obfuscation Technique)

  • 연동현;장대희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2024년도 춘계학술발표대회
    • /
    • pp.205-206
    • /
    • 2024
  • 드론 산업의 급속한 성장과 함께, 드론 펌웨어에 대한 보안이 중요한 이슈로 대두되고 있다. 본 연구는 드론 펌웨어를 보호하기 위한 효과적인 방법 중 하나로 소프트웨어 난독화 기술을 제안한다. 난독화 기법은 소스 코드나 바이너리를 의도적으로 복잡하게 변형시켜, 외부의 불법적인 분석 및 변조를 어렵게 만드는 방법이다. 이 연구는 드론 펌웨어에 대해 난독화 기법을 적용하고, 그 효과를 평가함으로써 드론 시스템의 보안 강화에 기여하고자 한다.

Binary CDMA 기술을 이용한 저속 데이터 전송시스템 구현방안에 관한 연구 (A Study on the Implementation of Low-speed Data Transmission System using Binary CDMA Technology)

  • 김용성;이현석;조진웅
    • 한국산학기술학회:학술대회논문집
    • /
    • 한국산학기술학회 2011년도 추계학술논문집 2부
    • /
    • pp.577-580
    • /
    • 2011
  • 본 논문은 국내 순수 원천기술인 바이너리 CDMA 기술에 대하여 살펴보고, 이 기술이 적용된 Koinonia 시스템을 분석한다. 그리고 기존 고속의 Koinonia 시스템을 변경하여 동시에 운용할 수 있는 채널수를 최대화 하고 저속 데이터 전송시스템에 적용할 수 있는 기술을 제안한다. 또한 제안된 방법대로 테스트 베드를 구축하여 시험 및 검증함으로써 제안된 다채널 저속의 Koinonia 시스템을 다양한 산업응용분야에 적용시키고자 한다.

  • PDF