PDroid Custom ROM Patch – Datenschutz für Android Teil3

PDroid1. Patch-Verfahren PDroid

Während der erste Teil der Artikelserie »Datenschutz für Android« von aSpotCat handelte, beschäftige sich Teil 2 mit dem Vergleich von PDroid und LBE Privacy Guard (nicht mehr verfügbar). Das Ergebnis: PDroid eignet sich weitaus besser zum Schutz sensibler Daten, lässt sich im Gegensatz zu LBE Privacy Guard allerdings lediglich über ein kompliziertes Patch-Verfahren installieren.

Update

28.11.2017: Diese Artikelserie ist mittlerweile veraltet. Wer die Herrschaft und Kontrolle über sein Android-Smartphone anstrebt, dem kann ich die Artikelserie »Your phone – Your data« oder »Android unter Kontrolle« ans Herz legen.

Im vorliegenden Beitrag möchte ich euch Schritt für Schritt erklären, wie sich PDroid in euer Android ICS-(Ice Cream Sandwich) bzw. JB-(Jelly Bean) integrieren lässt. Der Vorgang ist im Prinzip nicht schwierig, hält allerdings ein paar »Stolpersteine« bereit. Zunächst werden ein paar Begriffe erklärt und Vorraussetzungen für die Installation beschrieben. Im Anschluss erhaltet ihr sowohl für Windows, als auch für MacOS / Linux eine Anleitung zum manuellen Patchen eures Custom-ROMs.

Dieser Beitrag ist Teil einer Artikelserie:

2. Begriffsdefinition

Root? Custom-ROM? ROM-Patching? Für Neulinge sind diese Begriffe zunächst »böhmische Dörfer«. Im Folgenden werden die Begriffe kurz erläutert.

Hilf mit die Spendenziele zu erreichen!

Unabhängig. Kritisch. Informativ. Praxisnah. Verständlich.

Die Arbeit von kuketz-blog.de wird vollständig durch Spenden unserer Leserschaft finanziert. Sei Teil unserer Community und unterstütze unsere Arbeit mit einer Spende.

Mitmachen ➡

2.1 Root

Umgangssprachlich nennt sich die Freischaltung für den vollständigen Zugriff auf das Betriebssystem und dessen Ressourcen bei einem Android Gerät »rooten«. Es befähigt den Anwender Änderungen an Android vorzunehmen, die vom Hersteller so nicht vorgesehen worden sind. Hierzu zählen bspw. die Modifikation vom System, die Installation von Custom-ROMs oder das System mit neuen Funktionen nachzurüsten. Einige Apps für Android benötigen Root-Rechte, damit sie überhaupt funktionieren. Um PDroid letztendlich installieren zu können benötigt ihr also zunächst Root-Zugriff auf euer Gerät. Über Root könnt ihr im DroidWiki weiteren Informationen in Erfahrung bringen. Entsprechende Root-Anleitungen findet ihr bspw. auf den folgenden Webseiten bzw. Android-Foren:

  • Android-Hilfe Forum: In der Hauptforen-Ansicht werden eine Vielzahl von Hersteller und Geräten aufgelistet. Höchstwahrscheinlich wird euer Gerät hierbei ebenfalls genannt. Im entsprechenden Unterforum findet ihr dann meist entsprechende Anleitungen zum Rooten eures Geräts.
  • AndroidPIT Forum: Einen ähnlichen Service bietet AndroidPIT. Auch dieses Forum enthält Anleitungen zu unterschiedlichen Geräten.
  • Eine Web-Suche nach entsprechendem Muster »root Gerätename« führt meist ebenfalls zu passenden Anleitungen für den Root-Vorgang.

Vorsicht: Durch den Root-Zugriff verliert ihr (zumindest auf dem Papier) die Garantie bzw. Gewährleistung. Nicht alles das, was die Hersteller in ihren Warnhinweisen schreiben, hat allerdings für Deutschland auch Geltung…

2.2 Custom-ROM

Als ROM wird die Firmware eures Android Geräts bezeichnet. Kauft ihr ein Android Gerät ist dort zunächst ein sogenanntes »Stock-ROM« vorinstalliert. Stock-ROMs basieren im Grunde auf Android, beinhalten allerdings oftmals modifizierte Oberflächen (HTC Sense, Samsung TouchWiz) und ersetzen Standard-Apps durch herstellereigene Anwendungen.

Custom-ROMs sind inoffizielle Firmwares / Betriebssysteme für Android Geräte. Sie basieren ebenfalls auf Android oder auf einem modifizierten Stock-ROM. Gegenüber der herkömmlichen, vom Hersteller mitgelieferten Firmware bieten Custom-ROMs neben zusätzlichen Funktionen oftmals Verbesserungen hinsichtlich der Leistung und Stabilität.

Neben einem gerooteten Gerät wird für die Installation von PDroid ein Custom-ROM vorausgesetzt. Lediglich Custom-ROMs ermöglichen den Zugriff auf eine Deodex-Dateistruktur und ermöglichen dadurch die nachträgliche Veränderung von Android-Systemdateien.

Besonders das CyanogenMod zählt zu den bekanntesten und weit verbreitetsten Custom-ROMs. Die weite Verbreitung lässt sich unter anderem auf eine breite Unterstützung unterschiedlicher Geräte zurückführen. Gerade bei neuen Smartphone- oder Tablet Modellen, schafft es die CyanogenMod-Community meist sehr schnell, eine mehr oder weniger flüssig funktionierende CM Version bereitzustellen.

2.3 ROM-Patch

Durch einen ROM-Patch werden Systemdateien modifiziert und neue Funktionen in das ROM nachgerüstet. Dieser Vorgang wird für die Inbetriebnahme von PDroid benötigt und wird im Folgenden Abschnitt ausführlich erläutert.

3. Custom-ROM patchen

3.1 Voraussetzungen

Folgende Voraussetzungen sollten erfüllt sein:

  • Root-Zugang bzw. ein gerootetes Android Gerät
  • Ein Custom ROM:
    • CyanogenMod
    • AOKP (AOKP, AOKP-JB)
    • ParanoidAndroid
    • AOSP bzw. ein auf AOSP basiertes ROM
    • … weitere ROM’s werden eventuell auch unterstützt
  • Etwas Geduld und Windows bzw. Mac / Linux

3.2 Windows ab XP

Für Windows existiert das Tool ApG. Es ist eine grafische Oberfläche für das Tool Auto-Patcher von den beiden Entwicklern pastime1971 und mateorod aus dem XDA-Developer Forum. Mit dem Tool können Windows-Anwender Custom ROMs nachträglich patchen. Neben PDroid unterstützt der Auto-Patcher noch weitere Modifikationen, die nachträglich in das ROM integriert werden können. Wir beschränken uns hier allerdings auf PDroid. Ladet euch die aktuelle Version 1.4.0.0 herunter und startet die Anwendung. Falls ihr Java oder Cygwin nicht installiert habt, wird ApG alle benötigten Abhängigkeiten selbst auflösen.

Update

18.08.2014: Mittlerweile wird auch der Auto-Patcher nicht mehr weiterentwickelt. Daher nochmals der Hinweis auf den alternativen Berechtigungsmanager XPrivacy. Das Tool kann PDroid und Konsorten nicht nur ersetzen, sondern bietet darüber hinaus auch einen größeren Funktionsumfang.

ApG Wie im Bild zu erkennen benutze ich als Custom ROM »AOKP-JB3« für ein Nexus 7. Um den Patch-Vorgang durchzuführen müsst ihr Folgendes tun:

  • Ihr klickt zunächst »No ROM file selected (Click here to browse)« und selektiert euer Custom ROM
  • Als Mod Type wählt ihr »pdroid«
  • Unter »ROM Type« wählt ihr anschließend den passenden ROM-Typ
  • Mit einem Klick auf Start wird der Patch-Vorgang durchgeführt

Anschließend öffnet sich eine Terminal Fenster und zeigt den Patch-Vorgang an. Flash Vorgang Sofern das Patchen funktioniert erhaltet ihr zwei Zip Dateien. Beide Dateien »update.zip« und »restore.zip« kopiert ihr auf den internen USB-Speicher (zb. Downloads) eures Android Geräts. Das »update.zip« bewirkt die Veränderung am ROM, während »restore.zip« den Vorgang wieder umkehren kann. Weiter geht’s unter Punkt 4.

3.3 Linux / Mac OS X

Auch für Linux / Mac OS X verwenden wir den Auto-Patcher zum Patchen des Custom ROMs. Eine grafische Oberfläche wie bei Windows existiert jedoch nicht, weshalb der Patch-Vorgang über das Terminal durchgeführt wird. Ladet euch die neueste Version 2.1.75 (Auto-Patcher) herunter und entpackt das Zip File. Anschließend kopiert ihr euer Custom ROM in das entpackte Verzeichnis und öffnet ein Terminal. Der Befehlssatz für den Auto-Patcher lautet:

./auto_patcher < ROMNAME >.zip < MODTYPE> < ROMTYPE >

Die <> ersetzt ihr mit den passenden Werten:

  • ROMNAME – Name des ROMs
  • MODTYPE – Name des zu patchenden Mods
  • ROMTYPE – cm7,cm9,cm10,aokp,aokp-jb,aosp, aosp-jb oder aosp-mod

Hier ein Beispiel:

./auto_patcher aokp_grouper_jb_build-3.zip pdroid aokp-jb
  • ROMNAME – aokp_grouper_jb_build-3.zip
  • MODTYPE – pdroid
  • ROMTYPE – aokp-jb

Ich patche hier ein Custom ROM »AOKP-JB3« für das Nexus 7 von grouper (ROMNAME) mit pdroid (MODTYPE) für ein AOKP Jelly Bean Release (ROMTYPE). Auto-Patcher Patch Anschließend wird der Patch Vorgang auf dem Terminal ausgegeben. Sofern das Patchen funktioniert erhaltet ihr zwei Zip Dateien. Beide Dateien »update.zip« und »restore.zip« kopiert ihr auf den internen USB-Speicher (zb. Downloads) eures Android Geräts. Das »update.zip« bewirkt die Veränderung am ROM, während »restore.zip« den Vorgang wieder umkehren kann.

4. PDroid ROM-Patch einspielen

4.1 ClockWorkMod

Für die weiteren Schritte empfehle ich das ClockworkMod. Im DroidWiki findet ihr zu dem Tool weitere Informationen und eine Installationsbeschreibung.

4.2 Backup mit nandroid

Vor dem Einspielen des Patches solltet ihr in jedem Fall ein Backup anlegen. Für diesen Zweck hat ClockworkMod das Tool nandroid integriert. Damit könnt ihr ein vollständiges Abbild vom Dateisystem erstellen und bei Bedarf wieder einspielen. Bootet eurer Gerät dazu in den Recovery Mode und führt folgende Schritte durch:

  • backup and restore
  • backup

Nandroid erstellt anschließend ein Backup eures aktuellen Systems. Im Anschluss solltet ihr eine Backup-Kopie auf eurem Rechner ablegen.

4.3 PDroid-Patch

Anschließend bootet ihr wieder in den Recovery Mode, um den PDroid Patch (update.zip) letztendlich in das Custom-ROM zu integrieren:

  1. install zip from sdcard
  2. choose zip from sdcard
  3. Download/ (falls ihr die beiden Files dort abgelegt habt)
  4. update.zip
  5. Yes – Install update.zip
  6. Neustart

Euer ROM ist jetzt für die Verwendung der PDroid App vorbereitet. Falls ihr bei der Installation über den Google Play Store die Meldung erhaltet »Ihr Gerät ist nicht mit dieser Version kompatibel«, könnt ihr PDroid direkt beim Entwickler herunterladen.

5. Fazit

Durch die Unterstützung des Auto-Patchers ist die nachträgliche Integration von PDroid nahezu ein Kinderspiel. Im Anschluss lassen sich sensible Daten und Informationen zuverlässig vor neugierigen Apps schützen.

Während wir nun in der Lage sind die Berechtigungen der installierten Android Apps nachträglich zu beeinflussen, initiierten Systemkomponenten und Anwendungen weiterhin ausgehende Datenverbindungen. Mit DroidWall können wir dies einschränken und kontrollieren. Im Hintergrund greift das Tool hierfür auf den von vielen Linux-Distributionen bekannten Paketfilter iptables zurück.

Über den Autor | Kuketz

Mike Kuketz

In meiner freiberuflichen Tätigkeit als Pentester / Sicherheitsforscher (Kuketz IT-Security) schlüpfe ich in die Rolle eines »Hackers« und suche nach Schwachstellen in IT-Systemen, Webanwendungen und Apps (Android, iOS). Des Weiteren bin ich Lehrbeauftragter für IT-Sicherheit an der Dualen Hochschule Karlsruhe, sensibilisiere Menschen in Workshops und Schulungen für Sicherheit und Datenschutz und bin unter anderem auch als Autor für die Computerzeitschrift c’t tätig.

Der Kuketz-Blog bzw. meine Person ist regelmäßig in den Medien (heise online, Spiegel Online, Süddeutsche Zeitung etc.) präsent.

Mehr Erfahren ➡

SpendeUnterstützen

Die Arbeit von kuketz-blog.de wird zu 100% durch Spenden unserer Leserinnen und Leser finanziert. Werde Teil dieser Community und unterstütze auch du unsere Arbeit mit deiner Spende.

Folge dem Blog

Wenn du über aktuelle Beiträge informiert werden möchtest, hast du verschiedene Möglichkeiten, dem Blog zu folgen:

Bleib aktuell ➡


Diskussion

21 Ergänzungen zu “PDroid Custom ROM Patch – Datenschutz für Android Teil3”

  1. Comment Avatar 4ndr0 sagt:

    Wäre schön, wenn du noch mehr auf das vorgehende Backup eingehst. Also vor irgendwelchen Experimenten EFS-Partition sichern, Nandroid-Backup anfertigen und ggfs. Apps mit Titanium Backup sichern. Und beim Flashen Finger weg vom Bootloader. Dann ist man auf der sicheren Seite ;)

  2. Comment Avatar physikalikus sagt:

    Danke für den sehr informativen Beitrag. Da ich aktuell noch LBE nutze und mich auf den Umstieg zu Pdroid vorbereite, wären die Infos zu Pdroid 2.0 hilfreich. Hattest du Zeit gefunden, um die zweite Version zu testen? Aus meiner Sicht ist das besondere an der zweiten Version die Möglichkeit die kostenpflichtigen Aktionen zu kontrollieren. :-)

  3. Comment Avatar f@bi sagt:

    Ich habe bis vor kurzem den LBE privacy guard benutzt und hab mir nun pdroid installiert. Alles auch kein Problem. Aber wie ich mich dann ein bisschen umgesehen hab, ist mir klar geworden, dass ich bei so manchen Berechtigungen nicht einmal verstehe, was sie bewirken.
    Wäre super, wenn du vielleicht ne kurze Erklärung zu den komplizierteren Berechtigungen schreiben könntest. Z.B. IP Tables oder ICC Access.
    Wollte mich auch durch google schlauer machen und im xda forum, aber bin nicht wirklich schlauer geworden.

  4. Comment Avatar dubdroid sagt:

    Hallo, ich habe hierzu auch mal eine Frage: Reicht es prinzipiell, wenn die ROM deodexed ist, oder muss die ROM, in die ich pdroid flashen möchte, noch weitere Vorraussetzungen erfüllen?

    Grund für meine Anfrage ist, dass ich demnächst mein erstes Android-Phone bekomme, nämlich das HTC One X+. Für dieses gibts aber leider noch kein Cyanogen oder AOKP, sondern nur diverse deodexte ROMs mit Sense (z.b. InsertCoin, ARHD, ….) – sind diese mit dem AutoPatcher flashbar? – Ich bin mir nämlich nicht sicher, da ich (auf xda glaube ich) gelesen habe, dass nur Custom-ROMs ohne aufgesetzte UI (wie Sense) damit funktionieren.
    Und für den Fall, dass es möglich ist, welche Art ROM müsste ich dann im Autopatcher auswählen? aosp-jb oder was ganz anderes?
    Danke im Vorraus für eventuelle Hilfe ;)

  5. Comment Avatar 4ndr0 sagt:

    Das lässt sich nicht so einfach sagen. Am besten ist es, du versuchst das ROM einfach mit dem Auto-Patcher zu patchen, bevor du es flashst. Wenn der Patch-Vorgang ohne Fehler durchläuft, stehen die Chancen gut, dass es mit dem ROM-Patch dann auch funktioniert.

    • Comment Avatar dubdroid sagt:

      Habs probiert, funktioniert bei meinen erwünschten ROMs leider nicht. Muss ich wohl auf CyanogenMod fürs HTC One X+ warten…

  6. Comment Avatar Max Mustermann sagt:

    Hallo, ich wollte mal fragen wie hoch pdroid 2.0 auf der to-do-Liste steht. Ein Artikel darüber würde mich sehr interessieren.
    Des Weiteren bedanke ich mich für die erschienenen, exzellenten Artikel. Weiter so!

  7. Comment Avatar Alex_R3CONN3R sagt:

    Hi !
    Erstmal vielen Dank für das super Tutorial.
    Ich hab mir auch mal den Artikel auf XDA durchgelesen und etwas wichtiges fehlt in deinem Artikel.
    Man darf das AgP nicht auf Laufwerk C: ausführen da es dort zu nicht weiter benannten Problemen führt. Ich hab das beim ersten mal gemacht und konnte dann die Patches nicht finden. :D

    Gruß Alex

  8. Comment Avatar Ursel sagt:

    Hallöchen, bin auf deine Seite gestoßen und bin völlig begeistert mal was zu lesen, was die ganzen Apps und das Hokuspokus rund herum etwas entzaubert und kritischt hinterfragt. Ich habe mir erst vor 2 Tagen zum neuen Jahr ein Smartphone gekauft. Viele nutzen die ganzen Apps völlig euphorisch und ohne zu hinterfragen, leider auch viele meiner Freunde, die mir sofort 100derte von Apps vorgeschlagen haben die ich unbedingt installieren soll, wenn ich das Gerät habe. Somit habe ich mich gleich mal in die Google Play App begeben ( die übrigens auch unverschämte Rechte besitzt und ich mich frage wie ich die vielleicht umgehen kann, vielleicht andriodpit.com?) und habe mir die Berechtigungen durchgelsen und mich erstmal dafür entschieden keine Apps runterzuladen, weil es mir noch zu unsicher und ein Begriffswirrwarr ist. Nun werde ich auf PDroid zurück greifen. Meine Frage hierzu wäre: welche Berechtigungen kann man weitestgehend als „unbedenklich“ einstufen? wenn man das überhaupt bei irgendwelchen Berechtigungen kann.
    Dann noch eine wichtige Frage:
    Mir ist völlig schleierhaft was es bedeuetet wenn eine App „NETZWERKSOCKETS“ einrichten darf
    Was eine App tut, wenn sie auf meinen internen „USB SPEICHER ZUGREIFEN LÖSCHEN UND ÄNDERN“ darf

    Dafür bitte noch eine kurze, stichpunktartige Erklärung… DDAANNKKEE

  9. Comment Avatar Sandra Pfirter sagt:

    Hallo,

    Ich habe da noch eine Verständnisfrage.
    Ist es richtig, dass eine Custom Rom auf dem Smartphone installiert sein muss damit der pdroid patch funktioniert? Root alleine mit Stock ROM reicht nicht?

    Gibt es keine ROM wo pdroid bereits integriert ist?
    Habe schon mit veschiedenen Apg Versionen versucht funkt jedoch nicht….

    Gruss Sandra

  10. Comment Avatar Mike Kuketz sagt:

    @ Ursel: Ich vermute du nutzt schon PDroid 2.0. Tippe einfach mit dem Finger auf eine Berechtigung – dann sollte ein Popup mit Erklärung folgen.

    @ Sandra: Custom ROM ist notwendig, aufgrund der Dateistruktur. LineageOS ist hier zu empfehlen. Es unterstützt eine breite Anzahl von Geräten.

  11. Comment Avatar 4ndr0 sagt:

    @Ursel
    NETZWERKSOCKETS bedeutet nichts weiter, als dass die App auf das Internet zugreifen darf. Zugriff auf den USB-Speicher bedeutet, dass die App Daten auf der SD-Karte lesen und schreiben darf. Viele Apps legen dort ihre Daten ab, allerdings können sie auch alle Daten lesen, die dort von anderen Apps angelegt wurden.

    @Sandra
    Um PDroid nutzen zu können, muss das ROM deodexed sein. Stock ROMs sind odexed, deshalb funktioniert es nicht. Zum Verständnis: https://www.android-hilfe.de/forum/allgemeine-anleitungen-tutorials-geraeteunabhaengig.1274/info-was-bedeutet-odex-deodex.332552.html

  12. Comment Avatar Horst sagt:

    Hi, kriege es nicht hin. AgP runtergeladen, gestartet, ROM eingestellt – währendessen Java und Cygwin runtergeladen wurden, dann bei der Installation wurde abgebrochen, weil wohl irgendetwas inkompatibel ist. Mein Betriebssystem ist XP. Kann es sein, daß das Programm automatisch Dateien für Windows 7 runterlädt?

  13. Comment Avatar Klaus D. Ebert sagt:

    Für Menschen wie mich, die Probleme damit haben den erforderlichen Patch anzuwenden ein möglicherweise hilfreicher Tipp = es gibt einige Customer ROM’s die den Patch für Pdroid bereits integriert haben. Dieses scheint nur für Pdroid und nicht für openPDroid zu stimmen. Ein ROM mit integriertem Pdroid Patch ist die aktuelle Version von ParanoidAndroid (was sich natürlich ständig ändern kann). Funktioniert die Anwendung des Patches nicht, lohnt es sich auf jeden Fall in diese Richtung mal zu suchen, wenn man auf den Datenschutz nicht verzichten will.

HilfeWenn du konkrete Fragen hast oder Hilfe benötigst, sind das offizielle Forum oder der Chat geeignete Anlaufstellen, um dein Anliegen zu diskutieren. Per E-Mail beantworte ich grundsätzlich keine (Support-)Anfragen – dazu fehlt mir einfach die Zeit. Kuketz-Forum

Abschließender Hinweis

Blog-Beiträge erheben nicht den Anspruch auf ständige Aktualität und Richtigkeit wie Lexikoneinträge (z.B. Wikipedia), sondern beziehen sich wie Zeitungsartikel auf den Informationsstand zum Zeitpunkt des Redaktionsschlusses.

Kritik, Anregungen oder Korrekturvorschläge zu den Beiträgen nehme ich gerne per E-Mail entgegen.