• 제목/요약/키워드: Execution Path Analysis

검색결과 24건 처리시간 0.027초

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

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

악성코드 동적 분석을 위한 효율적인 다중실행경로 탐색방법 (Efficient Exploring Multiple Execution Path for Dynamic Malware Analysis)

  • 황호;문대성;김익균
    • 정보보호학회논문지
    • /
    • 제26권2호
    • /
    • pp.377-386
    • /
    • 2016
  • 악성코드의 수가 기하급수적으로 증가함에 따라 악성코드의 행위를 고속으로 분석하는 기술이 절실히 요구되고 있다. 또한, 정적 분석을 방해하는 실행압축과 가상화 같은 지능화된 코드 난독화 기법이 대부분의 악성코드에 적용되어 악성코드 동적 분석에 관한 연구가 다양하게 진행되고 있다. 그러나 동적 분석은 조건에 따라 다른 행위를 하는 악성코드를 분석하는 데 어려움이 있으며, 이를 해결하기 위한 기존의 연구들은 분석 속도가 느리거나 분석환경을 준비하는 데 많은 자원을 소모하는 문제를 가지고 있다. 본 논문은 단일 분석환경에서 악성코드의 다중실행경로를 고속으로 탐색하는 방법을 제안한다. 제안한 방법은 다중실행경로 분석이 병렬적으로 실행되도록 파이프라인화 하였고, 실험을 통해 2-코어 환경에서 29%, 4-코어 환경에서 70%의 성능향상과 지연노드에 영향 받지 않는 고속탐색이 가능함을 보였다.

프로그램 분석을 위한 정적분석 기반 역추적 제어흐름그래프 생성 방안 모델 (Static Analysis Based on Backward Control Flow Graph Generation Method Model for Program Analysis)

  • 박성현;김연수;노봉남
    • 정보보호학회논문지
    • /
    • 제29권5호
    • /
    • pp.1039-1048
    • /
    • 2019
  • 프로그램 자동 분석 방법 중 하나인 기호 실행은 지난 몇 해 동안 기술적으로 크게 향상 되었다. 그러나 여전히 기호실행 그 자체만을 이용하여 프로그램을 분석하는 것은 실용적이지 않다. 가장 큰 이유로는 프로그램 분석 중에 발생하는 경로 폭발 문제로 인한 메모리 부족으로, 기호 실행을 이용해 프로그램의 모든 경로의 해를 구할 수 없다. 따라서 분석가는 모든 경로의 해를 구하는 것이 아닌 취약성을 갖는 지점으로 기호 실행 탐색 경로를 구성하는 것이 실용적이다. 본 논문에서는 기호 실행 과정에서 사용될 수 있는 정적분석 기반 바이너리 역방향 제어 흐름 그래프 생성 방법 기술을 제안한다. 역방향 제어 흐름 그래프 생성을 통해 분석가는 바이너리 내의 잠재적인 취약지점을 선정할 수 있고, 해당 지점으로부터 생성된 역추적 경로는 향후 기호 실행을 위해 효율적으로 사용될 수 있다. 우리는 리눅스 바이너리(x86)를 대상으로 실험을 진행하였고, 실제로 잠재적인 취약점 선정 및 역추적 경로 생성이 바이너리의 다양한 상황에서 가능함을 보였다.

워크플로우 마이닝을 위한 제어 경로 분석 메커니즘 (A Control Path Analysis Mechanism for Workflow Mining)

  • 민준기;김광훈;정중수
    • 인터넷정보학회논문지
    • /
    • 제7권1호
    • /
    • pp.91-99
    • /
    • 2006
  • 본 논문에서는 워크플로우 제어경로 분석 메커니즘을 제안한다. 이는 워크플로우 및 비즈니스 프로세스 기술의 활성화와 더불어 이의 적용사례가 급속히 늘어나면서 워크플로우 및 비즈니스 프로세스의 추적성과 재발견성을 최대화시키기고자 최근에 이슈화되고 있는 워크플로우 마이닝 또는 프로세스 재발견 기법으로 활용될 수 있다. 특히, 본 논문에서는 제안하는 메커니즘은 두 가지 주요요소로 구성되는데, 하나는 워크플루우의 제어경로 분석을 통해 제어경로 결정 트리를 생성하는 부분이며, 다른 하나는 워크플로우의 모니터링과 실행 로그 정보로부터 워크플로우의 제어 경로를 기반으로 하는 워크프로우 실행 이력을 마이닝하는 부분이다. 결과적으로, 이 메커니즘을 통해 습득된 워크플로우 제어경로 기반 재발견 지식과 실행 이력 정보는 워크플로우의 제어경로 관련 고급정보를 구축하는데 이용될 수 있을 뿐 만 아니라 최종적으로 해당 워크플로우의 품질을 고급화시키기 위한 리엔지니어링의 주요 기반정보로 활용될 수 있다.

  • PDF

소프트웨어 안전성 검증을 위한 입력 파일 기반 동적 기호 실행 방법 (Input File Based Dynamic Symbolic Execution Method for Software Safety Verification)

  • 박성현;강상용;김휘성;노봉남
    • 정보보호학회논문지
    • /
    • 제27권4호
    • /
    • pp.811-820
    • /
    • 2017
  • 최근 소프트웨어 자동화 기술 연구는 단일 경로의 테스트 케이스 생성뿐만 아니라, 다양한 테스트 케이스를 통해 취약점으로 도달할 수 있는 최적화된 경로를 파악하는 것에 중점을 두고 있다. 이러한 자동화 기술 중 Dynamic Symbolic Execution(이하, DSE) 기술이 각광 받고 있지만, 현재 대부분의 DSE 기술 적용 연구는 리눅스 바이너리 혹은 특정 모듈 자체만을 대상으로 적용하는 데 그치고 있는 실정이다. 하지만 대부분의 소프트웨어의 경우 입력 파일을 기반으로 작업이 수행되고, 또 이러한 과정에서 취약점이 다수 발생하고 있다. 따라서 본 논문은 소프트웨어 안전성 검증을 위한 입력 파일 기반 동적 기호 실행 방법을 제안한다. 실제 바이너리 소프트웨어 3종에 적용한 결과 제안하는 방법을 통해 효과적으로 해당 지점에 도달하는 테스트 케이스를 생성할 수 있었다. 이는 DSE 기술이 실제 소프트웨어 분석의 자동화에 활용될 수 있음을 보여준다.

효율적 데이터 의존성 분석을 이용한 바이너리 기반 Null Pointer Dereference 취약점 탐지 도구 (Efficient Null Pointer Dereference Vulnerability Detection by Data Dependency Analysis on Binary)

  • 김문회;오희국
    • 정보보호학회논문지
    • /
    • 제33권2호
    • /
    • pp.253-266
    • /
    • 2023
  • 널 포인터 역참조 (Null Pointer Dereference) 취약점은 정상적인 메모리 주소를 저장한 포인터가 아닌 널 포인터를 참조할 때 발생하는 취약점이다. 그러므로, 서비스거부공격 (Denial-of-service)와 같은 공격에 악용되어 큰 피해를 줄 수 있기 때문에 식별하고 제거해야 할 중요한 취약점이다. 기존 연구에서는 기호실행과 같은 정적분석을 통해 취약점을 탐지하는 방법을 많이 제안하였다. 그러나 커널과 같은 복잡도가 높은 대형 프로그램을 검사할 때는 경로폭발 (path explosion)과 제약조건(constraint solver) 때문에 효율성이 제한되며 주어진 시간 내에 탐지하지 못할 수 있다. 또는 대형 프로그램 중 일부 함수들 혹은 라이브러리 함수를 탐지할 때 전체 프로그램의 상태를 알 수 없기 때문에 완전한 분석을 수행하지 못해 정확도가 높지 않은 경우가 있다. 본 논문에서는 소스코드가 없는 대규모 프로그램에서 특정한 일부 기능 검사 할 때 빠르고 정확하게 검사하기 위한 가벼운 취약점 탐지도구를 연구개발 하였다. 변수나 포인터를 기호로 표시하고 프로그램 실행을 에뮬레이션하여, 각 실행경로에서 데이터 의존성(data dependency) 분석과 휴리스틱 방법으로 널 포인터 역참조 취약점을 탐지한다. 기존 bap_toolkit과 실험하여 비교하였을 때 오탐율이 8% 높지만, 존재하는 취약점을 모두 탐지해냈다.

ARM용 내장형 소프트웨어의 정적인 수행시간 분석 도구 (Static Timing Analysis Tool for ARM-based Embedded Software)

  • 황요섭;안성용;심재홍;이정아
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제11권1호
    • /
    • pp.15-25
    • /
    • 2005
  • 내장형 시스템에서 응용 프로그램을 구동시킬 때는 일련의 태스크들의 집합을 수행하여야 한다. 이러한 태스크들은 특정 하드웨어로 구현 될 수도 있고, 특정 프로세서에서 구동되는 소프트웨어로 구현될 수도 있다. 내장형 시스템에서 응용 프로그램을 구동시키기 위하여 하드웨어/소프트웨어의 자원 선택 및 작업 분할이 필요하게 되고 이때 하드웨어 및 소프트웨어의 성능 예측이 이용된다. 하드웨어 성능 예측과 달리 소프트웨어 성능 예측은 구동 환경과 밀접한 관계가 있으며, 하드웨어 소프트웨어 통합 설계를 위하여 최적 및 최악의 수행 시간 경계를 예측하는 것은 중요한 문제이다. 수행 시간 경계의 엄격한 예측은 저 비용의 프로세서를 사용할 수 있게 하며, 시스템 비용을 낮추는데 도움을 준다. 본 논문에서는 ARM용 내장형 시스템을 고려하여, loop문의 반복 횟수 경계 값과 프로그램의 추가적인 경로 호출 정보를 이용하여, 수행 시간의 경계를 최대한 실제 값에 접근하도록 예측하는 도구를 개발하였다. 개발된 도구는 현재 i960과 m68k 아키텍처를 지원하는 "Cinderella"라는 시간 분석 도구를 기본 도구로 활용하고 있다. ARM 프로세서를 지원하기 위하여 제어흐름과 디버깅 정보를 추출할 수 있는 ARM ELF 목적 파일 모듈을 추가하고, ARM 명령어 집합을 처리할 수 있는 모듈을 기존 도구에 추가하였다. 여러 가지 벤치마크 프로그램을 대상으로 실시한 실험 결과, 임의의 입력 데이타를 이용하고 수행 횟수를 고려한 ARMulator의 수행 시간이 구현된 도구에서의 정적인 수행 시간 예측 경계 값으로 들어오는 것을 확인할 수 있었다.

임베디드 소프트웨어의 단위 테스팅을 위한 로그 기반 테스팅 프레임워크 개발 (Development of Log-Based Testing Framework for Unit Testing of Embedded Software)

  • 류호동;정수용;이우진;김황수
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제4권9호
    • /
    • pp.419-424
    • /
    • 2015
  • 최근 사물인터넷 서비스가 점차 보편화되면서 사물인터넷에 사용되는 임베디드 시스템의 신뢰성 및 안전성 이슈가 부각되고 있다. 사물인터넷 시스템 등과 같은 임베디드 시스템 개발의 경우, 개발과정에서 소프트웨어 가상 수행환경을 구축하는 것이 쉽지 않아 단위테스트를 거의 수행하지 않고 있어 기능 신뢰성을 보장하기 어려운 실정이다. 이 연구에서는 실제 플랜트 환경에서 로그 기반 단위테스트 수행방법을 제안한다. 실제 시나리오 수행과정에서 함수별 수행경로를 고려하여 중복된 수행로그를 제거하여 저장되는 로그를 최소화하고 나중에 대표 수행경로만을 분석하여 단위테스트를 진행하는 방식이다. 제안된 방식은 시스템 테스트를 진행하는 과정에서 로그 기반 단위테스트를 효율적으로 수행할 수 있는 장점이 있다.

안드로이드 저장소 취약점을 이용한 악성 행위 분석 및 신뢰실행환경 기반의 방어 기법 (Analysis of Malicious Behavior Towards Android Storage Vulnerability and Defense Technique Based on Trusted Execution Environment)

  • 김민규;박정수;심현석;정수환
    • 정보보호학회논문지
    • /
    • 제31권1호
    • /
    • pp.73-81
    • /
    • 2021
  • 휴대폰 이용 시 앱 또는 웹 기반 어플리케이션을 이용하여 파일 다운로드 시, 다운로드 되는 파일들은 어플리케이션 마다 특정 디렉토리에 저장하도록 기본 경로가 설정되어 있다. 파일 관리자를 비롯하여 저장소로 접근이 필요한 여러 어플리케이션들은 여러 기능들과 서비스를 제공하기 위해, 저장소의 읽기 및 쓰기 권한을 요구한다. 이는 다운로드 경로에 직접 접근하여 사용자가 저장해놓은 수많은 중요 파일들에 직접 접근할 수 있게 됨을 의미한다. 본 논문에서는 이러한 다운로드 된 파일들의 저장 공간의 보안 취약점을 이용한 공격 가능성을 증명하기 위해 암호화를 위장한 파일 탈취 어플리케이션 기능을 개발하였다. 암호화를 진행한 파일은 암호화됨과 동시에 백그라운드에서는 해커에게 E-mail을 통해 전송된다. 개발한 어플리케이션을 악성 분석 엔진인 VirusTotal을 이용하여 검사한 결과, 74개의 엔진 모두에서 악성 앱으로 탐지되지 않았다. 최종적으로 본 논문에서는 이러한 저장소 취약점을 보완하기 위한 신뢰실행 환경 기반의 방어 기법과 알고리즘을 제안한다.

B2B 거래에서 공정성 인식, 브랜드자산 가치, 신뢰, 관계몰입과 장기지향성의 관계 (The Relationship among Justice Recognition, Brand Asset Value, Trust, Relation Commitment and Long-Term Orientation)

  • 임덕순
    • 유통과학연구
    • /
    • 제15권1호
    • /
    • pp.95-104
    • /
    • 2017
  • Purpose - This study focuses on long-term orientation that can lead long-term partnership. A long-term orientation needs a trust and relation commitment between company. So in this study, the researcher conducts a dependent variable as a justice recognition and brand asset value to research model to find out casual relationship among quoted factors. Research design, data, and methodology - The focus of this study was employees who work in a liquor distribution company to figure out factors that effect on long-term relationship in b2b transaction. The development of the research model is based on the literature of the preceding research analysis of justice recognition, brand asset value, trust, relation commitment and long-term orientation. This study have constructs that defined operationally by previous studies, research model design that to figuring casual relationships among the quoted factors. From 2016 Sep. 1st to Oct. 30th, a questionnaire survey was conducted targeting employees who work in liquor distribution company. 176 survey data were used for empirical analysis to prove the research hypotheses. Results - The main results of this study's empirical methodology were as follows. First, procedural justice and interactive justice has a positive significant effect on trust and relation commitment. Also brand image, brand awareness and perceived quality has a positive significant effect on trust and relation commitment. Second, trust and relation commitment has a positive significant effect on long-term orientation. Every hypothesis adopted as the researcher designed for empirical study. Conclusions - Based on empirical results, this study confirmed that trust and relation commitment has empirical relationship with long-term orientation. Based on the analysis, the researcher provided managerial implication by setting 2 way path for making long-term orientation with business company. First path is procedural justice to relation commitment. It contains that procedural justice recognised while business transaction execution, consideration intension and relation development will happen in b2b. Second path is perceived quality to trust. It contains that the perceived quality recognised while business transaction execution, trust will increase rapidly. So when a business company wants to make a partnership, they have to consider procedural justice and perceived quality to make a long-term relationship.