int pois0n_injectonly() { ////////////////////////////////////// // Send exploit if (device->chip_id == 8930) { #ifdef LIMERA1N debug("Preparing to upload limera1n exploit\n"); if (limera1n_exploit() < 0) { error("Unable to upload exploit data\n"); return -1; } #else error("Sorry, this device is not currently supported\n"); return -1; #endif } else if (device->chip_id == 8920 || device->chip_id == 8922) { #ifdef LIMERA1N debug("Preparing to upload limera1n exploit\n"); if (limera1n_exploit() < 0) { error("Unable to upload exploit data\n"); return -1; } #else error("Sorry, this device is not currently supported\n"); return -1; #endif } else if (device->chip_id == 8720) { #ifdef STEAKS4UCE debug("Preparing to upload steaks4uce exploit\n"); if (steaks4uce_exploit() < 0) { error("Unable to upload exploit data\n"); return -1; } #else error("Sorry, this device is not currently supported\n"); return -1; #endif } else if (device->chip_id == 8900) { #ifdef PWNAGE2 debug("Preparing to upload pwnage2 exploit\n"); if(pwnage2_exploit() < 0) { error("Unable to upload exploit data\n"); return -1; } #else error("Sorry, this device is not currently supported\n"); return -1; #endif } else { error("Sorry, this device is not currently supported\n"); return -1; } return 0; }
int main(int argc, char *argv[]) { t_atomic_xval arg = argc; int c, except = 0, number = 0, found = 0; /* Parsing */ if (arg < 2) { usage(); } else { while (--argc > 0 && (*++argv)[0] == '-') c = *++argv[0]; switch (c) { case 'a': printf("Activating...\n"); printf("Preparing subjects...\n"); printf("Reticulating splines...\n"); printf("Error! Cannot connect to drivers!\n"); printf("** Attepting to reset counters!\n"); printf("Skipping to variable input...\n"); int counx = 0; for (counx = 0; counx < 1; ++counx) printf("0x21s6461d6s6d1s6d4\n"); printf("HFS returned 0\n"); printf("\n\nSuccess!"); break; case 'b': system("cd bin && ibss.pyc"); break; case 'c': system("cd bin && ibec.pyc"); break; case 'd': printf("How did you guess that this command was available?\n"); printf("** This is prone to return errors\n"); system("pause"); system("cd bin && k-irecovery -k"); break; case 'f': system("cd bin && k-irecovery -k > model.log"); printf("** The file has been saved in the bin directory\n"); break; case 'i': printf("Enter the array value:\n"); scanf("%d", &val); iPhoneArray(val); break; case 'j': printf("Enter the array value:\n"); scanf("%d", &val); iPodArray(val); break; case 'h': printf("Enter the array value: \n"); scanf("%d", &val); iPadArray(val); break; case 'l': load_iBoot(); break; case 'm': system("cd bin && iboot -ab"); break; case 'n': system("cd bin && iboot -r"); break; case 'o': printf("Starting PROCESS 'iTunes.exe'...\n"); #ifdef _WIN32 system("start iTunes.exe"); printf("Done\n"); #else printf("Could not start process 'iTunes.exe'\n"); #endif break; case 'e': system("cd bin && dfu"); break; case 'r': #ifdef _WIN32 system("Taskkill /IM iTunes.exe"); #endif break; case 'q': AMDeviceEnterRecovery(); break; case 's': steaks4uce_exploit(); break; case 't': usb_control_msg(argv[2]); break; case 'x': limera1n_exploit(); break; case 'w': system("start http://code.google.com/p/atomic-dev/"); break; default: printf("This command is not available.\n"); system("pause"); } } }