• 제목/요약/키워드: 소스 코드 도용

검색결과 15건 처리시간 0.019초

안드로이드 리소스 도용 방지를 위한 난독화 도구의 설계 및 구현 (Design and Implementation of An Obfuscation Tool for Preventing the Theft of Android Resources)

  • 박희완;김흥수
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2014년도 제49차 동계학술대회논문집 22권1호
    • /
    • pp.93-97
    • /
    • 2014
  • 소프트웨어는 대부분 바이너리 형태로 배포되기 때문에 역공학 분석이 쉽지 않다. 그러나 안드로이드는 자바를 기반으로 한다. 자바는 클래스 파일의 형태로 배포되는데 클래스 파일은 자바 소스 프로그램의 정보를 대부분 유지하고 있기 때문에 역공학 기술을 적용하기가 타 언어에 비해 쉽다. 이 문제에 대처하기 위해서 프로그램의 기능을 그대로 유지하고, 프로그램을 분석하기 어려운 형태로 변환하는 다양한 난독화 방법이 제안되었다. 안드로이드 환경에서는 안드로이드 SDK와 함께 배포되는 난독화 도구인 프로가드(Proguard)가 가장 널리 사용된다. 그러나 프로가드는 문자열 난독화를 기능을 제공하지 않는다. 본 논문에서는 프로가드의 한계를 보완할 수 있는 문자열 난독화 기법을 제안하고 구현하였다. 본 논문에서 제안하는 문자열 난독화 기법을 먼저 소스 코드에 적용하고, 이후 프로가드의 난독화 기능을 추가로 사용한다면 안드로이드 프로그램을 역공학 분석으로부터 보호하는 효과적인 방법으로 사용될 수 있을 것이다.

  • PDF

메소드 참조 빈도와 매니페스트 정보를 이용한 안드로이드 애플리케이션들의 유사도 측정 (Measuring Similarity of Android Applications Using Method Reference Frequency and Manifest Information)

  • 김규식;마수드;조성제;김성백
    • 한국차세대컴퓨팅학회논문지
    • /
    • 제13권3호
    • /
    • pp.15-25
    • /
    • 2017
  • 소프트웨어 가치와 중요성이 커짐에 따라 소프트웨어의 도용이 증가하고 있어 이에 대한 대책으로 소프트웨어 도용을 정확히 탐지하는 방안이 필요하다. 특히 안드로이드 앱의 경우, 소프트웨어 도용이 상대적으로 용이한 반면 안드로이드 마켓 상에서는 불법 앱에 대한 적절한 검수를 수행하지 않고 있다. 이에 본 논문에서는 소프트웨어 도용을 탐지하기 위해 실행파일 수준에서 안드로이드 앱 간의 유사도를 효과적으로 측정하는 기법을 제안한다. 제안 기법은 유사도 측정을 위한 주요 특징정보로, 안드로이드 앱의 실행파일을 정적으로 분석하여 메소드 참조 빈도와 매니페스트 정보를 추출한다. 각 앱을 이 두 가지 특징정보들의 n-차원 벡터로 표시하고, 코사인 유사도를 사용하여 두 앱의 유사도를 측정한다. 제안 기법을 검증하기 위해 대표적인 소스코드 기반의 유사도 측정 기법과 본 논문에서 제안한 기법을 비교 평가한다. 소스파일과 실행파일이 함께 주어진 안드로이드 앱을 대상으로 진행한 실험에서, 본 논문에서 제안한 실행파일 수준의 유사도 측정 결과와 기존의 잘 알려진 소스파일 수준의 유사도 측정 결과가 동등한 수준으로 나왔다.

함수 수준 특징정보 기반의 오픈소스 소프트웨어 모듈 탐지 (Detection of an Open-Source Software Module based on Function-level Features)

  • 김동진;조성제
    • 정보과학회 논문지
    • /
    • 제42권6호
    • /
    • pp.713-722
    • /
    • 2015
  • OSS(Open-Source Software)의 사용 증가와 함께 라이선스 위반, 취약한 소스코드 재사용 등에 의한 분쟁 및 피해가 빈번해지고 있다. 이에, 실행파일(바이너리) 수준에서 프로그램에 OSS 모듈이 포함되었는지 여부를 확인하는 기술이 필요해졌다. 본 논문에서는 바이너리에서 함수 수준의 특징정보를 사용하여 OSS 모듈을 탐지하는 기법을 제안한다. 기존 소프트웨어 특징정보(버스마크) 기반 도용 탐지 기법들은 프로그램 전체 간 유사성을 비교하기 때문에 프로그램의 일부로 포함된 OSS 모듈들을 탐지하는데 부적합하다. 본 논문에서는, 함수 수준의 실행명령어, 제어 흐름 그래프(Control Flow Graph)와 개선된 함수 수준 구조적 특징정보를 추출하고 유사성을 비교하여 OSS 모듈의 임의 사용 여부를 탐지한다. 제안기법의 효율성과 각 특징정보들의 OSS 탐지 성능을 평가하기 위해, 특징정보량, OSS 모듈 탐지 시간 및 정확도, 컴파일러 최적화에 대한 강인성을 실험하였다.

API 기반 동적 버스마크를 이용한 윈도우용 소프트웨어의 효율적인 유사도 측정 기법 (Efficient Similarity Measurement Technique of Windows Software using Dynamic Birthmark based on API)

  • 박대신;지현호;박영수;홍지만
    • 스마트미디어저널
    • /
    • 제4권2호
    • /
    • pp.34-45
    • /
    • 2015
  • 윈도우는 국내에서 가장 많이 사용되는 운영체제이기 때문에 윈도우용 소프트웨어를 대상으로 불법 복제가 많이 이루어지고 있고 불법 복제로 인해 소프트웨어 저작권이 침해될 수 있다. 이를 보호하기 위해서 저작권 보호 방법 중 하나인 소프트웨어 버스마크를 사용한다. 소프트웨어 버스마크는 소프트웨어로부터 특정 정보들을 추출하여 소프트웨어간 도용 여부를 판별할 수 있는 기술이며 대상 소프트웨어로 부터 특정 정보를 추출하는 방법에 따라 정적 버스마크와 동적 버스마크로 구별된다. 정적 버스마크와 동적 버스마크는 서로 장단점을 가지고 있지만 본 논문에서는 API 기반 동적 버스마크를 이용한 유사도 측정 기법을 제안하고, 동적 버스마크의 추출 과정을 설명한다. 또한 실험을 통해 제안하는 동적 버스마크의 유사도 측정 기법이 신뢰성과 강인성을 만족하는 것을 확인할 수 있었으며 기존 동적 버스마크의 유사도 측정 기법보다 제안하는 동적 버스마크의 성능이 향상 된 것을 확인할 수 있었다.

안드로이드 콘텐츠 저작권 침해 방지를 위한 서버 기반 리소스 난독화 기법의 설계 및 구현 (Design and Implementation of Server-based Resource Obfuscation Techniques for Preventing Copyrights Infringement to Android Contents)

  • 박희완
    • 한국콘텐츠학회논문지
    • /
    • 제16권5호
    • /
    • pp.13-20
    • /
    • 2016
  • 소프트웨어는 대부분 바이너리 파일 포맷으로 배포되기 때문에 역공학 분석이 쉽지 않다. 그러나 안드로이드는 자바를 기반으로 하며 가상머신 위에서 동작한다. 따라서 안드로이드 역시 자바와 유사하게 역공학 도구에 의해서 쉽게 분석될 수 있다. 이 문제를 극복하기 위해서 다양한 난독화 기법이 제안되었다. 안드로이드 환경에서는 안드로이드 SDK에 포함되어 배포되는 난독화 도구인 프로가드(Proguard)가 가장 널리 사용된다. 프로가드는 자바 소스 코드를 역공학 분석으로부터 보호할 수 있다. 그러나 이미지, 사운드, 데이터베이스와 같은 리소스를 보호하는 기능은 가지고 있지 않다. 본 논문에서는 안드로이드 앱의 리소스를 보호할 수 있는 리소스 난독화 기법을 제안하고 구현하였다. 본 논문에서 제안하는 리소스 난독화 기법을 적용하면 효과적으로 리소스 도용을 예방할 수 있을 것으로 기대한다.