Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Motorola Forum > Motorola Milestone Forum > Root / Hacking / Modding für Motorola Milestone

Signatur doch überlisten?

Das Thema "Signatur doch überlisten?" befindet sich unter Root / Hacking / Modding für Motorola Milestone auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 27.01.2010, 03:37   #1 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von Spacefish

Modell: Motorola Milestone

Registriert seit: 12.01.2010
Beiträge: 78
Abgegebene Danke: 10
Erhielt 33 Danke für 10 Beiträge
Spacefish eine Nachricht über ICQ schicken
Standard Signatur doch überlisten?

folgende Übersicht über das NAND zeigt das der z.B. mbmloader und mbm (motorola boot manager) ihre signaturen von einer festen Adresse offset im NAND nehmen. Die baseband software nimmt z.B. ihre sig von 0x643ff800 - 0x643fffff, Die ganzen SignatureAdressen liegen ja irgendwie weit verstreut rum wenn man sich die adressbereiche des NAND so anschaut (0x00000000-0x20000000). Vermtl. weisen die Adressen entweder auf zusätzliche Speicherbausteine oder auf Zellen im NAND die von der MMU gemappt werden.. evtl. sind es aber auch efuses / speicher die direkt im Silizium des Prozessors verarbeitet sind (was doof wäre). Was mir jetzt noch auffält, ist, dass für alle Signaturen die die Baseband SW betreffen die Adressen 0x6* sind und bei den anderen 0x8* b.z.w. 0xffff...
Würde es gelingen die MMU zu hacken oder irgendwie auf den Adressbus des Systems einfluss zu nehmen, könnte man einen gefakten key injecten und eigenst signierten Code laden..

Weiß einer von Euch ob es in linux eine möglichkeit gibt per syscall speicheradressen auszulesen?

Code:
CG_num: 63
CG_name: mbmloader
signature_type: 0
start_addr: 0x00000000
end_addr: 0x00020000
signature_start_addr: 0x8701ff80
signature_end_addr:  0x8702077f

CG_num: 30
CG_name: mbm
signature_type: 0
start_addr: 0x00020000
end_addr: 0x000c0000
signature_start_addr: 0x8f34f800
signature_end_addr:  0x8f34ffff

CG_num: 55
CG_name: mbmbackup
signature_type: 0
start_addr: 0x000c0000
end_addr: 0x00160000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 56
CG_name: bploader
signature_type: 0
start_addr: 0x00160000
end_addr: 0x001c0000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 31
CG_name: cdt.bin
signature_type: 1
start_addr: 0x001c0000
end_addr: 0x00220000
signature_start_addr: 0x8f073800
signature_end_addr:  0x8f073fff

CG_num: 38
CG_name: pds
signature_type: 0
start_addr: 0x00220000
end_addr: 0x003a0000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 34
CG_name: lbl
signature_type: 1
start_addr: 0x003a0000
end_addr: 0x00400000
signature_start_addr: 0x80d03800
signature_end_addr:  0x80d03fff

CG_num: 57
CG_name: lbl_backup
signature_type: 1
start_addr: 0x00400000
end_addr: 0x00460000
signature_start_addr: 0x80d03800
signature_end_addr:  0x80d03fff

CG_num: 43
CG_name: cid
signature_type: 0
start_addr: 0x00460000
end_addr: 0x004c0000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 41
CG_name: sp
signature_type: 0
start_addr: 0x004c0000
end_addr: 0x00640000
signature_start_addr: 0x8f1af800
signature_end_addr:  0x8f1affff

CG_num: 61
CG_name: devtree
signature_type: 1
start_addr: 0x00640000
end_addr: 0x006a0000
signature_start_addr: 0x8f0af800
signature_end_addr:  0x8f0affff

CG_num: 42
CG_name: logo.bin
signature_type: 0
start_addr: 0x006a0000
end_addr: 0x00740000
signature_start_addr: 0x8eeaf800
signature_end_addr:  0x8eeaffff

CG_num: 44
CG_name: misc
signature_type: 0
start_addr: 0x00740000
end_addr: 0x007a0000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 35
CG_name: boot
signature_type: 1
start_addr: 0x007a0000
end_addr: 0x00b20000
signature_start_addr: 0x813bf800
signature_end_addr:  0x813bffff

CG_num: 45
CG_name: bpsw
signature_type: 2
start_addr: 0x00b20000
end_addr: 0x00ee0000
signature_start_addr: 0x643ff800
signature_end_addr:  0x643fffff

CG_num: 47
CG_name: recovery
signature_type: 1
start_addr: 0x00ee0000
end_addr: 0x01360000
signature_start_addr: 0x814bf800
signature_end_addr:  0x814bffff

CG_num: 33
CG_name: cdrom
signature_type: 5
start_addr: 0x01360000
end_addr: 0x01c80000
signature_start_addr: 0x827df800
signature_end_addr:  0x827dffff

CG_num: 39
CG_name: system
signature_type: 5
start_addr: 0x01c80000
end_addr: 0x0cc80000
signature_start_addr: 0x8ca1f800
signature_end_addr:  0x8ca1ffff

CG_num: 40
CG_name: cache
signature_type: 0
start_addr: 0x0cc80000
end_addr: 0x13680000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 37
CG_name: userdata
signature_type: 0
start_addr: 0x13680000
end_addr: 0x1fba0000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 36
CG_name: cust
signature_type: 5
start_addr: 0x1fba0000
end_addr: 0x1fd80000
signature_start_addr: 0x8211f800
signature_end_addr:  0x8211ffff

CG_num: 53
CG_name: kpanic
signature_type: 0
start_addr: 0x1fd80000
end_addr: 0x1ff80000
signature_start_addr: 0xffffffff
signature_end_addr:  0xffffffff

CG_num: 54
CG_name: rsv
signature_type: 0
start_addr: 0x1ff80000
end_addr: 0x20000000
signature_start_addr: 0x00000000
signature_end_addr:  0x00000000
Spacefish ist offline   Mit Zitat antworten
Alt 27.01.2010, 08:48   #2 (permalink)
Android-Hilfe.de Mitglied

Modell: Motorola Milestone

Registriert seit: 01.11.2009
Beiträge: 157
Abgegebene Danke: 87
Erhielt 9 Danke für 9 Beiträge
Standard AW: Signatur doch überlisten?

Vielleicht verstehe ich dich falsch ... aber /dev/mtd... sollte das von dir gesuchte sein oder? Oder meinst du /dev/mem ?
prodigy7 ist offline   Mit Zitat antworten
Alt 27.01.2010, 12:52   #3 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von Spacefish

Modell: Motorola Milestone

Registriert seit: 12.01.2010
Beiträge: 78
Abgegebene Danke: 10
Erhielt 33 Danke für 10 Beiträge
Spacefish eine Nachricht über ICQ schicken
Standard AW: Signatur doch überlisten?

hm /dev/mtd bietet nur Zugriff auf bestimmte Teile des NAND und nicht auf das komplette (man müsste andere Parameter im Bootloader für den Kernel setzen) /dev/mem bietet auch nur Zugriff auf den Bereich, der dem linux das läuft zugeordnet ist falls ich mich nicht irre. Adressen wie 0x8701ff80 lassen sich darüber vermtl. nicht ansprechen, aber ich versuchs mal.
Spacefish ist offline   Mit Zitat antworten
Alt 27.01.2010, 13:04   #4 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von Spacefish

Modell: Motorola Milestone

Registriert seit: 12.01.2010
Beiträge: 78
Abgegebene Danke: 10
Erhielt 33 Danke für 10 Beiträge
Spacefish eine Nachricht über ICQ schicken
Standard AW: Signatur doch überlisten?

/dev/mem schickt nur ne kernelmessage mit "bad adress" wenn man probiert drauf zuzugreifen. /dev/kmem löst kernelpanic aus oder so und der Stein startet neu.
Spacefish ist offline   Mit Zitat antworten
Alt 27.01.2010, 14:46   #5 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von the_tool

Modell: Nexus One

Registriert seit: 09.12.2009
Beiträge: 129
Abgegebene Danke: 3
Erhielt 12 Danke für 10 Beiträge
Standard AW: Signatur doch überlisten?

Dass du da eine Kernel-Panic bekommst wundert mich nicht -- schliesslich sind das Adressen die im R0 laufen, die Du nicht so einfach im R3 auslesen kannst. Was einen Versuch wert wäre ist, dass Du versucht ein kleines Kernel-Modul zu schreiben dass im Kernel-Mode läuft und so die Adressen dann direkt im Speicher verändert.
the_tool ist offline   Mit Zitat antworten
Alt 27.01.2010, 15:46   #6 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von Spacefish

Modell: Motorola Milestone

Registriert seit: 12.01.2010
Beiträge: 78
Abgegebene Danke: 10
Erhielt 33 Danke für 10 Beiträge
Spacefish eine Nachricht über ICQ schicken
Standard AW: Signatur doch überlisten?

denkst du nicht das Ring0 in dem Fall auch nur gemappt wird? also nur auf einen bestimmten speicherbereich? Kernelmodule laden ob das geht`!
Spacefish ist offline   Mit Zitat antworten
Alt 27.01.2010, 16:46   #7 (permalink)
Android-Hilfe.de Mitglied

Modell: Motorola Milestone

Registriert seit: 16.01.2010
Beiträge: 143
Abgegebene Danke: 21
Erhielt 24 Danke für 18 Beiträge
Standard AW: Signatur doch überlisten?

Off-Topic (sorry, muss sein ;D ):
Kurze Zwischenfrage: die Rede ist immer vom "NAND"... ist das nicht einfach ein Flash-Speicher, der mit NAND Gattern realisiert worden ist?
Für mich hört sich das immer so an, als ob man vom BIOS sprechen würde. Ist der NAND-Speicher das Pendant zum BIOS beim ausgewachsenen PC?

Chris
KurrKurr ist offline   Mit Zitat antworten
Alt 27.01.2010, 17:44   #8 (permalink)
Erfahrener Benutzer

Modell: Motorola Milestone

Registriert seit: 12.12.2009
Beiträge: 234
Abgegebene Danke: 14
Erhielt 46 Danke für 32 Beiträge
Standard AW: Signatur doch überlisten?

der nand flash ist einfach nur der angeschlossene speicher, wo bootloader, os usw usw drauf sind.

spacefish laden von kernelmodulen geht problemlos.
im recovery hast du übrigens über /dev/mtd weitaus mehr zugriff als im "normalzustand".
Eventuell könnte für dich auch ein blick auf start [And Developers] interessant sein
sharky ist offline   Mit Zitat antworten
Folgende Benutzer bedanken sich bei sharky für diesen Beitrag:
KurrKurr (27.01.2010), Spacefish (27.01.2010)
Alt 27.01.2010, 18:32   #9 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von Spacefish

Modell: Motorola Milestone

Registriert seit: 12.01.2010
Beiträge: 78
Abgegebene Danke: 10
Erhielt 33 Danke für 10 Beiträge
Spacefish eine Nachricht über ICQ schicken
Standard AW: Signatur doch überlisten?

@sharky danke für den Link!
Spacefish ist offline   Mit Zitat antworten
Alt 27.01.2010, 18:33   #10 (permalink)
Android-Hilfe.de Mitglied
 
Benutzerbild von Spacefish

Modell: Motorola Milestone

Registriert seit: 12.01.2010
Beiträge: 78
Abgegebene Danke: 10
Erhielt 33 Danke für 10 Beiträge
Spacefish eine Nachricht über ICQ schicken
Standard AW: Signatur doch überlisten?

Zitat:
Zitat von KurrKurr Beitrag anzeigen
Off-Topic (sorry, muss sein ;D ):
Kurze Zwischenfrage: die Rede ist immer vom "NAND"... ist das nicht einfach ein Flash-Speicher, der mit NAND Gattern realisiert worden ist?
Für mich hört sich das immer so an, als ob man vom BIOS sprechen würde. Ist der NAND-Speicher das Pendant zum BIOS beim ausgewachsenen PC?

Chris
Naja da hast du prinzipiell recht ein NAND Speicher ist einfach ein Speicher in dem daten in NAND Gattern gespeichert werden, im milestone ist der 512MB groß und es ist eben fast alles auf ihm gespeichert was an software im Stein läuft, auch die Software des Baseband Prozessors u.s.w.
Spacefish ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
Signatur: eindeutige Begrenzung muss her! Autarkis Anregungen 89 01.01.2011 18:11
E-Mail Client mit GPS Koordinaten Signatur DB1234 Kommunikation 1 30.10.2009 11:26
E-Mail Signatur Corv Android Allgemein 3 19.08.2009 14:10
Twitter Signatur hier im Forum skywalka Anregungen 14 07.06.2009 09:42
Signatur im GMail-App? athuruga T-Mobile G1 Forum 3 23.02.2009 12:30




Du liest gerade: "Signatur doch überlisten?" unter "Root / Hacking / Modding für Motorola Milestone" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.