• 제목/요약/키워드: Runtime protection

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

상용 안드로이드 앱 보호 서비스 분석을 통한 강건한 앱 보호 구조 연구 (Study on Structure for Robust App Protection through Commercial Android App Hardening Service)

  • 하동수;오희국
    • 정보보호학회논문지
    • /
    • 제28권5호
    • /
    • pp.1209-1223
    • /
    • 2018
  • 안드로이드 앱은 바이트코드로 구성되어 있어 역공학으로부터 취약하며, 이를 보완하기 위해 앱을 강건하게 재구성해주는 보호 서비스들이 등장하였다. 암호 알고리즘과 다르게, 이런 보호 서비스의 강건함은 보호 방식을 감추는 것에 상당 부분 의존하고 있다. 그러므로 보호 서비스의 파훼 기법은 다양하더라도 보호 방식에 대한 체계적인 논의가 거의 없으며, 개발자의 직감에 따라 구현되고 있다. 정적 또는 동적분석을 방해하는 기술의 간단한 배치보다는, 강건한 보안 체인을 위한 체계적인 보호 구조에 대한 논의가 필요하다. 본 논문에서는 이를 위해, 대표 상용 안드로이드 앱 보호 서비스인 방클(bangcle)을 분석하여 보호 구조와 취약한 요소를 살펴본다. 그리고 이를 통해 강건한 구조를 위해 요구되는 사항과 보호 구조 원칙을 제안한다.

패킹된 안드로이드 어플리케이션의 안전한 실행을 위한 실행 환경 무결성 검증 기법 (A Method Verifying Execution Environment Integrity for Secure Execution of Packed Android Application)

  • 하동수;오희국
    • 정보보호학회논문지
    • /
    • 제28권6호
    • /
    • pp.1553-1561
    • /
    • 2018
  • 안드로이드의 소스 코드는 공개되어 있어 목적에 따라 수정이 용이하다. 최근 이런 점을 악용하여 런타임 보호 기법을 우회하는 원본 실행 코드 탈취 기법이 등장하였다. 불행하게도, 안드로이드 디바이스는 파편화가 심해 시스템의 무결성을 검증하기가 어렵다. 이 문제를 해결하기 위해, 본 논문에서는 어플리케이션 권한의 특징을 이용하여 간접적으로 실행 환경의 무결성을 검증하는 기법을 제안한다. 우리의 기법은 원본 실행 코드를 실행하기 전 더미 실행 코드를 로드 및 실행하여 비정상적인 이벤트를 모니터링하며, 이를 통해 무결성 여부를 판단한다. 우리의 기법은 현재까지 공개된 우회 기법을 탐지할 수 있으며, 평균적으로 약 2초 내외의 성능 오버헤드를 가진다.

CFI(Control Flow Integrity) 적용을 통한 GOT(Global Offset Table) 변조 공격 방지 방안 연구 (CFI Approach to Defend against GOT Overwrite Attacks)

  • 정승훈;황재준;권혁진;신동규
    • 인터넷정보학회논문지
    • /
    • 제21권1호
    • /
    • pp.179-190
    • /
    • 2020
  • 유닉스 계열 시스템 환경에서 GOT 변조(GOT overwrite) 공격은 소프트웨어 권한 탈취를 위한 전통적인 제어흐름 탈취 기법 중 하나이다. 그 동안 GOT 변조를 방어하기 위한 몇 가지 기법들이 제안되었는데, 그 중 프로그램 로딩 단계에서 GOT 영역을 읽기전용 속성으로 메모리 배치하여 실행 시간에 GOT 변조를 원천적으로 차단하는 Full Relro(Relocation Read only) 기법이 가장 효과적인 방어기법으로 알려져 왔다. 하지만, Full Relro 기법은 로딩 시간의 지연을 가져와 시작 성능에 민감한 프로그램의 적용에는 제약이 있고, 라이브러리에 적용시 의존 라이브러리에 의한 연쇄적인 로딩 지연 문제 등으로 라이브러리에는 현재 적용되지 않고 있다. 또한, LLVM을 포함한 다수의 컴파일러들은 Full Relro 기법을 기본 적용하지 않아 실행환경의 프로그램은 GOT 공격에 여전히 취약하다. 이 논문에서는 현재 코드 재사용 공격 방어를 위해 가장 적합한 기법으로 인식되고 있는 CFI(Control Flow Integrity) 기법을 사용한 GOT 보호 장치를 제안한다. LLVM을 기반으로 본 기법을 구현하고 binutils-gdb 프로그램 그룹에 적용해 보안성, 성능, 호환성 등을 평가하였다. 본 CFI 기반 GOT 보호 장치는 우회하기 어렵고, 빠르며 기존 라이브러리 프로그램과도 호환되어 적용가능성이 높다.

코드은닉을 이용한 역공학 방지 악성코드 분석방법 연구 (A New Analysis Method for Packed Malicious Codes)

  • 이경률;임강빈
    • 한국항행학회논문지
    • /
    • 제16권3호
    • /
    • pp.488-494
    • /
    • 2012
  • 본 논문은 악성코드가 사용하는 자기방어기법을 방식에 따라 분류하고, 악의적인 코드를 보호하는 방법의 일종인 패킹에 대해 소개하였으며, 패킹을 이용하는 악성코드를 보다 빠르게 분석할 수 있는 방안을 제시하였다. 패킹기법은 악의적인 코드를 은닉하고 실행 시에 복원하는 기술로서 패킹된 악성코드를 분석하기 위해서는 복원 후의 진입점을 찾는 것이 필요하다. 기존에는 진입점 수집을 위하여 악성코드의 패킹 관련 코드를 자세히 분석하여야만 했다. 그러나 본 논문에서는 이를 대신하여 악성코드를 생성한 표준 라이브러리 코드 일부를 탐색하는 방법을 제시하였다. 제시한 방안을 실제로 구현하여 보다 신속히 분석할 수 있음을 증명하였다.