FreeCalypso > hg > freecalypso-sw
comparison doc/Compal-unlock @ 974:3f67d5bf96ef
doc: TFC139-breakin written, Compal-unlock updated
author | Mychaela Falconia <falcon@ivan.Harhan.ORG> |
---|---|
date | Sun, 15 Nov 2015 03:47:19 +0000 |
parents | 2d8ab1b0df8d |
children | 7a55a3eb985a |
comparison
equal
deleted
inserted
replaced
973:285505f98013 | 974:3f67d5bf96ef |
---|---|
42 be disabled. Some C1xx phones out in the wild, particularly all North American | 42 be disabled. Some C1xx phones out in the wild, particularly all North American |
43 C139s with TracFone branding, have such maliciously-locked firmware in them. | 43 C139s with TracFone branding, have such maliciously-locked firmware in them. |
44 | 44 |
45 Fortunately though, these maliciously-locked firmwares (or at least the most | 45 Fortunately though, these maliciously-locked firmwares (or at least the most |
46 common TFC139 one) have been found to have another hole through which we can | 46 common TFC139 one) have been found to have another hole through which we can |
47 break in, as described here: | 47 break in, as described in the TFC139-breakin article. We can exploit this hole |
48 | 48 in the TFC139 firmware to gain code execution access to the Calypso, and then |
49 http://lists.osmocom.org/pipermail/baseband-devel/2014-May/004451.html | 49 use the latter to reprogram the flash, replacing the ultra-malicious firmware |
50 http://lists.osmocom.org/pipermail/baseband-devel/2014-May/004455.html | 50 with some other version that, although still proprietary, is a little less evil. |
51 | |
52 We can exploit this hole in the TFC139 firmware to gain code execution access | |
53 to the Calypso, and then use the latter to reprogram the flash, replacing the | |
54 ultra-malicious firmware with some other version that, although still | |
55 proprietary, is a little less evil. | |
56 | 51 |
57 Making first contact | 52 Making first contact |
58 ==================== | 53 ==================== |
59 | 54 |
60 If you have a C1xx phone which you are seeking to free, your first step should | 55 If you have a C1xx phone which you are seeking to free, your first step should |
118 4. Connect the headset jack serial cable if it wasn't already connected, and | 113 4. Connect the headset jack serial cable if it wasn't already connected, and |
119 run this FreeCalypso hack-utility: | 114 run this FreeCalypso hack-utility: |
120 | 115 |
121 tfc139 /dev/ttyXXX | 116 tfc139 /dev/ttyXXX |
122 | 117 |
123 Compal's firmware has some non-standard commands of their own invention added | 118 Compal's TI-based firmware implements some of TI's Test Mode commands, and one |
124 to TI's RVT/ETM interface, and one of these commands is a raw memory write. | 119 of these commands is a raw memory write. Our tfc139 hack-utility will try to |
125 Our tfc139 hack-utility will try to break into the phone (gain code execution | 120 break into the phone (gain code execution access) by using this Test Mode |
126 access) by using this Compal ETM command to write a little payload into a | 121 command to write a little payload into a particular RAM location (beginning of |
127 particular RAM location (beginning of IRAM), and then doing more memory writes | 122 IRAM), and then doing more memory writes by the same method, seeking to smash |
128 by the same method, seeking to smash the stack and cause control to be | 123 the stack and cause control to be transferred to the sent payload by |
129 transferred to the sent payload by overwriting a function return address on the | 124 overwriting a function return address on the stack. |
130 stack. | |
131 | 125 |
132 If the stack smashing hack succeeds, the code injected by tfc139 will send a | 126 If the stack smashing hack succeeds, the code injected by tfc139 will send a |
133 message out the serial port indicating this success, and then re-enable the | 127 message out the serial port indicating this success, and then re-enable the |
134 Calypso boot ROM and jump to it. Once the boot ROM code gains control, it will | 128 Calypso boot ROM and jump to it. Once the boot ROM code gains control, it will |
135 wait forever for a serial code download following its standard protocol. If | 129 wait forever for a serial code download following its standard protocol. If |
244 to the right place. We have an unlocked and non-carrier-branded (Mot branding | 238 to the right place. We have an unlocked and non-carrier-branded (Mot branding |
245 only) version of the fw that runs on these phones, and you can use FreeCalypso | 239 only) version of the fw that runs on these phones, and you can use FreeCalypso |
246 loadtools to flash this version into your C139 whether it came with Cingular or | 240 loadtools to flash this version into your C139 whether it came with Cingular or |
247 TF branding originally. Download this file: | 241 TF branding originally. Download this file: |
248 | 242 |
249 ftp.ifctf.org:/pub/GSM/Compal/c139-unlocked-fw.zip | 243 ftp.freecalypso.org:/pub/GSM/Compal/c139-unlocked-fw.zip |
250 | 244 |
251 Unzip it, and you'll get c139-unlocked-fw.bin - that is the image you'll need | 245 Unzip it, and you'll get c139-unlocked-fw.bin - that is the image you'll need |
252 to flash into your phone. Get in with fc-loadtool (using tfc139 if necessary | 246 to flash into your phone. Get in with fc-loadtool (using tfc139 if necessary |
253 for locked-down Tracfones) and make a backup of the original flash content. | 247 for locked-down Tracfones) and make a backup of the original flash content. |
254 Then reflash the firmware as follows: | 248 Then reflash the firmware as follows: |