2012-11-10 2 views
3

을 나는이 같은 IAP 크래커를 감지 :- 새로운 IAP 크래커

if ([[NSFileManager defaultManager] fileExistsAtPath:@"/Library/MobileSubstrate/DynamicLibraries/iap.dylib"]){ 
    NSLog(@"IAP Cracker detected"); 
} 

가 어떻게 LocallAPStore을 감지 할 수

답변

5

이 해킹의 Debian package를 추출 후에는 것을 알 수 있습니다 . IAP 크래커와 거의 동일한 구조를 가지고 그래서, 당신은 쓸 수 있습니다 :

if ([[NSFileManager defaultManager] fileExistsAtPath:@"/Library/MobileSubstrate/DynamicLibraries/LocalIAPStore.dylib"]) { 
    NSLog(@"Local IAP Store detected"); 
} 

을 그건 그렇고,이 방법을 사용하면 매우 효과적이지 내가 많은 개발자가 이것을를 사용하는 경우 확신 해요. 이 비틀기의 제작자는 탐지를 불가능하게 만드는 또 다른 훅을 동적 라이브러리에 통합합니다. 예를 들어 - [NSFileManager fileExistsAtPath:]을 연결하고 경로가 dylib의 경로와 같은지 확인한 다음 무조건 NO을 반환합니다.

인앱 구매를 사용하려는 경우 자신의 서버를 사용하여 확인하는 것이 좋습니다.

0
+0

서버 측 확인이 설정되어 있으며 일부 알 수없는 이유로 LocalIAPStore는 여전히 구매를 중단합니다. 검증 서버로 전송 된 영수증은 Apple에서 유효성을 검사합니다. 누구든지 해결책을 찾았습니까? –

0

또한 dyld (또는 Objective-C 런타임) 함수를 사용하여 해당 라이브러리가로드되었는지 감지 할 수 있습니다. 그렇다면 언로드하십시오.

관련 문제