이전 강의에서 프로가드를 적용해서 코드를 난독화해서 읽기 어렵게 만들어봤습니다.
그런데 이 프로가드의 경우에는, 너무 쉽게 해독할 수 있습니다. 한번 프로가드 해독을 해보겠습니다.
이전의 프로가드 적용했을 때, 아래와 같은 형태로 디컴파일이 되는 것을 보실 수 있습니다.
약간의 난독화가 적용되어 있는데, 이 난독화를 풀 수 있습니다.
아래의 사이트에 들어가서 apk파일을 올려보겠습니다.
아래와 같이 이미지가 나온 것을 확인할 수 있습니다.
그래서 proguard의 유료 버전인 dexguard라는 것이 있습니다.
proguard와 dexguard가 어떤 차이가 있는지 알아보면
ProGuard offers basic protection against static analysis.
DexGuard protects applications against static and dynamic analysis.
프로가드에 비해 덱스가드가 정적, 동적 분석에 대해 보호를 더 하고 있고
ProGuard provides minimal obfuscation.
DexGuard applies multiple layers of encryption and obfuscation.
프로가드는 난독화를 최소화만 하고, 덱스가드는 여러 layer의 암호화 및 난독화를 합니다.
ProGuard focuses on the bytecode.
DexGuard processes all the components of an application.
프로가드는 바이트 코드에 포커스를 하고, 덱스가드는 모든 컴퍼넌트를 처리합니다.
ProGuard is an open source tool.
DexGuard is a commercial, enterprise-grade product.
프로가드는 오픈 소스고, 덱스가드는 엔터프라이즈 제품입니다.
-- 참조
'인프런 - 강의 > 루팅탐지, 탐지우회, 방어방법' 카테고리의 다른 글
7 - 무결성 검사 (0) | 2019.12.10 |
---|---|
5 - 디컴파일, 프로가드 (0) | 2019.11.30 |
4 - 루팅 탐지 피하기(후킹과 프리다) (1) | 2019.11.27 |
3 - 루팅환경 만들기, 기본적인 루팅 탐지 (0) | 2019.11.26 |
2 - 루팅 개요 (0) | 2019.11.23 |