• Title/Summary/Keyword: 난독화

Search Result 103, Processing Time 0.037 seconds

An Efficient Android Code Obfuscate (효율적인 안드로이드 코드 난독화 기법)

  • Jung, Hyo-Ran;Lee, Su-Hyun
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2014.07a
    • /
    • pp.57-59
    • /
    • 2014
  • 공개 플랫폼을 지향하는 안드로이드는 손쉽게 안드로이드 설치파일(APK)를 얻을 수 있어 디컴파일 하기 쉽다. 보안에 민감한 금융 앱이나 웹서버를 이용하여 데이터를 주고받는 앱일 경우 역공학을 통해 얻는 정보가 매우 위험할 수 있다. 이러한 문제는 최근에 사회적 큰 이슈가 되기 때문에 안드로이드 코드 보안에 유의해야 한다. 이 논문에서는 안드로이드 코드 난독화의 동향과 안드로이드에서 제공하는 프로가드의 기술에 대해서 알아보고 프로가드의 한계에 대해서 파악한 후 향후 안드로이드 코드 난독화 개선 방법에 대해서 알아본다.

  • PDF

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

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

  • PDF

Host level of obfuscated malicious script corresponding technology (호스트레벨의 난독화 된 악성 스크립트 대응 기술 연구)

  • Oh, Sang-Hwan;Jung, Jong-Hun;Kim, Hwan-Kuk
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2015.10a
    • /
    • pp.658-660
    • /
    • 2015
  • W3C가 발표한 차세대 웹 표준 HTML5의 등장으로 자바스크립트의 기능이 대폭 향상 되었다. 별도의 플러그인 설치 없이 자바스크립트만으로 미디어 재생, 3D 그래픽 처리, 웹 소켓 통신 등을 제공함으로서 Active X와 같은 비표준 기술을 대체할 만큼 강력한 기능을 제공하고 있다. 이러한 흐름에 맞추어 HTML5 기능의 핵심이 되는 자바스크립트를 악용한 위험성을 인지하고 이와 관련된 연구도 활발히 이루어지고 있다. 하지만, 현재의 악성 스크립트를 탐지하는 기술은 대부분 시그니처를 기반으로 하는 패턴 매치이기 때문에 난독화 된 악성 스크립트를 탐지하기에는 많은 한계가 있다. 따라서 본 논문에서는 이런 한계를 극복하기 위해 호스트레벨에서 난독화 된 악성 스크립트를 탐지 및 실행을 방지할 수 있는 난독화 된 악성 스크립트 대응 기술을 제안한다.

Implementation of the Automated De-Obfuscation Tool to Restore Working Executable (실행 파일 형태로 복원하기 위한 Themida 자동 역난독화 도구 구현)

  • Kang, You-jin;Park, Moon Chan;Lee, Dong Hoon
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.27 no.4
    • /
    • pp.785-802
    • /
    • 2017
  • As cyber threats using malicious code continue to increase, many security and vaccine companies are putting a lot of effort into analysis and detection of malicious codes. However, obfuscation techniques that make software analysis more difficult are applied to malicious codes, making it difficult to respond quickly to malicious codes. In particular, commercial obfuscation tools can quickly and easily generate new variants of malicious codes so that malicious code analysts can not respond to them. In order for analysts to quickly analyze the actual malicious behavior of the new variants, reverse obfuscation(=de-obfuscation) is needed to disable obfuscation. In this paper, general analysis methodology is proposed to de-obfuscate the software used by a commercial obfuscation tool, Themida. First, We describe operation principle of Themida by analyzing obfuscated executable file using Themida. Next, We extract original code and data information of executable from obfuscated executable using Pintool, DBI(Dynamic Binary Instrumentation) framework, and explain the implementation results of automated analysis tool which can deobfuscate to original executable using the extracted original code and data information. Finally, We evaluate the performance of our automated analysis tool by comparing the original executable with the de-obfuscated executable.

Analysis of Detection Ability Impact of Clang Static Analysis Tool by Source Code Obfuscation Technique (소스 코드 난독화 기법에 의한 Clang 정적 분석 도구의 성능 영향 분석)

  • Jin, Hongjoo;Park, Moon Chan;Lee, Dong Hoon
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.28 no.3
    • /
    • pp.605-615
    • /
    • 2018
  • Due to the rapid growth of the Internet of Things market, the use of the C/C++ language, which is the most widely used language in embedded systems, is also increasing. To improve the quality of code in the C/C++ language and reduce development costs, it is better to use static analysis, a software verification technique that can be performed in the first half of the software development life cycle. Many programs use static analysis to verify software safety and many static analysis tools are being used and studied. In this paper, we use Clang static analysis tool to check security weakness detection performance of verified test code. In addition, we compared the static analysis results of the test codes applied with the source obfuscation techniques, layout obfuscation, data obfuscation, and control flow obfuscation techniques, and the static analysis results of the original test codes, Analyze the detection ability impact of the Clang static analysis tool.

Design and implementation of Android obfuscation technique using layout file transformation (레이아웃 파일 변환을 이용한 안드로이드 난독화 기법의 설계 및 구현)

  • Park, Heewan
    • Journal of the Korea Convergence Society
    • /
    • v.11 no.11
    • /
    • pp.1-7
    • /
    • 2020
  • Android apps are mostly distributed as an apk files, and when the apk file is uncompressed, resource files such as xml files, images, and sounds related to app design can be extracted. If the resources of banking or finance-related apps are stolen and fake apps are distributed, personal information could be stolen or financial fraud may occur. Therefore, it is necessary to make it difficult to steal the design as well as the code when distributing the app. In this paper, we implemented a tool to convert the xml file into Java code and obfuscate using the Proguard, and evaluated the execution performance. If the layout obfuscation technique proposed in this paper is used, it is expected that the app operation performance can be improved and the illegal copying damage caused by the theft of the screen design can be prevented.

An Enhanced method for detecting obfuscated Javascript Malware using automated Deobfuscation (난독화된 자바스크립트의 자동 복호화를 통한 악성코드의 효율적인 탐지 방안 연구)

  • Ji, Sun-Ho;Kim, Huy-Kang
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.22 no.4
    • /
    • pp.869-882
    • /
    • 2012
  • With the growth of Web services and the development of web exploit toolkits, web-based malware has increased dramatically. Using Javascript Obfuscation, recent web-based malware hide a malicious URL and the exploit code. Thus, pattern matching for network intrusion detection systems has difficulty of detecting malware. Though various methods have proposed to detect Javascript malware on a users' web browser, the overall detection is needed to counter advanced attacks such as APTs(Advanced Persistent Treats), aimed at penetration into a certain an organization's intranet. To overcome the limitation of previous pattern matching for network intrusion detection systems, a novel deobfuscating method to handle obfuscated Javascript is needed. In this paper, we propose a framework for effective hidden malware detection through an automated deobfuscation regardless of advanced obfuscation techniques with overriding JavaScript functions and a separate JavaScript interpreter through to improve jsunpack-n.

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

  • Lee, Kyong-Ho;Park, Hee-Wan
    • Journal of the Korea Society of Computer and Information
    • /
    • v.18 no.10
    • /
    • pp.129-139
    • /
    • 2013
  • Java bytecodes are executed not on target machine but on the Java virtual machines. Since this bytecodes use a higher level representation than binary code, it is possible to decompile most bytecodes back to Java source. Obfuscation is the technique of obscuring code and it makes program difficult to understand. However, most of the obfuscation techniques make the code size and the performance of obfuscated program bigger and slower than original program. In this paper, we proposed an effective Java obfuscation techniques using assignment statements merging that make the source program difficult to understand. The basic approach is to merge assignments statements to append side effects of statement. An additional benefit is that the size of the bytecode is reduced.

Effective Technique for Inlining Function Calls in Code Obfuscation Using Genetic Algorithm (유전 알고리즘을 이용한 코드 난독화에서의 효율적 함수 호출 인라인 기법)

  • Kim, Jung-Il;Lee, Eun-Joo
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2010.06b
    • /
    • pp.53-58
    • /
    • 2010
  • 코드 난독화 기법 중의 하나인 인라인(Inline)은 코드의 복사를 통하여 함수의 호출 구조를 파괴하여서 코드의 복원과 이해를 어렵게 만든다. 하지만 적절한 전략 없이 인라인 기법을 적용하게 되면, 프로그램 성능이 저하되며 난독화의 결과도 기대 이하일 가능성이 존재한다. 따라서 지나친 성능의 저하를 막으면서 결과적으로 코드의 복원과 이해를 최대한 어렵게 하기 위한 인라인 수행 전략이 필요하다. 이를 위하여 본 논문에서는 정적 함수 호출 그래프를 기반으로 인라인의 적용 여부를 유전 알고리즘을 사용하여 결정하도록 한다. 그리고 인라인 전후의 효용을 보여주기 위하여 정보이론 및 제어 흐름의 복잡도에 기반하여 전체 프로그램의 복잡도를 정의하였다. 마지막으로 해당 기법의 효용을 실험을 통해 보였다.

  • PDF

Obfuscated malware detection Approach using Dynamic and Static Analysis Data and Deep Learning (동적-정적 분석 데이터와 딥러닝을 이용한 난독화된 악성코드 탐지 기법)

  • Hae-Soo Kim;Mi-Hui Kim
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2023.05a
    • /
    • pp.131-133
    • /
    • 2023
  • 악성코드를 유포할 때 프로그램 코드만으로 악성코드의 유무를 확인할 수 없도록 조치하여 분석을 지연시키는 방식을 사용하는 방향으로 발전하고 있다. 악성코드를 실행하지 않고 코드와 구조만으로 분석하는 정적 분석으로는 악성코드를 판별할 수 없어 코드를 직접 실행해 분석하는 동적 분석을 이용해야 한다. 본 논문에서는 난독화된 비정상적인 코드를 직접 실행한 동적 분석데이터와 일반적이지 않은 섹션들의 정보를 추출한 정적 분석데이터를 이용해 동적-정적 분석 데이터와 딥러닝 모델을 통해 난독화 및 패킹된 악성코드를 탐지하는 기법을 제안한다.