Thursday, November 12, 2015

Bypass iCloudLock on iPhone4 Verizon 7.1.2 (on a Mac)

Preface

I got this Verizon iPhone4 from Craigslist, the guy of course told me the iPhone had clean ESN and it he cleared it from iTunes so I could activate it. That was not true, a few emails he claimed he cleared it and then he disappeared  so there I was stuck with an iCloudLocked iPhone completely useless.
Searching about it there seem to be a way to bypass the iCloudLock, some said use these IP's on iTunes by all of those never worked, others said just JailBreak it but it wouldn't take that either, then some said there is a way to bypass but only works on iPhone4, using the ssh_rd.jar method and after quite a few tries that worked for me on the Mac.

Required

   - Hacktivate Tool for iPhone4 (win only version once installed  find the ssh_rd_rev04b.jar file and move it to the Mac. They keep moving/hiding this file around so you have to dig for it. In a couple of days I'll place a copy in my web site if you cannot find it.
   - Make sure your Mac has Java installed mine had JDK1.8,  my Mac is on Mavericks 10.9.5
   - You need to have net access

The tries

The Hacktivate Tool for iPhone4 : in a few words this tool injects stuff that allows to access the area where the initial setup is located, which is just a Setup.app that gets launched when you need to do the initial setup of the locked iphone if you can delete this Setup.app it won't show its nasty face and you can start using the iPhone as when it was new without a lock


 Tried the exe it on a VM on my Mac  but it never worked for me as it wouldn't get too far, then I found another post with the similar idea but from the command line they had a newer ssh_rd.jar and manual set of instructions, I tried that one several times but it'll fail but it gave me the plan of attack and I went that way.



 Steps for the working method


   - After many tries on the manual method it was obvious this could be done on a Mac pure command line no funny GUI or tools, as the manual method wouldn't complete I dag into the Hactkivate tool(Win version) and found an earlier ssh_rd_rev04.jar file there pulled it from the VM to the Mac.

   - Open a Terminal and run it like this of course being in the same folder where the jar file is. Need to put the iPhone into DFU mode.
java -jar ssh_rd*.jar
 It goes thru a whole bunch of downloading this, patching this ... until it gets done and it asks to SSH to the iPhone

   - Open another Terminal and SSH using the built-in ssh from the Mac like this, using the alpine password

ssh root@127.0.0.1 -p 2022

 -  The ssh_rd tool did its pirouette and leaves the iPhone ready to get into the area where the Setup.app is, deleting this app is all we need to go straight to the iPhone as when there was no lock. Once you SSH successfully in do the cmds below

cd /mnt1
mount.sh
ls  (you'll see the Setup.app here)
rm -rf Setup.app


   This leaves the iPhone in Recovery mode, just get out of it ,  reboot and Voila!! there it is you can slide and get into the iPhone now.

 Easy as Pie ;-)

Saturday, November 7, 2015

Yosemite on Dell Latitude E6420

Preface

I tried to use the Clover method but kept on getting the kernel panic IntelCPUPowerManagemnt so that obviously was not gonna do it for me so then I tried the Chameleon and it did go a bit better

E6420 Specs


 Dell Latitude E6420, i5 2.5 GHz  (i5-2520M aka sandy bridge) , 4GB 667MHz DDR3,   Bios A21
 SATA 320GB  WD3200BEKT
 NVIDIA 4200M
 Broadcom Wifi BCM5880

 What I needed


   - 8G USB memory stick
   - USB mouse & Keyboard (just in case)
   - Yosemite Install app
   - Bootpack E6220 from here and E6420Yosemite.zip from Clover
   - A little bit of patience and perseverance

 The process

  The Clover method never worked for me no matter what ssdt, overwriting with the NullPowerMgmt, etc it would always pop with the KP IntelCPUPowerManagement, the Chameleon method was my choice as I've done a few already so I'm more familiar with it.

 I made the USB using the OSxLatitude method here but there is no bootpack for the E6420 at time of this writing, there is a Exx20 bootpack there but that one could not rebuild an SSDT for my CPU i5-2520M it complained about my board-id not being right or something and I got left with nowhere to go. I seemed to have read the E6220 is close so  I downloaded that, and also I had the E6420Yosemite.zip from the Clover method handy. Not sure if needed but I copied the kexts from the E6420Yosemite/Clover/kexts/10.10  to the Extra/Extensions of the E6220 bootpack

I started with un unformatted drive and no matter what I did to the USB it wouldn't boot from the USB, I had to install win7 and then it would boot not sure if there is a better trick for this, but that is how I got around that.

Shot 1: made the USB and just used the  Extras from the bootpack from E6220 got a lot deeper than Clover but it'd show the progress bar under the logo and the cursor would come up and then the turn into a beachball and stayed there I even left it overnight and nothing

Shot 2: I added kexts from the E6420Yosemite.zip to the Extra/extension extension in the USB , ran the kextwizard to make sure the SLE and all permission are correct and again as before it get up to beachball and stuck there,  hit the wall hard again then found these are the flags to get thru that
-v kext-dev-mode=1 dart=0
and it did get thru it got me to the starting install ... it asked for wireless PAD  the space bar skips it and it installs fine. Of course I reformatted the HD. It comes up, installed Chameleon to the HD and copied Extra from usb to root of HD, all good no wifi, nor battery status. But the rest is all good. 

  Updated to 10.10.1 from apple it had issues booting, booted thru USB and copy back Extra to root of HD and reinstall the kexts to SLE using kextwizard and all good. 

  Wifi still would not work ordered BCM4322 which is supposed to work. Got the wifi card but upon further reading it was found out the one that works is the Atheros AR9281 so that pushed me into getting a dual boot with Mavericks


Dual Boot with Mavericks

   I was about to order a SSD and use a  caddle adaptor to make a dual boot,  but a 320GB become available and since on Mavericks everything would work I went with a Mavericks install as I had the steps worked out on my Mavericks on a D630  just added the missing pieces for a E6420 to the USB
 to keep it simple I pulled the HD with Yosemite and place the other HD there and carried on with the Mavericks install, a few tweaks and everything worked including the wifi.(BCM4322)

  Finally I place the Yosemite as the main HD and the Mavericks as the secondary HD via caddle but for some reason after chooosing the Mavericks from the chameleon booter it would get stuck at the plist there seems to be a fix for this but my attempt didn't work , booting from the USB and choosing the proper drive worked with the flags -v -f GraphicsEnabler=No did it so that was good enough I use Yosemite for some Apps that require that and Mavericks as my main HD I swapped the HD's and it is all good.


Mavericks boot to Blank screen kink

   So when working as a Mavericks it was great but here and there it would boot to a blank screen, e.g. it would go thru the whole booting screen and when it should show the login it would go blank
then it would vary but trying it over and over eventually it would boot, of course this is not efficient and a couple of times it bit me hard as it was my main machine and had an important work web meeting I missed due to this as the bloody box would boot to the blank screen only after hours trying it did boot.

    Fix 1: Run the KextWizard and run Maintenance checking the Extra and the SLE after this it would always boot normally, I found out after running compilers like XCode/Eclipse or similar it'd made it more prone to the blank screen.

    Fix 2: When the machine would freeze hard it'd need a hard reset and of course Fix1 cannot be run so this one got me thru: Boot with the following switches -v -f GraphicsEnabler=No IGPEnabler=No nv_disable=1 this would boot in a lower resolution and not the pesky blank screen here the kextwizard from Fix1 can be run and back in business

   Fix 3: The Fix1 works here/there but the real reason is that there is a kext that got unnecessary entries in its plist
/S*/L*/E*/AppleGraphicsControl.kext/C*/P*/AppleGraphicsDevicePolicy.kext/C*/Info.plist

The section should be only like this

<key>ConfigMap</key>
<dict>
    <key>Mac-F60DEB81FF30ACF6</key>
    <string>none</string>
</dict>

mod'ed it rebuilt it by running the commands below, and it no more black screen.
sudo kextcache -system-prelinked-kernel
sudo kextcache -system-cache

 Fix 4: I still use Mavericks at the time of this update and still get it, seems to be something to live with as it usually pops when it is not shutdown properly or after a heavy CPU use and/or randomly.  A couple of extra things that helped: 
   - Leave it unplugged overnight and without the battery
   - Before shutting down take it in/out of sleep mode several times 
   - It seem to be the nvram needs to be reset so one quick variation is unplug the laptop,pull the battery out and press the power button for 30seconds or more and voila!!!

At the end of the day it seems like the NVDIA video card somehow gets into a setting that when you boot back it cannot handle, when it works that setting seems proper, taking the battery out worked good so maybe is something that lives on the card when powered. In my case with a proper default high resolution with the -nv_disable=1 it always works and only need the full video mode when working with videos.


Other issues while running

Basic issues happened but this was a solid one,

   Invalid Sibling Links
    This was a tough one  when I had VMWare running and it would take a long time to close, just powered off the machine, next time it wouldn't boot as I had dual-boot just kept using the one that worked, but a few days later I needed the version in the drive with the issue, tried the basics like boot in single user mode run the fsck_hfs but nothing all would lead to the Invalid Siblings and/or B-tree error, they were suggesting grab what I could and reformat.Obviously that is the last thing to try. Someone suggested to run DiskWarrior, I had an older copy so I ran it from the good disk, it wouldn't run because I had some stuff linked to the disk with the problem.

    ps -aux |grep [Volume Name]

 pulled the list of processes to kill and Diskwarrior ran and it found a lot of stuff wrong especially from the VMware, so that looked good, but in the list some message came up with the message Serial Not longer valid and the button to apply the fix was grayed outI needed this right away and didn't have my credit card handy to buy it, I pulled down one of those hacks serial keys, tried it but the same at the end it'd say Serial Invalid, my last tried worked rebooted with no WiFi and set the date back a couple of years as that was the age of my old copy plugged the code by the tool and it ran and back to life. The DiskWarrior was a life saver.


Upgrade the Yosemite to Sierra

  Supposedly you download the installer from the Apple Store, run it,  fix the Voodoo and you are back in business, so I started it, after I ran the InstallSierra.app  I reinstall the proper Voodoo but then when I booted up nothing happened, later found out this is due to the fact I'm using the Chameleon method and this requires to install from the USB. There is a tool called createinstallmedia which creates a bootable USB from the Installer app, tried that but still no cigar.


  So for my Chameleon setup I need to make a USB just like it was done for Yosemite, I started that and used the InstallESD.dmg from the InstallSierra.app but later I found out I need to go the Clover way from the scratch. Sierra can be installed with the Chameleon method but I tried to go Clover to see if all of this Clover talk is for real(it is but not for this E6420 which has UEFI and NVDIA issues)  the closest I've got was installed everything but  when the USB would boot it'll come up with the Clover menu but empty.

Experiment From Chameleon to Clover 

Lots of people recommend to go the Clover way as supposedly upgrading the OS is almost as easy as doing it on a real Mac. So I experimented going from an installed Chameleon to Clover, actually it was straightforward. I started with a new HD where I installed my old Mavericks/Chameleon set and then swapped the booter to Clover, all I had to do was  rename the /Extra  and boot on the root , install Clover and play with the files in the EFI folder I get the Clover boot menu and boot to the Mavericks installed with Chameleon. Some issues with the keyboard/padtrack but that is easy to fix.

Then I tried to upgrade to Sierra from there, but there were issues as the OSInstallSierra keeps booting back to the same Clover menu or I was getting to the apple logo and progressing to 100% and staying there forever.

Finally Sierra  with Enoch(Chameleon) 

Cleaned the drive where I was experimenting with Clover, which creates an EFI folder deleted all files inside. Also deleted the recovery partition created by my trials with Clover with diskutil.

 Used this guide step by step and it got me thru, skipped the format of the drive since I wanted to keep my file on the HDD, after an initial boot, there was no wifi, no sound and trackpad too slow and it will only boot from the USB when used as a 2nd hard drive. I have the  old trusty Pdanet so the net is alive, run the KextUtility a couple of times and sounds works. Only issue I have left is the trackpad being too slow. Runing in regular resolution without the nv_disable=1 flag gets it good, trackpad is fine and no flickering on screen

Sierra is the end of the line for the NV4200M i.e. high res display, high sierra can be ran in low res i.e. with nv_disable=1. when I boot this Sierra in high res it is all fine but the sleep kicks in too quick, just make sure you turn the sleep to never
 
WiFi was a bit unstable it will work for a bit then turn off and couldn't be turned back on, played with BCM kexts, still about the same, installed IO80211HighSierra.kext and so far wifi holds good


All in all a usable drive if I need to boot here, I have installed VMWare versions of High Sierra and Mojave and the VM comes up fine with Yosemite/Mavericks a bit slow  but enough to do my Xcode Angular dev tasks.