분류
1. 개요
럭키패쳐(Lucky Patcher)란 안드로이드 애플리케이션의 편리한 불법 복제와 광고 제거, 라이센스인증 제거 등을 위해 만들어진 애플리케이션이다.
유료 애플리케이션의 라이선스 스푸핑과 구글 결제 프록시 서버/패치된 Google Play 앱/Xposed 모듈 등을 통한 인앱결제(In-App Purchase; IAP) 바이패스, 광고 삭제 등, 복잡한 앱 크랙을 원터치로 쉽게 사용할 수 있도록 만들어져 있다. 앱 개발자 입장에서는 먹고 살 길을 완벽하게 없애버리려는 악마의 도구라고 할 수 있다.
대부분의 사용자들이 부분유료화된 게임의 내부 구매 요소[1]를 실제 돈을 지불하지 않고 쓰기 위해 사용하고 있다. 물론 앱 클론이나[2], 무의미한 GSF[3] 의존성 요소를 제거해 gapps가 없는 디바이스에서 앱을 사용하기 위한 패치 등, 크랙이 아닌 사용 시나리오도 있기는 하다. 하지만 절대다수의 사용자들은 크랙을 위해 이 앱을 사용하고 있다.
저연령층 사용자들조차도 쉽게 크랙을 도입할 수 있는 간편한 인터페이스로 상당한 인기를 끌었다. 실제로 한글로 "럭키패쳐"라고 검색하면 이 앱의 주된 사용 연령대를 쉽게 짐작할 수 있을 것이다. 버그와는 아무 관련 없는 앱임에도 "럭키패쳐 게임버그"라는 식으로 앱을 설명한다던가.
물론 개발자들도 바보는 아니므로, Google에서 제공하는 기본 IAP API 외에 여러 가지 결제 검증 절차를 도입하고, 럭키패쳐 앱을 스캔하여 설치된 기기에서의 실행을 막고, 패키지 무결성 검사로 변조된 앱 실행을 막아버리는 등 여러 차단 방법을 시도하고 있다. 일례로 게임 회사의 서버와도 통신을 거치는 모바일 온라인 게임의 경우, 럭키패쳐가 변조한 결제 내역과 실제로 게임사에 입금된 결제 내역을 대조하여 결제 유효성을 검증한다. 아니면 테일즈샵같이 너 고소를 시전한다던가...
차단을 먹지 않는다고 하더라도 크랙은 도둑질이나 다름 없으므로 사용을 자제하는 것이 좋다. 현재는 구글측 에서 플레이 프로젝트를 통해 바이러스 앱으로 차단한다.[4]
유료 애플리케이션의 라이선스 스푸핑과 구글 결제 프록시 서버/패치된 Google Play 앱/Xposed 모듈 등을 통한 인앱결제(In-App Purchase; IAP) 바이패스, 광고 삭제 등, 복잡한 앱 크랙을 원터치로 쉽게 사용할 수 있도록 만들어져 있다. 앱 개발자 입장에서는 먹고 살 길을 완벽하게 없애버리려는 악마의 도구라고 할 수 있다.
대부분의 사용자들이 부분유료화된 게임의 내부 구매 요소[1]를 실제 돈을 지불하지 않고 쓰기 위해 사용하고 있다. 물론 앱 클론이나[2], 무의미한 GSF[3] 의존성 요소를 제거해 gapps가 없는 디바이스에서 앱을 사용하기 위한 패치 등, 크랙이 아닌 사용 시나리오도 있기는 하다. 하지만 절대다수의 사용자들은 크랙을 위해 이 앱을 사용하고 있다.
저연령층 사용자들조차도 쉽게 크랙을 도입할 수 있는 간편한 인터페이스로 상당한 인기를 끌었다. 실제로 한글로 "럭키패쳐"라고 검색하면 이 앱의 주된 사용 연령대를 쉽게 짐작할 수 있을 것이다. 버그와는 아무 관련 없는 앱임에도 "럭키패쳐 게임버그"라는 식으로 앱을 설명한다던가.
물론 개발자들도 바보는 아니므로, Google에서 제공하는 기본 IAP API 외에 여러 가지 결제 검증 절차를 도입하고, 럭키패쳐 앱을 스캔하여 설치된 기기에서의 실행을 막고, 패키지 무결성 검사로 변조된 앱 실행을 막아버리는 등 여러 차단 방법을 시도하고 있다. 일례로 게임 회사의 서버와도 통신을 거치는 모바일 온라인 게임의 경우, 럭키패쳐가 변조한 결제 내역과 실제로 게임사에 입금된 결제 내역을 대조하여 결제 유효성을 검증한다. 아니면 테일즈샵같이 너 고소를 시전한다던가...
차단을 먹지 않는다고 하더라도 크랙은 도둑질이나 다름 없으므로 사용을 자제하는 것이 좋다. 현재는 구글측 에서 플레이 프로젝트를 통해 바이러스 앱으로 차단한다.[4]
2. 기능
럭키패쳐는 설명했듯이 모든 앱에 패치가 되지는 않는다.
패치가 가능한 온라인 게임은 극소수며, 오프라인 게임은 패치가 가능한 경우가 왠만하면 많다.
2.1. 패치 메뉴
2.1.1. 수정된 Apk파일 생성
2.1.1.1. 다중 패치된 Apk
후술할 패치 메뉴 기능 여러가지를 한번에 패치하고 싶을때 쓰는 기능이다. 그 외의 기능은 없다.
2.1.1.2. 커스텀 패치가 적용된 APK
말 그대로 커스텀 패치를 적용하는 기능. 좀 유명한 앱들에는 유럽이나 러시아, 중국 쪽에서 만든 커스텀 패치가 많다. 기본 패치들이 먹히지 않을 때 시도해볼만 하다.
2.1.1.3. 라이센스 인증이 없는 APK
2.1.1.4. 구글 광고가 없는 애플리케이션
이 패치를 적용하면 구글 광고가 나오지 않는다. 그 외의 특별한 점은 없다.
2.1.1.5. 인앱, LVL 에뮬레이션 APK 리빌드
2.1.1.6. 권한과 액티비티가 변경된 APK
소스 코드의 AndroidManifest.xml을 수정하여 앱이 요구하는 권한을 변경한다.
2.1.1.7. 테스트 서명으로 재서명
2.1.1.8. Remove Google Dependencies
구글과 관련된 의존성 모듈을 제거한다. 구글 Ads를 포함하여 주로 Firebase에 대한 의존성 모듈이 앱애서 많이 쓰인다.
2.2. 도구
2.2.1. 애플리케이션 복제(작동하지 않을 수 있음)[8]
패치한 그 앱을 복제한다.이게 끝 복제한 앱은 작동하지 않을 수 있다.
2.2.2. 선택된 저장된 패치를 제거
앱의 패치를 제거해 순정으로 되돌린다. 패치를 잘못 했거나 먹히지 않을 때 사용한다.
2.2.3. 백업
패치된 앱을 APK 파일로 백업한다.
2.2.4. 구글 플레이에서 열기
구글 플레이에서 해당 앱의 정보를 본다.
2.2.5. 공유하기
패치된 앱을 공유한다(...). 친구와 함께 즐기는 해킹판
[1] 아이템, 스테이지 패스, 유료 캐릭터, 게임머니, 또다른 게임 내 재화 구매 지불 수단 등[2] 이른바 "멀티 앱" 등. 혹은 사칭 또는 표절 앱들도 포함시킬수 있겠다.[3] Google Service Framework[4] 물론 무시하고 설치를 할수 있기는 하지만...[5] 이 과정은 Play 스토어에서 보낸 것처럼 변조한 패킷을 통해 이루어진다.[6] 현재 이러한 서명은 유저가 다운로드하는 앱에만 있고 개발자는 업로드 키라는 것으로 업로드한다.[7] 테스트 서명에는 서명되지 않은 앱을 의미하는 것도 있지만 '재서명' 이라 언급하였기에 이 뜻은 아닐 확률이 높다.[8] 정말 이 앱 내 설명이 이렇게 써 있다