• Title/Summary/Keyword: 리플렉션

Search Result 16, Processing Time 0.03 seconds

Design and Implementation of a Tool for Breaking static analysis of Android API Based on Java Reflection (자바 리플렉션 기반의 안드로이드 API 정적 분석무력화 도구의 설계 및 구현)

  • Park, Heewan;Lee, Joo-Hyuk
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2014.01a
    • /
    • pp.99-102
    • /
    • 2014
  • 리플렉션은 자바 언어의 기능 중 하나로, 자바 프로그램을 실행해서 해당 프로그램을 조사하거나 내부의 동작 구조를 조작할 수 있다. 리플렉션을 사용하게 되면 자바 소스의 난독화 뿐만 아니라 정적 분석 도구의 API 호출 탐지를 방해하게 되어 분석 결과의 정확도를 떨어뜨리게 된다. 만약 이 특성을 악용해 악성 앱 제작자가 특정 API 메소드 호출을 은닉하는 목적으로 사용한다면 정적 분석에 의존하는 기존 분석 도구들이 API 메소드 호출을 탐지하기 어렵기 때문에 큰 위협이 될 수 있다. 본 연구에서는 안드로이드 환경에서 표본 어플리케이션에 직접 설계한 도구를 이용하여 API 메소드에 리플렉션을 적용하고, 원본 소스와 리플렉션 후 디컴파일된 소스를 비교하여 API 메소드 호출이 리플렉션을 통해서 은닉 가능함을 보여준다.

  • PDF

Design and Implementation of An Auto-Conversion Tool for Android API Obfuscation Based on Java Reflection. (자바 리플렉션 기반의 안드로이드 API 난독화를 위한 자동 변환 도구의 설계 및 구현)

  • Lee, Joo-Hyuk;Park, Heewan
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2014.04a
    • /
    • pp.487-490
    • /
    • 2014
  • 리플렉션은 자바 프로그램을 실행하여 객체 내부의 모든 요소를 조사하거나 호출 혹은 조작할 수 있는 자바 언어의 한 기능이다. 한 클래스 내부의 메소드에 리플렉션을 적용하여 호출하게 되면 String형의 메소드 이름으로 간접 호출하기에 정적 분석 도구의 API 호출 탐지를 방해하게 되어 분석결과의 정확도를 떨어뜨릴 수 있고, 또한 일반적인 호출보다 복잡한 절차를 거치게 되어 소스 자체의 난독화 효과를 갖게 된다. 또한 디컴파일러의 역공학 분석을 어렵게 만드는 장점도 있다. 이 특성을 이용한다면 안드로이드 환경에서 특정 API를 은닉하여 개인정보를 누출하도록 악용하거나 디컴파일러 이용을 방지하는 데 활용될 수 있다. 본 연구에서는 안드로이드 환경에서 직접 설계한 도구와 표본 앱을 이용하여 API 메소드에 리플렉션을 적용하고, 원본 소스와 리플렉션 후 디컴파일된 소스를 비교하여 API 호출이 리플렉션을 통해서 은닉 가능함을 보여준다.

Detecting suspicious branch statements through recording and analyzing execution logs of apps using reflection (리플렉션이 사용된 앱의 실행 로그 기록 및 분석을 통한 의심스러운 분기문 탐지)

  • Sumin Lee;Minho Park;Jiman Hong
    • Smart Media Journal
    • /
    • v.12 no.5
    • /
    • pp.58-64
    • /
    • 2023
  • In Logic Bomb, the conditions of branch statements that trigger malicious behavior cannot be detected in advance, making Android malicious app analysis difficult. Various studies have been conducted to detect potentially suspicious branch statements that can be logic bombs and triggers, but suspicious branch statements cannot be properly detected in apps that contain information determined at runtime, such as reflection. In this paper, we propose a tool that can detect suspicious branch statements even when reflection is used in Android apps. It works through recording app execution logs and analyzing the recorded log). The proposed tool can check the relationship between the called method and the branch statement by recording and analyzing the user-defined methods, Java APIs called and method information called through reflection, and branch information in the log while the Android app is running. Experimental results show that suspicious branch statements can be detected even in apps where reflection is used.

A Dynamic Web Service Orchestration and Invocation Scheme based on Aspect-Oriented Programming and Reflection (관점지향 프로그래밍 및 리플렉션 기반의 동적 웹 서비스 조합 및 실행 기법)

  • Lim, Eun-Cheon;Sim, Chun-Bo
    • Journal of the Korea Society of Computer and Information
    • /
    • v.14 no.9
    • /
    • pp.1-10
    • /
    • 2009
  • The field of the web service orchestration introduced to generate a valuable service by reusing single services. Recently, it suggests rule-based searching and composition by the AI (Artificial Intelligence) instead of simple searching or orchestration based on the IOPE(Input, Output, Precondition, Effect) to implement the Semantic web as the web service of the next generation. It introduce a AOP programming paradigm from existing object-oriented programming paradigm for more efficient modularization of software. In this paper, we design a dynamic web service orchestration and invocation scheme applying Aspect-Oriented Programming (AOP) and Reflection for Semantic web. The proposed scheme makes use of the Reflection technique to gather dynamically meta data and generates byte code by AOP to compose dynamically web services. As well as, our scheme shows how to execute composed web services through dynamic proxy objects generated by the Reflection. For performance evaluation of the proposed scheme, we experiment on search performance of composed web services with respect to business logic layer and user view layer.

A study on Unreal 4 Effective Lighting (언리얼4의 효과적인 라이팅 세팅에 관한 연구)

  • Bang, Kyung-Un;Bang, Jung-Won
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2018.01a
    • /
    • pp.159-162
    • /
    • 2018
  • 본 논문에서는 언리얼 엔진4에서 제공하는 강력한 라이팅 세팅들에 대해서 분석하고, 월드 라이트 매스의 옵션, 라이트매스 임포턴스 볼륨, 리플렉션 캡쳐 등을 사용해 효과적으로 사실적인 라이팅을 얻어내는 방법에 대하여 연구하였다. 월드 라이트 매스의 옵션들은 월드 전역의 간접광, 간접 그림자 등에 영향을 미치며, 라이트매스 임포턴스 볼륨, 리플렉션 캡처를 통해 라이팅의 중요도와 세밀한 반사를 정의함으로서 베이크 타임을 현저하게 감소시키고 사실적인 결과를 얻는데 연구 목적이 있다. 전역적인 라이팅 세팅이 세밀하고 사실적인 라이팅을 얻어내는데에 얼마나 효과적인지를 게임 구현을 통해 보여주었다.

  • PDF

An Android API Obfuscation Tool using Reflection and String Encryption (리플렉션과 문자열 암호화를 이용한 안드로이드 API 난독화 도구)

  • Lee, Joohyuk;Park, Heewan
    • KIPS Transactions on Computer and Communication Systems
    • /
    • v.4 no.1
    • /
    • pp.23-30
    • /
    • 2015
  • Reflection is a feature of the Java programming language that can examine and manipulate components of program itself. If you use the reflection, you can get an obfuscation effect of Java source because it converts sources into complicated structures. However, when using it, strings of components name of program are exposed. Therefore, it cannot prevent static analysis. In this paper, we presents a method and a tool of interfere with static analysis using reflection. And in this case, exposed strings are encoded using Vigen$\acute{e}$re cipher. Experimental results show that this tool is effective in increasing the overall complexity of the source code. Also the tool provides two types decryption method based on server and local. It can be selected based on the importance of the API because it affects the execution speed of the application.

Implementation of a Mutation Tool for Java Programs (자바 프로그램을 위한 뮤테이션 도구 구현)

  • 이효정;마유승;김상운;권용래
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.10d
    • /
    • pp.91-93
    • /
    • 2002
  • 컴퓨터 성능의 향상으로 고비용의 수행을 요하는 뮤테이션 기법의 적용 가능성이 커지면서 뮤테이션 기법에 대한 연구가 다시 활성화되고 있다. 뮤테이션 기법에 대한 연구는 순차 프로그램에 대해서는 완성 단계인 것에 반해, 객체지향 프로그램에 대한 연구는 역사가 짧고 아직 초기 단계에 머무르고 있다. 본 논문에서는 현존하는 자바 뮤테이션 오퍼레이터를 모두 지원하는 뮤테이션 분석 도구인 MuJava/SC를 구현하고 이의 성능 개선 방안에 대해서 논의한다. MuJava/SC 구현에는 리플렉션 시스템을 사용하였는데 그 중에서 구조적 리플렉션이 객체지항 뮤데이션 도구의 구현에 적절히 이용됨을 보여주었다. MuJava/SC의 성능을 개선한다면 객체지향 프로그램의 뮤테이션 분석에 유용하게 사용될 수 있을 것이다.

  • PDF

UQoS Management Middleware Framework for Internet-Based Multimedia Application (인터넷 기반 멀티미디어 응용을 위한 UQoS 관리 미들웨어 프레임워크)

  • Yoon, Eun-Young;Ghim, Soo-Joong;Yoon, Yong-Ik;Kim, Sung-Hoon;Chang, Chul-Soo
    • The KIPS Transactions:PartB
    • /
    • v.9B no.5
    • /
    • pp.549-554
    • /
    • 2002
  • This paper proposes a UQoSM (User Qualify of Service Middleware) framework for multimedia application systems. UQoSM system is extended the existing event service model added to the event monitoring, reflective event filtering and event dispatcher for supporting multimedia application systems. Especially, this paper is concentrated on providing suitable reflective event filtering function for multimedia application service system in order to meet various user requirements under inter-based environment. It means this system provides high QoS to users. In addition, it results in decreasing network traffic as unnecessary event information is filtered from network.

Dynamic Configuration using Partial Functional Reflection (부분 기능의 리플렉션을 이용한 동적 설정)

  • Lee, Ji-Hyun;Park, Young-Sik
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06b
    • /
    • pp.208-210
    • /
    • 2012
  • 웹 어플리케이션 서버를 통해 동작하는 웹 어플리케이션에 대해 기능 일부를 수정하고자 할 때, 런타임 변경이 가능하고, 어플리케이션 서버의 재시작이 필요 없는 방법에 대해 설명한다. 이러한 방법은 웹 어플리케이션의 동적 설정을 위해 사용할 수 있으며, 변경된 내용을 반영하는데 1) 서버로 어플리케이션 전체를 재배포할 필요가 없으며, 2) 변경될 부분을 부분 코드에 국한시켜 웹 어플리케이션에서 자주 발생되는 SQL 기술문의 변경이나 비지니스 로직에 대한 작은 변경을 간편하게 수정하고 실행시킬 수 있다.

Mobile Agents Framework for Adaptability Support based on Meta Level (적응성 지원을 위한 메타 레벨 기반의 이동 에이전트 프레임워크)

  • Ghim, Soo-Joong;Yoon, Yong-Ik
    • The KIPS Transactions:PartA
    • /
    • v.10A no.6
    • /
    • pp.651-656
    • /
    • 2003
  • Emerging technologies, such as multimedia and mobile computing, require that middleware platforms can support high adaptability in order to provide more flexible services in heterogeneous environments. To support high quality of service in distributed wired/wireless environments, it will be necessary for applications and middleware to be aware of changes in users requirements as well as environmental conditions, also to be able to adapt their behaviour as such changes. According to the needs of adaptability supporting in middleware, we structure a component-based, mobile agents framework in base level and meta level by using reflection. We propose concepts of meta agents and meta-service agents that are able to reflect changes made by mobile agents to the system. At the meta level of our framework, meta agents monitor execution of mobile agents and it is possible to provide dynamic adaptation of users requirements, deployment of application services and service customization with meta agents and meta-service agents.