जेलब्रोकन आईफ़ोन मेरे तंत्रिका पर आते हैं क्योंकि यह मोबाइल सब्सट्रेट का उपयोग करके आईओएस पर कुछ मौलिक एपीआई को टेंट करता है।रनटाइम पर आईफोन पर यूडीआईडी स्पूफिंग का पता लगाएं
http://www.iphonedevwiki.net/index.php/MobileSubstrate
मैं कई क्षुधा एक युक्ति है और/या एक उपयोगकर्ता को प्रमाणित करने के बाद से यह अर्द्ध स्वचालित और आसान है एक मतलब के रूप में UDID का उपयोग विश्वास करते हैं, लेकिन आप इस समस्या से अवगत होना चाहिए: UIDevice रूप tamper- नहीं है यह सबूत होना चाहिए। यूडीआईडी फेकर नामक एक ऐप है, जो आसानी से रनटाइम पर किसी और के यूडीआईडी को धोखा देने में सक्षम बनाता है।
http://www.iphone-network.net/how-to-fake-udid-on-ios-4/
यहाँ यह के स्रोत कोड है:
//
// UDIDFaker.m
// UDIDFaker
//
#include "substrate.h"
#define ALog(...) NSLog(@"*** udidfaker: %@", [NSString stringWithFormat:__VA_ARGS__]);
#define kConfigPath @"/var/mobile/Library/Preferences/com.Reilly.UDIDFaker.plist"
@protocol Hook
- (NSString *)orig_uniqueIdentifier;
@end
NSString *fakeUDID = nil;
static NSString *$UIDevice$uniqueIdentifier(UIDevice<Hook> *self, SEL sel) {
if(fakeUDID != nil) {
ALog(@"fakeUDID %@", fakeUDID);
/* if it's a set value, make sure it's sane, and return it; else return the default one */
return ([fakeUDID length] == 40) ? fakeUDID : [self orig_uniqueIdentifier];
}
/* ... if it doesn't then return the original UDID */
else {
return [self orig_uniqueIdentifier];
}
}
__attribute__((constructor)) static void udidfakerInitialize() {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSString *appsBundleIdentifier = [[NSBundle mainBundle] bundleIdentifier];
ALog(@"Loading UDID Faker into %@", appsBundleIdentifier);
NSDictionary *config = [NSDictionary dictionaryWithContentsOfFile: kConfigPath];
fakeUDID = [config objectForKey: appsBundleIdentifier];
[fakeUDID retain];
if(fakeUDID != nil) {
ALog(@"Hooking UDID Faker into %@", appsBundleIdentifier);
MSHookMessage(objc_getClass("UIDevice"), @selector(uniqueIdentifier), (IMP)&$UIDevice$uniqueIdentifier, "orig_");
}
[pool release];
}
आप देख सकते हैं, UIDevice कक्षा में uniqueidentifier विधि अब fakeUDID किसी भी क्षुधा पर देता है।
ऐसा लगता है कि स्काइप और कुछ अन्य ऐप्स इस तरह के रंग का पता लगाते हैं, लेकिन मुझे नहीं पता कि यह कैसे करना है।
मैं जो करना चाहता था वह है: जब लॉन्च, अलर्ट और बाहर निकलने पर UIDevice का पता लगाया जाता है (0)।
विचार?
दोस्त .. आप इन विचारों को अन्य लोगों को दे रहे हैं .. मेरा मतलब है कि आप सैंपल कोड और सटीक एपीआई/स्पूफिंग के लिए लिंक के बिना केवल प्रश्न पोस्ट कर सकते थे। अब सभी SO उपयोगकर्ता जानते हैं कि UDID को कैसे धोखा देना है .. – lukya
ऐसे इरादे वाले लोगों के पास उपर्युक्त कोड को समझने की क्षमता नहीं है, या क्षमता है और इसके बारे में पहले ही पता है। –
चलो, प्रत्येक SO उपयोगकर्ता को Google का उपयोग करने का तरीका पता होना चाहिए। सिर्फ इसलिए कि लिंक यहां नहीं हैं, इसका मतलब यह नहीं है कि इसमें रुचि रखने वाले किसी को यह नहीं मिलेगा। – JustSid