Jump to content
zbeng

Cum sa deblocam telefoane GSM ?

Recommended Posts

Cum sa deblocam telefoane GSM ?

, by Zbeng

__________________________________________________________________________________

Cred ca multi dintre voi ati avut de a face cu telefoane mobile blocate

sau chiar ati reusit sa il blocati pe cel personal sau care pur si simplu lucrau

in alta norma decat cea in care lucreza "provideri" de pe teritoriul romaniei

sau al moldovei :)) Si va-ti pus problema ce ati putea face ? Nimic mai mult

decat sa incercati sa ii "modificati" sau sa ii "schimbati" "soft-ul" .

0. Precizare :

Exista mai multe norme de lucru a telefoanelor celulare adica

(din cate stiu eu si adevarul ii ca pe partea asta nu stiu prea multe)

D1 si D2 ! In Romania este folosita norma D1 .

I . De ce aveti nevoie :

1. Avem nevoie de un programator de epromuri seriale care sa stie

urmatoarele protocoale : I2C , SPI , 3 WIRE (astea sunt cu cele care am

lucrat eu)

2. Un ciocan (mai mare :) de lipit de 15 Watti alimentat la 12 Volti

(putei lucra si cu un pistol de lipit dar nimeni nu garanteaza ca nu veti

"inmormanta" telefonul !)

3. O tresa metalica sau o pompa de cositor.

4. O bere la baiatu ca sa va mai raspunda la intrebari :)

5. Mult curaj si un pic de nebunie

6. Un Hexeditor

7. Informatii despre memoria in cauza

Si acuma ca sa fiu un pic mai explicit iata ce trebuie sa faceti :

1. Trebuie Indentificat eepromul care contine "soft-ul" gsm-ului

2. Trebuie dat jos eepromul

3. Citit prin programator si salvat fisierul cu dumpul de memorie

4. Modificat fisierul cu dumpul de memorie (inlocuire SPLockCode etc)

5. Rescris eepromul cu dumpul modificat

6. Cositorit la loc eepromul

7. Apasat pe butonul de start :)))))

II . Programatorul:

Voi prezenta aici doua variante ale celui mai simplu programator

de eeprom-uri dar care stie numai standardul I2C ! In rest tre sa va chinuiti

un pic ca sa le faceti pe celelalte (SPI , 3 WIRE)! :)))

Programator pe interfata seriala : (schema netestata)

        +Vcc 12v ö 15v

    TxD> O--+

    (3)    |

          ---

          |  | 2k2

          |  |

          ---      1N4148

            |        ||

            +--------|-|-------+---------+

            |        |/|      |        |

          ----                |+        |

          /                ---        |

          /      5V6        ---        |

          ----            10u  |        |

            |                  |        |

            |                  |        |

            |                  �        |

          ---                          |

                                +--------+

                                |

                                .

  +----------+        O +Vcc

        A0|  +--+  |VCC      |

+---------|1        8|---------+-----+

|      A1|          |WP            |

+---------|2        7|---------+    R 20K

|      A2|  24CXX  |SCL      |    |

+---------|3        6|---------)-----+---<  Clock  > <-------------< RTS

|      GND|          |SDA      |                            -----

+---------|4        5|---------)---------<Data In/Out> <-+-| 2k2 |---< DTR

|        +----------+        |                        |  -----

+------------------------------+                        +---//------< CTS

|

|

---

-

Programator pe interfata paralela : (schema testata)

  +----------+        O +Vcc 5v

        A0|  +--+  |VCC      |

+---------|1        8|---------+--+--+

|      A1|          |WP          |  |

+---------|2        7|---------+  R  R  2x20K

|      A2|  24CXX  |SCL      |  |  |

+---------|3        6|---------)--)--+---<  Clock  > <-------------<?

|      GND|          |SDA      |  |                       

+---------|4        5|---------)--+------<Data In/Out> <-------------<?

|        +----------+        |                         

+------------------------------+                       

|

---

-

Dezavantajul programatorului pe interfata paralela este ca nu

i-am adaugat o sursa de alimentare direct din calculator ci i-am facut

alimentarea separata cu un stabilizator de tensiune de 5v.

Programul aferent poate fi modificat astfel incat sa i se poata adauga

o sursa de tensiune ca cea de la portul serial (binenteles tot pe portul serial

nu pe cel paralel)

Avantajul portului serial este ca ofera tensiuni intre -15 si +15 v (parca asa

imi aduc aminte) si se poate construi o mini sursa de alimentare pentru

circuitele care nu consuma mult !

La ce mai este bun acest programator ? La televizoare , radio casetofoane si

tot ce foloseste memorie de tip I2C (SPI sau 3WIRE) .

Probabil va intrebati la ce pini de pe portul paralel se leaga programatorul ?

Si eu ma intreb caci mi-am uitat si mie asa de lene sa caut programatorul !

Dar aveti sursa , ia incercati sa va dati seama singuri ! Un hint : In-ul se leaga

cu Out-ul la un loc pe acelasi pin (pe inerfata paralela).

Documentatie despre standardele I2C, SPI,3Wire gasiti la :

http://www.microchip.com/

http://www.fairchild.com/

si in speta la toate firmele producatoare de eepromuri

III . Identificarea eeprom-ului in Celular !

Eeprom-urile , cum spuneam si mai sus , sunt de mai multe feluri :

Protocol  Tip Memorie        Marime

I2C  (24C01/02/04/08/16 , 1k/2k/4k/8k/16k-bit)

SPI  (25C02/04/08/16/32 , 2k/4k/8k/16k/32k-bit)

3Wire (93C46/56/57/66/86 , 1k/2k/2k/4k/16k-bit)

Spre exemplu :

24C04 este o memorie de 512 bytes

24C08 este o memorie de 1024 bytes

and etc.

(Sper ca imi aduc bine aminte  !)

Incercati sa le cautati dupa codurile de mai sus.

Memorile sunt de tip SMD si cele mai multe sunt pe 8 pini

IV. Programul :

Este foarte usor de utilizat si modificat. Sper ca va veti da

repede seama cum lucreaza. Pe partea asta nu ar fi probleme mari !

Problema este ca pe vremea aia lucram cu Watcom C++ si s-ar putea

sa fie unele incompatibilitati cu Borland C++.

Syntax :

printf("eprombin -r/w size filen");

printf("- rw : read or write from eepromn");

printf("size : size of eeprom memory in bytesn");

printf("file : load or save in this filen");

aici gasiti sursa - eprombin.cpp

V . Cea ce trebuie sa facem :

De la caz la caz avem nevoie ori sa schimbam norma ori sa deblocam

telefonul ! In cazul schimbului de norma avem nevoie sa schimbam intreg

continutul eeprom-ului cu un dump din acelasi tip de telefon celular ,celularele

ar trebui sa fie identice dar pe norma care ne intereseaza .

In caz-ul deblocari telefonului lucrurile nu stau chiar asa de simplu

(cu exceptia cazului in care adoptam aceeasi metoda ca mai sus)

Tin sa trag atentia ca copierea memoriei dintr-un telefon in altu atrage dupa

sine si copierea IMEI-uli cea ce este ilegal in unele tari ( habar nu am daca

si in romania dar parca stiam ca tine tot de legea copyright-ului )

Fiecare telefon are IMEI-ul propriu si unic si il putei vizualiza pe aproape

orice telefon cu *#06#

In cosencinta ar fi foarte bine daca am lucra pe dumpul de memorie al

telefonului in cauza !

VI . Practica :

Sa presupunem ca avem un telefon celular de genu Alcatel HC 1 care este

blocat (SPLock code). Dar stim ca :))

Imei location 0x160 - 0x169

SPLock location 0x16A - 0x187

Acest telefon  foloseste o memorie de tip 24c04 sau 24c046 (standard I2C)

Prima data vom da jos memoria eeprom si o vom citi cu programatorul de eepromuri

si o vom salva intr-un fisier de binar . (Aveti grija cu salvatul memoriei

caci daca o pierdeti sar putea ca mai tarziu sa fie unica solutie de a pune

telefonul in functiune :)) Dupa ce am salvat memoria intram cu un editor hexa

in ea si vom rescrie octeti de la 0x016A la 0x0187 cu 0 !

si gata SpLock code-ul este sters si telefonul deblocat !

Lipiti memoria la loc si ENGAGE !  !

Multi dintre voi veti intreba de unde puteti obtine informatile acestea ?

Raspunsul meu este : De internet nu ati auzit ? Ia da-ti o raita pe la

boardul de la www.gsmag.com !!

Sa nu credeti ca totul este asa de simplu ! Povestea cu alcatelul este cel

mai simplu exemplu cu putinta ! Ia priviti cum arata un Philips Diga :

04d - 050      security,

0d0 - 0fd      SP-lock area (0d0 > checksum), for not locked :

  0d0 : cc 02 31 32 33 34 00 00 00 00 00 00 .... 00

500 - 515      IMEI area  :

500 > checksum , 506 - 50d IMEI open , 50e - 515 IMEI scrambled ,

501 - 505 : 02 31 32 33 34 .

pentru inlocuirea IMEI-ului trebuie sa inlocuiti secventa de octeti

de la 500 la 515 din alt dump de memorie (cel original).

No acum vo cam pierit pofta de deblocat telefoane ... ! :)))

VII. Nu exista alta cale ?

Ba exista si alta cale de a debloca telefoane (la Erricson

stiu sigur) si anume printr-o interfata legata la calculator (portul

serial) ,dar pentru astea tre' sa mai sapati prin internet ...

VIII. Disclaimer :)

Tot cea ce gasiti aici este in scopuri pure educationale si nu imi

asum nici o raspundere pentru pagubele materiale , morale sau fizice !

(Na ca v-am spus-o si pe asta)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...