K
kaju
Fortgeschrittenes Mitglied
- 7
Bei mir läuft HC.
Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion erfordert derzeit den Zugriff auf die Seite über den integrierten Safari-Browser.
Jason101 schrieb:Den Command adb.exe kennt mein System nicht. Muß da noch etwas heruntergeladen und installiert werden?
Danke.
kaju schrieb:Und das ist das Ergebnis von "mount".
kaju schrieb:Was ist schon wieder ein "Batchjob" ? Ich hab zu tun dass ich die Zeilen/Befehle fehlerfrei abgetippt bekomm. Ich bin in Sachen DOS oder anderweitige Befehlsschreibweise total aufgeschmissen.
Andri Od schrieb:Die Frage ist, ob bei einem Lifetab mit Honeycomb dasselbe Blockdevice auf /system gemountet ist, wie bei ICS (/dev/block/mmcblk0p3).
Kannst Du in der adb-Shell mal das Kommando "mount" absetzen, und das Ergebnis hier posten?
Gruß
A.O.
C:\Users\pseiko>adb shell
$ mount
mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/mmcblk0p3 /system ext4 ro,relatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p7 /data ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p4 /cache ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p8 /data/temp ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered 0 0
/dev/fuse /mnt/sdcard fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
$
d:\Android\Root_MEDION_LifeTab_P9516\Root_MEDION_LifeTab_P9516>adb shell
shell@android:/ $ mount
mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/sdhci-tegra.3/by-num/p3 [COLOR="Red"]/system[/COLOR] ext4 ro,relatime,user_xattr,acl,barrier=1,data=o
rdered 0 0
/dev/block/platform/sdhci-tegra.3/by-num/p7 /data ext4 rw,nosuid,nodev,noatime,errors=panic,user_xat
tr,acl,barrier=1,journal_async_commit,nodelalloc,data=writeback 0 0
/dev/block/platform/sdhci-tegra.3/by-num/p4 /cache ext4 rw,nosuid,nodev,noatime,errors=panic,user_xa
ttr,acl,barrier=1,journal_async_commit,nodelalloc,data=writeback 0 0
/dev/block/mmcblk0p8 /data/temp ext4 rw,nosuid,nodev,noatime,user_xattr,acl,barrier=1,data=ordered 0
0
/dev/fuse /mnt/sdcard fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,a
llow_other 0 0
/dev/block/vold/179:9 /mnt/sdcard2 vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fm
ask=0002,dmask=0002,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=
remount-ro 0 0
shell@android:/ $
Specifies that the file system should be opened in read-write mode. Without this option, the file system is opened in read-only mode.
Danke. Das Ergebnis von adb.exe devices ist:dirkw01 schrieb:Öffne ein CMD-Fenster und navigiere zu dem Ordner, in den Du mein ZIP entpackt hast. Dort gibt es ein ADB.exe.
Auch den Batchjob musst Du in diesem Ordner ausführen.
Gruß
Dirk
$ id
id
uid=2000(shell) gid=2000(shell) groups=1003(graphics),1004(input),1007(log),1009(mount),1011(adb),1015(sdcard_rw),3001(net_bt_admin),3002(net_bt),3003(inet)
$
mkdir /data/local 0771 shell shell
mkdir /data/local/tmp 0771 shell shell
adb push debugfs /data/local/
adb push su /data/local/
adb shell
$ cd /data/local/
$ mv tmp tmp.back
$ ln -s /dev/block/mmcblk0p3 tmp
$ exit
adb reboot
adb shell
$ cd /data/local
$ toolbox chmod 755 /data/local/debugfs
>adb -d shell busybox ls -la "/system/bin/*prop"
lrwxr-xr-x 1 0 2000 7 Dec 19 2009 /system/bin/getprop -> toolbox
lrwxr-xr-x 1 0 2000 7 Dec 19 2009 /system/bin/setprop -> toolbox
$ /data/local/debugfs -w /data/local/tmp
debugfs: cd xbin
debugfs: rm su
[Anmerkung: falls hier eine Fehlermeldung kommt, einfach ignorieren]
debugfs: write /data/local/su su
debugfs: set_inode_field su mode [B][COLOR="Red"]010[/COLOR][COLOR="SeaGreen"]6[/COLOR][COLOR="DarkOrchid"]755[/COLOR][/B]
debugfs: set_inode_field su uid 0
debugfs: set_inode_field su gid 0
Zum Hintergrund Anmerkung von Andri Od:
Das wollen wir in der Tat, aber das wird erst in Kombination mit den "Sticky-Bits" von oben so. Unix/Linux führt Dateien immer im Kontext des Users aus, der gerade angemeldet ist, und zwar unabhängig davon, wem sie "gehören". Erst das "s" bei der Execute-Berechtigung von Owner und Gruppe führt die Datei in dem Kontext des Owners oder der Gruppe -i.d.F. root:root- aus.
Zum Hintergrund Anmerkung von Andri Od...ergänzend:
Die drei obigen debugfs-Kommandos sorgen also dafür, dass su mit root-Berechtigung ausgeführt wird.
Der Exploit kommt durch die Geschichte zustande, dass -bei ICS!- durch den init-Prozess /data/local/tmp Schreibberechtigung für shell:shell verpasst bekommt, und durch den symbolischen Link des Blockdevice-Files /dev/block/mmcblk0p3 auf /data/local/tmp das /system-Filesystem letzendlich diese Schreibberechtigung "erbt". Somit kann über debugfs das Binary su von shell:shell platziert und seine Rechte entsprechend angepasst werden.
debugfs: quit
$ rm /data/local/tmp
$ mv /data/local/tmp.back /data/local/tmp
$ exit
adb reboot
adb shell
$ /system/xbin/su
# id
id=0(root) gid=0(root) .... das sollte so Aussehen, dann passt es
# exit
$ rm /data/local/su
$ rm /data/local/debugfs
$ exit
pseiko schrieb:...
2. Gestern habe ich die Auswertung von "id" gepostet und da steht "shell" demnach müsste ich als User "shell" in der adb shell eingeloggt sein und deshalb sollte ich auch bei HC die benötigten Rechte haben das Filesystem mit rw zu mounten.
...
[COLOR=SeaGreen]mkdir[/COLOR] /data/local/tmp [COLOR=Red]0771[/COLOR] [COLOR=Purple]shell shell
Installiere Superuser.apk...
failed to copy 'Superuser.apk' to '/data/local/tmp/Superuser.apk': No such file or directory
LifeTab neu starten. Kann 1-2 Minuten dauern...
Wenn Ihr LifeTab neu gestartet ist, ist es geROOTet!
Drücken Sie eine beliebige Taste . . .
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.
C:\Users\pseiko\Downloads>cd LT_rooten
C:\Users\pseiko\Downloads\LT_rooten>adb push debugfs /data/local/
1131 KB/s (1862336 bytes in 1.606s)
C:\Users\pseiko\Downloads\LT_rooten>adb push su /data/local/
699 KB/s (22364 bytes in 0.031s)
C:\Users\pseiko\Downloads\LT_rooten>adb shell
shell@android:/ $ cd /data/local
cd /data/local
shell@android:/data/local $ mv tmp tmp.back
mv tmp tmp.back
shell@android:/data/local $ exit
exit
C:\Users\pseiko\Downloads\LT_rooten>adb reboot
C:\Users\pseiko\Downloads\LT_rooten>adb shell
shell@android:/ $ cd /data/local
cd /data/local
shell@android:/data/local $ toolbox chmod 755 /data/local/debugfs
toolbox chmod 755 /data/local/debugfs
shell@android:/data/local $ /data/local/debugfs -w /data/local/tmp
/data/local/debugfs -w /data/local/tmp
debugfs 1.42 (29-Nov-2011)
debugfs: cd xbin
cd xbin
debugfs: rm su
rm su
debugfs: write /data/local/su su
write /data/local/su su
Allocated inode: 20247
debugfs: set_inode_field su mode 0106755
set_inode_field su mode 0106755
debugfs: set_inode_field su uid 0
set_inode_field su uid 0
debugfs: set_inode_field su gid 0
set_inode_field su gid 0
debugfs: quit
quit
shell@android:/data/local $ rm /data/local/tmp
rm /data/local/tmp
shell@android:/data/local $ mv /data/local/tmp.back /data/local/tmp
mv /data/local/tmp.back /data/local/tmp
shell@android:/data/local $ exit
exit
C:\Users\pseiko\Downloads\LT_rooten>adb reboot
C:\Users\pseiko\Downloads\LT_rooten>adb shell
shell@android:/ $ /system/xbin/su
/system/xbin/su
shell@android:/ # id
id
uid=0(root) gid=0(root) groups=1003(graphics),1004(input),1007(log),1009(mount),1011(adb),1015(sdcard_rw),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats)
shell@android:/ # exit
exit
shell@android:/ $ rm /data/local/su
rm /data/local/su
127|shell@android:/ $ rm /data/local/debugfs
rm /data/local/debugfs
shell@android:/ $ exit
exit
C:\Users\pseiko\Downloads\LT_rooten>