Difference between revisions of "Diags"

From The iPhone Wiki
Jump to: navigation, search
Line 1: Line 1:
This was an exploit that allowed the running of unsigned code at iBoot level present of pre-2.0 versions of iBoot.
+
This was an exploit that allowed the running of unsigned code at iBoot level, present in pre-2.0 versions of iBoot.
   
 
==Credit==
 
==Credit==

Revision as of 18:15, 15 December 2008

This was an exploit that allowed the running of unsigned code at iBoot level, present in pre-2.0 versions of iBoot.

Credit

The dev team

Exploit

This is a very easy-to-use exploit. In earlier iBoots, if a parameter was given to the 'diags' command, then it would jump to whatever address argv[1] specified, but not before disabling the GPIO devices. You can run unsigned code on the S5L using this, but the GPIOs need to be restored if you intend to use any I/O again (such as the screen, serial, or USB).

In 2.0 iBoots, they have a flag check on this command (checks bit 4 of the iBoot flags), and that flag will not be present on a retail device, just an engineering one with a 'whitelisted' CHIPID, so this exploit doesn't work.