290 likes | 414 Views
Proseminar TUM Informatik. PalmPilot und Handspring: Technik, Programmierung, Anwendung Hacks 15.11.2001 Daniel Schweighart Daniel@Schweighart.net. Übersicht. Grundlegendes Probleme Hackmanager Hackprogrammierung Bekannte Hacks. OS-Aufbau. Betriebssystem im Rom
E N D
Proseminar TUM Informatik PalmPilot und Handspring: Technik, Programmierung, Anwendung Hacks 15.11.2001 Daniel Schweighart Daniel@Schweighart.net
Übersicht • Grundlegendes • Probleme • Hackmanager • Hackprogrammierung • Bekannte Hacks
OS-Aufbau • Betriebssystem im Rom • Funktionsadressen im Ram (Trap-Tabelle) Ram Rom Funktionsaufruf Trap Tabelle Betriebssystem
Traps • Tabelle im Ram • Palm OS 4 hat über 1000 Trap-Nummern • Nummern fortlaufend ab 0xA000 vergeben • Kurzer Befehl (32-Bit-Zahl)
Was ist ein Hack? Anwendungsübergreifende Funktionen Kein eigenes Icon im Launcher Aktivierung über Hackmanager Ähnlich wie TSR-Programme unter Dos
Wie funktioniert ein Hack? • Umleitung der Trap Adresse auf eigenen Programmcode Ersetzen / Erweitern der Betriebssystemfunktion • Zuletzt gestarteter Hack wird zuerst aufgerufen
Übersicht • Grundlegendes • Probleme • Hackmanager • Hackprogrammierung • Bekannte Hacks
Probleme Trap Tabelle Rom Normaler Funktionsaufruf
Probleme Trap Tabelle Rom A Laden von Hack A
Probleme Trap Tabelle Rom B A Laden von Hack B
Probleme Trap Tabelle Rom B A Schließen von Hack A
Probleme Trap Tabelle Rom B A Schließen von Hack B
Übersicht • Grundlegendes • Probleme • Hackmanager • Hackprogrammierung • Bekannte Hacks
Hackmanager • Verwaltet das Patchen der Traps • Verhindert Konflikte beim Patchen • Keine Verwendung mehrerer Hackmanager möglich • Gängigste Hackmanager: Hackmaster, EVPlugBase, X-Master, Tealmaster.
Hackmaster • Erster Hackmanager • Entwickelt 1996 von Edward Keys • seit 1997 keine Weiterentwicklung • Shareware 5$ • http://www.daggerware.com/
EVPlugBase • Entwickelt 1998 von EVSoft • Letzte Version von Ende 1999 • Schützt aktive Hacks vor Überschreiben • Unterstützt Gruppierung von Hacks • Anzeige der gepatchten Funktionen • Reihenfolge der Hacks • Erweiterung der API durch eigene Funktionen
X-Master • Freeware • Entwickelt 2000 von Linkesoft • Schützt aktive Hacks vor Überschreiben • Unterstützt Gruppierung von Hacks • Anzeige der gepatchten Funktionen • Reihenfolge der Hacks • http://linkesoft.de
Tealmaster • Kommerziell 9.95$ • Entwickelt 2001 von Tealpoint • Schützt aktive Hacks vor Überschreiben • Unterstützt Gruppierung von Hacks • Anzeige der gepatchten Funktionen • Hack-Priorität • http://www.tealpoint.com
Übersicht • Grundlegendes • Probleme • Hackmanager • Hackprogrammierung • Bekannte Hacks
Hackprogrammierung • Erweiterung vorhandener Systemroutinen Keine Fehlerbehandlung nötig Schwer zu Debuggen, da kein vollständiges Programm
Speicher • Keine globalen Variablen • Hack läuft im Stack-Frame der Anwendung • Features: Anwendungsübergreifende Variable (32-Bit-Wort) • Große Variablen Datenbank (langsam)
Kompatibilität • Was ist zu beachten? • Keine undokumentierten Funktionen benutzen • Nur API-Funktionen verwenden • Nach Hack Aufruf: Aufruf der original Funktion • Keine Optimierung auf bestimmte Hackmanager
Übersicht • Grundlegendes • Probleme • Hackmanager • Hackprogrammierung • Bekannte Hacks
Bekannte Hacks • Glowhack: http://www.dovcom.com • Findhack: http://perso.wanadoo.fr/fpillet/ • Quickwrite Hack: http://www.mobi-systems.com • Über 350 Hacks auf http://www.palmgear.com
Quellen • ct 16 / 2001 • http://www.daggerware.com/ • http://linkesoft.de • http://www.tealpoint.com