Page 3 of 8

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 22 Mar 2010, o 01:24
by pawelooss
Czy słychać już coś nowego w kwestii modyfikowania MCU? ;D

Może jest już jakaś podmianka choćby wersji softu *#0000# (screen request)? ;>

Fajnie byłoby przekonać się, że edycja jest już możliwa! :D

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 22 Mar 2010, o 19:55
by maciek
kurupt wrote:Oj przydało by przydało... może by się wreszcie forum rozruszało, a nie tylko spory, kłótnie i sprzeczki.


Ale z drugiej strony, jak to pięknie ndt ujął, to co userom bez doświadczenia da modding? Podmiana tekstu pod *#0000# ? Nawet jeśli, to mody nie byłyby zaawansowane, póki ktoś nie znalazłby sposobu na powiększenie mcu, bo zasoby wolne do wykorzystania są znikome.

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 22 Mar 2010, o 20:30
by ndt
[ifile #0: D:/NSN/Nokia/BB5/3110c_rm237/rm237__07.21.mcusw ]
----------------------------------------------------

----------------------
'Flash, Dev: 0':
Start : 0x00200400
End : 0x00310000
Length: 0x0010FC00

Searching for FFFFFFFF...
0x0021A9C0 - 0x0021FFFF: 21.6 KB
0x00231E70 - 0x00231FFF: 400 B
0x00232D80 - 0x00232FFF: 640 B
0x00238400 - 0x00238FFF: 3.0 KB
0x00240140 - 0x00245FFF: 23.7 KB
0x00246CE0 - 0x00247FFF: 4.8 KB
0x00248CB0 - 0x00248FFF: 848 B
0x00249340 - 0x00249FFF: 3.2 KB
0x00269490 - 0x00269FFF: 2.9 KB
0x0026DF00 - 0x0026DFFF: 256 B
0x00271A40 - 0x00271FFF: 1.4 KB
0x00281340 - 0x00281FFF: 3.2 KB
0x00284B10 - 0x00284FFF: 1.2 KB
0x002888C0 - 0x00288FFF: 1.8 KB
0x0028DE80 - 0x0028DFFF: 384 B
0x00290000 - 0x00299FFF: 40.0 KB
0x002B17D0 - 0x002B9FFF: 34.0 KB
0x002C7640 - 0x002C9FFF: 10.4 KB
0x002D0000 - 0x002D0FFF: 4.0 KB
0x002DF000 - 0x002E9FFF: 44.0 KB
0x002ED000 - 0x002F9FFF: 52.0 KB
0x002FF490 - 0x00309FFF: 42.9 KB

Total free space (00000000...): 0 B
Total free space (FFFFFFFF...): 296.6 KB



----------------------
'Flash, Dev: 0':
Start : 0x00320400
End : 0x0101FF80
Length: 0x00CFFB80

Searching for 00000000...
0x00D7C680 - 0x00D7C7BF: 320 B
0x00D93D40 - 0x00D93E6F: 304 B
0x00D98020 - 0x00D9899F: 2.4 KB
0x00DB3210 - 0x00DB357F: 880 B
0x00DC01B0 - 0x00DC02AF: 256 B
0x00DF42E0 - 0x00DF441F: 320 B
0x00E15850 - 0x00E15A0F: 448 B
0x00E21190 - 0x00E212AF: 288 B
0x00E29340 - 0x00E2952F: 496 B
0x00E296B0 - 0x00E297EF: 320 B
0x00E2A330 - 0x00E2A4DF: 432 B
0x00E2B310 - 0x00E2B4EF: 480 B
0x00E2B7D0 - 0x00E2B96F: 416 B
0x00E2C2A0 - 0x00E2C62F: 912 B
0x00E2E0C0 - 0x00E2E1EF: 304 B
0x00E568E0 - 0x00E5709F: 1.9 KB
0x00F62730 - 0x00F628AF: 384 B
0x00FC9850 - 0x00FC9A3F: 496 B
0x00FCA910 - 0x00FCABFF: 752 B
0x00FCDF00 - 0x00FCE06F: 368 B
0x00FCE300 - 0x00FCE47F: 384 B
0x00FCEF00 - 0x00FCF0EF: 496 B
0x00FD09B0 - 0x00FD0B9F: 496 B
0x00FD0BD0 - 0x00FD0CDF: 272 B
0x00FD1E50 - 0x00FD203F: 496 B
0x010064C0 - 0x0100663F: 384 B
0x0100E8B0 - 0x0100EBDF: 816 B
0x01018EA0 - 0x0101904F: 432 B
0x0101DA20 - 0x0101DB2F: 272 B

Searching for FFFFFFFF...
0x00FD2150 - 0x00FD233F: 496 B
0x01068480 - 0x01080000: 95.0KB

Total free space (00000000...): 16.3 KB
Total free space (FFFFFFFF...): 95.4KB


Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 22 Mar 2010, o 21:15
by maciek
kurupt wrote:ndt, rozumiem, że to jest proces podmiany tekstu pod *#0000#?


"Wykaz" wolnego miejsca w firmware.

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 22 Mar 2010, o 21:30
by kurupt
To jest przed modyfikacjami ...
Code: Select all
Please Login or Register, to see this Content

a to już po ... ?
Code: Select all
Please Login or Register, to see this Content


No dobra, to nasuwa się pytanie : czy jest jakiś sposób na powiększenie tej pamięci, usunięcie "zbędnych" ( jeżeli takowe są... ) rzeczy z MCU ?

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 22 Mar 2010, o 21:33
by maciek
kurupt wrote:usunięcie "zbędnych" ( jeżeli takowe są... )


Raczej takich nie ma;)

kurupt wrote:czy jest jakiś sposób na powiększenie tej pamięci


Jest. Winhex go go xD A tak na serio to dodać w hex edytorze i przeliczyć hashe. Wg mnie:)

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 23 Mar 2010, o 10:07
by ndt
plik mcusw jest podzielony na wiele segmentów w zależności od stanu w jakim w danym momencie się znajduje (włączony i zalogowany do sieci), wyłączony, idle, wyłączony z ładowarką, transfer plików etc. system manager ładuje odpowiedni kod kiedy tylko go potrzebuje (a.k.a DMA). Powyższy skrypt pokazuje wolne miejsce (są dwa rodzaje, same 0000 lub same fff...) w dwóch przypadkach - charging state (acting dead) i normal state. Nie ma tego dużo bo i nie powinno tam być więcej miejsca (jest ono dynamicznie dodawane w razie potrzeby) ale na podmianę *0000# wystarczy ;)

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 6 Jun 2010, o 00:08
by pawelooss
ndt, i jak? Jest szansa, że opublikujesz swój skrypt na zmianę informacji o wersji softu?
Choćby tyle, byśmy mogli np. obrandować sobie patche, a później może znalazłby się też ktoś, kto by to i dalej pociągnął. :)

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 6 Jun 2010, o 10:24
by ndt
problemem jest że każdy plik jest zabezpieczony innym kluczem, nie mam pomysłu jak sprawić aby działało to na każdym fw

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 6 Jun 2010, o 23:57
by pawelooss
Rozumiem, że dla każdego modelu jest inny key? Słyszałem, że zaiste istnieje coś takiego, co uniemożliwia łatwe zdejmowanie SIM-Locków z BB5 (w sensie, że każda płyta główna posiada inny "magic key").

Ale podejrzewam, że taki klucz można jednak wyciągnąć / odczytać, skoro Tobie się to udało.

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 7 Jun 2010, o 17:18
by maciek
ndt, dalczego opcja import jets niedostepna?

http://img695.imageshack.us/i/mcu.png/

w pliku raw trzeba przeliczac sumy?

kombinuje z tym jak głupi i nie wiem co dalej :wtf:

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 17 Jun 2010, o 22:26
by RicoElectrico
Adrian, nie zgodzę się z tobą. Chociażby w DCT-3 w netmonie był taki test (memory dump) co wymagał skompilowania softu z ustawioną stałą w pliku ftd_conf.h , a .h to format nagłówkowy C.
Nikt o zdrowych zmysłach nie pisałby tak rozległego softu w asmie poza tym na bank używają bibliotek firm trzecich które zwykle pisane jest w C. Nie zaprzeczam, że bootloader/security/czasowo krytyczne funkcje mogą być wstawkami z asma.

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 17 Jun 2010, o 22:52
by maciek
mcu jest pisane w c, kompilowane do elfa po czym do flasha

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 16 Aug 2010, o 06:58
by hisnense
pawelooss wrote:Czy słychać już coś nowego w kwestii modyfikowania MCU? ;D

Może jest już jakaś podmianka choćby wersji softu *#0000# (screen request)? ;>

Fajnie byłoby przekonać się, że edycja jest już możliwa! :D


Edycja *#0000# odpada, no chyba ze wersja PPM i grzebanie przy PPM, nokia calosc glownego softu ma na certyfikatach RSA (nie, kluczy prywatnych nie ma nigdzie w telefonie) i jest to takie dosyc wysokie hi-tech jezeli o same zabezpieczenia chodzi i nie tyle Nokia sie wami/nami martwi co Chinskimi fabrykami co by wpadly na pomysl ze przeciez wystarczy wziasc 5200/5300 przelutowac wszystko na nowe PCB, zmienic w sofcie aby wyswietlalo 8800 z aktualna wersja softu i voila, rynek idealnych podrób by zakwitl, juz nie mowiac o innych wariacjach typu ten sam procesor czasami siedzi w modelu za kilkadziesiat euro jak i za kilkaset :)

Co do samego grzebania w sofcie, to nie zebym demotywowal, ale sprowadzajac na ziemie wszystkich w tym temacie to cos jak wyprawa na ksiezyc z odkurzaczem na plecach. Na to aby simlocka sciagnac najlepsi programisci GSM sie glowili ponad 5 lat zeby tylko zdolac wykonac kilka wlasnych instrukcji omijajac RSA i inne zabezpieczenia (pokonane przy tym zostalo nawet do dzisiaj reklamowane jako super bezpieczne TrustZone do ktorego brak dokumentacji i ktorego tworcy pewnie nadal uwazaja ze nie da sie tego ruszyc), jakby sprawa byla taka prosta to simlocka kablem USB by sie sciagalo ze wszystkich modeli i zmiana IMEI przebiegala samym flashowaniem.

Re: Rozgryzanie MCU! Dyskusje ogólne o kodzie wykonywalnym.

PostPosted: 16 Aug 2010, o 08:59
by pawelooss
hisnense, czyli uważasz, że zapewnienia jednej osoby biegle zajmującej się softami (która wszak dopracowała PPModda do BB5), że udało jej się zmienić tę informację o wersji softu, ale to działa tylko na 1 telefonie, bo jakieś sumy, kody czy co tam jest zostały tylko dla tego 1 egzemplarza (gdyż w każdym są ponoć inne) ręcznie przekalkulowane, to zwykłe mrzonki?

Do struktury MCU, jako takiego głównego podziału, też udało się dokopać:

Image