• 제목/요약/키워드: Decompile

검색결과 8건 처리시간 0.018초

Android APK 파일 Decompile 및 난독화에 관한 연구 (A Study on Android APK file Decompile and Code Obfuscation)

  • 김상준;정우득
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2015년도 춘계학술발표대회
    • /
    • pp.269-272
    • /
    • 2015
  • 스마트 기기의 사용량 증가에 따라 애플리케이션의 제작 및 배포가 활발히 이루어 지고 있다. 따라서, 애플리케이션 개발에 관한 도덕적 문제, 개발자의 재산권 보호는 매우 중요한 문제이다. 하지만 배포된 애플리케이션 파일(APK)를 디컴파일(Decompile) 및 분석을 통해 애플리케이션의 소스 코드를 얻어낼 수 있다. 특히 디컴파일 기법이 악의적인 의도로 사용될 경우에는 애플리케이션 수정, 재배포 등 위변조로 인해 스마트 기기 사용자의 정보 유출, 금전적 피해 등의 심각한 문제를 야기할 수 있다. 이러한 결과를 예방하기 위한 노력이 요구되고 있다. 본 논문에서는 디컴파일 과정을 통해 애플리케이션의 정보를 수집하고 애플리케이션의 위변조를 직접 수행함에 따라, 현재 사용 중인 예방책의 취약성에 대해 언급한다.

자바 애플릿 역컴파일 방지책 (Restrict Approach for JAVA Applet Decompile)

  • 이원형;최성
    • 한국산학기술학회:학술대회논문집
    • /
    • 한국산학기술학회 2000년도 추계학술대회
    • /
    • pp.302-306
    • /
    • 2000
  • 우리는 하루에도 수많은 웹사이트를 돌아다니며 다양한 정보를 얻고 있다. 자신의 정보가 항상 노출될 수 있다고 불안감은 떨쳐 버릴 수 없다. 인터넷이 급속도로 확산되면서 개인정보가 쉽게 유출되고 이로 인한 피해가 속출하고 있다. 애플릿과 액티브X같은 클라이언트(Client)에서 실행되는 프로그램이 역컴파일(Decompile)되면서 소스가 누출되고 나아가 서버측도 위험하게 되었다. 본 논문은 자바 애플릿을 이용한 서버측 해킹사례와 이를 막을 수 있는 든든한 방어책을 제시하였다. 그리고 개인의 소중한 정보를 스스로 지진 수 있는 보안 대책 및 프로그래밍에 대하여 연구하였다.

모바일 앱 사용행태 분석을 위한 역컴파일 및 역어셈블 데이터 로깅 (Disassembly and De-Compilation Based Data Logging for Mobile App Usage Analysis)

  • 김명준;남양희
    • Journal of Information Technology Applications and Management
    • /
    • 제21권4호
    • /
    • pp.127-139
    • /
    • 2014
  • This study presents a logging method to trace the usage patterns of existing smartphone apps. The actual smartphone app itself, not a specially developed similar app with usage logging, would be used best for the experiment of observing the usage patterns. For this purpose, we used a method of injecting logging codes into existing smartphone app. Using this method, we conducted an experiment to trace usage patterns of a commercial IPTV app, and found that the method is very useful for acquiring detail usage log without influencing participants.

C++ 언어를 위한 데이터 obfuscation 도구 구현 및 테스트 (An Implementation of Data Obfuscation Tool for C++ Language)

  • 조병민;노진욱;오현수;장혜영;정민규;이승원;박용수;우제학;조성제
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2006년도 한국컴퓨터종합학술대회 논문집 Vol.33 No.1 (C)
    • /
    • pp.292-294
    • /
    • 2006
  • 상용 응용 소프트웨어들은 주요 정보 및 알고리즘들을 내포하고 있어, 악의적인 역공학자들에 의해 특정 소프트웨어를 decompile하여 자료구조 및 제어 흐름을 분석하려는 공격이 이루어 지고 있다. 본 논문에서는 MS 윈도우 XP 상의 Visual C++ (MFC 포함) 프로그램을 역공학 공격으로부터 보호하기 위한 데이터 obfuscator를 구현하고 그 성능을 평가한다. 구현한 obfuscator는 C++ 소스코드를 입력 받아 3가지의 데이터 obfuscation 알고리즘을 적용한 후, 이를 다시 소스코드로 재생성하는 도구로 큰 성능저하 없이 구현 가능함을 알 수 있다.

  • PDF

메소드 분산을 통한 자바 프로그램 난독화 기법 (A obfuscating technique for Java program by distributing methods)

  • 최석우;박회완;한태숙
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 가을 학술발표논문집 Vol.30 No.2 (1)
    • /
    • pp.238-240
    • /
    • 2003
  • 자바 프로그램은 자바 바이트코드로 컴파일되어 배포된다. 자바 바이트코드는 심볼릭 정보를 그대로 유지하고 있기 때문에 역컴파일(decompile) 도구에 의해서 쉽게 소스 파일이 노출될 수 있다는 취약성이 있다. 따라서 자바 역컴파일에 대한 위험을 방지 혹은 최소화 할 수 있는 방법에 대한 연구가 필요하다. 본 논문에서는 이러한 보안 취약성 및 문제점을 인식하고 거기에 대처할 수 있는 대응 기법에 대한 연구로서 메소드 분산을 이용한 프로그램 난독화 기법을 제시하려고 한다. 본 논문에 제안된 난독화 기법을 사용하면 역컴파일에 성공했다 하더라도 역컴파일된 소스 프로그램을 쉽게 이해하거나 재활용하기 어렵게 만들 수 있으며 다른 난독화 기법을 적용할 수 있는 범위를 넓혀 줄 수 있다.

  • PDF

안드로이드 뱅킹 어플리케이션 내 중간언어 분석을 통한 보안 검사 지점 우회 취약점 연구 (A Study on the Vulnerability of Using Intermediate Language in Android: Bypassing Security Check Point in Android-Based Banking Applications)

  • 이우진;이경호
    • 정보보호학회논문지
    • /
    • 제27권3호
    • /
    • pp.549-562
    • /
    • 2017
  • 최근 모바일뱅킹 사용의 일상화와 더불어 은행권에서 모바일뱅킹의 사용 비중이 더욱 커져감에 따라 보안 위협도 증가하고 있다. 이에 국내 금융권에서는 뱅킹 어플리케이션 내에 보안 솔루션들을 도입하고, 상시 실행되는지 여부를 확인하기 위하여 보안 검사 지점들을 설정하여 어플리케이션의 안정성을 보장하고 있다. 본 논문에서는 국내 주요 은행들의 안드로이드 뱅킹 어플리케이션 디컴파일(decompile)시 추출되는 중간언어를 정적 및 동적 분석하여 보안 검사 지점들을 우회하는 모바일 백신 프로그램 미작동의 취약점을 보인다. 또한, 결과를 통해 이를 악용할 수 있는 공격을 알아보고 대응 방안을 제시한다.

안드로이드 정상 및 악성 앱 판별을 위한 최적합 머신러닝 기법 (Optimal Machine Learning Model for Detecting Normal and Malicious Android Apps)

  • 이형우;이한성
    • 사물인터넷융복합논문지
    • /
    • 제6권2호
    • /
    • pp.1-10
    • /
    • 2020
  • 안드로이드 플랫폼 기반 모바일 애플리케이션은 디컴파일이 간단하여 정상 앱과 유사한 악성 애플리케이션을 만들 수 있으며, 제작된 악성 앱은 안드로이드 서드 파티(third party) 앱 스토어를 통해 배포되고 있다. 이 경우 악성 애플리케이션은 기기 내 개인정보 유출, 프리미엄 SMS 전송, 위치정보와 통화 기록 유출 등의 문제를 유발한다. 따라서 최근 이슈가 되고 있는 머신러닝 기법 중에서 최적의 성능을 제공하는 모델을 선별하여 악성 안드로이드 앱을 자동으로 판별할 수 있는 기법을 제공할 필요가 있다. 이에 본 논문에서는 공인 실험 데이터셋을 이용하여 안드로이드 앱의 특징정보를 선별한 후에 총 네 가지의 성능 평가 실험을 통해 안드로이드 악성 앱 판별에 최적의 성능을 제공하는 머신러닝 모델을 제시하였다.

대입문 병합을 이용한 효율적인 자바 난독화 기법 (An Effective Java Obfuscation Technique Using Assignment Statements Merging)

  • 이경호;박희완
    • 한국컴퓨터정보학회논문지
    • /
    • 제18권10호
    • /
    • pp.129-139
    • /
    • 2013
  • 자바 바이트코드는 타겟 머신이 아닌 자바 가상머신 상에서 동작된다. 이러한 자바 바이트코드는 바이너리 코드보다 고수준 표현을 사용하고 있어서 대부분의 자바 바이트 코드는 다시 자바 소스 파일로 바꿀 수도 있다. 난독화란 기본적으로 코드를 이해하기 어렵게 만드는 기술을 의미한다. 자바 코드의 보호를 위해서는 난독화가 사용될 수 있다. 그러나 프로그램을 복잡하게 만드는 난독화 기법은 대부분 프로그램의 크기를 증가시키고 실행 속도 또한 느려지게 만드는 원인이 된다. 본 논문에서는 대입문 병합 기법을 이용한 효율적인 자바 난독화 기법을 새롭게 제안한다. 대입문 병합 기법이 적용되면 대입문에 부작용(side effects)이 추가되어 대입문을 이해하기 어렵게 된다. 추가적으로 바이트코드의 크기가 줄어드는 장점도 있다.