安智网

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8281|回复: 37

Tattoo r00t 破解提权,操作简单!!!!!   [复制链接]

你,我,他

  • TA的每日心情
    慵懒
    2012-3-23 13:39
  • 签到天数: 41 天

    [LV.5]常住居民I

    帖子
    430
    积分
    7837
    金币
    11348 元

    射手座 十二生肖-未羊 安智帮助达人勋章 安智超级版主勋章 安智论坛元老勋章 安智帅哥勋章 安智网单身贵族勋章 安智网才子勋章

    发表于 2010-5-19 11:29:59 |显示全部楼层
    更新:r00tTattoo.zip 包更新(md5: 12b743a6781e0ab2169b51e106b67132)。@ 9:24 2010.03.01
    更新:整合帖子,重写 create_su.sh 脚本,简化操作。第三页中的内容仅作参考。 @ 2010.02.28

    首先的感谢的是 xda-dev 的 Tattoo Hacker 们!(对破解过程不感兴趣的同学,略过)
    • prdelka 首次写出 shellcode 针对 Linux_86 平台的漏洞程序;链接
    • -bm- 首先找对漏洞利用的方向,即 prdelka 的漏洞利用;链接
    • zanfur 修改 prdelka 代码中的 shellcode,使之应用于 arm (兼容)平台 Tattoo;链接
    • bftb0 进行了大量改进算法的讨论;举例
    • maimframe3 是首次获得 root 权限的人(m6 程序版本);链接
    • bool_s 改进 zanfur 代码,使得 exploit 成功率几乎为 100%,且速度极快;链接
    • 正当 Hacker 们对于 /system(mtd3) 分区内核有写入保护机制缩手无策时,bool_s 又写出了 Hack 模块,可将 su 程序写入到 /system/bin 中,这样重启手机后就不必再次 exploit;链接
    • coolbits 找到不同版本的 su(Magic 上使用的版本),并实现了 root 应用 setCPU;链接
    • Coburn64 参与其中较积极,busybox 是大贡献,并写了帮助新手 step by step 的教程


    root 利用了 linux-2.6.29 内核中 pthread 进程调度(互斥不充分,允许 suid 程序运行)的一个漏洞。之前已有 root1 版本,网友也转帖过的。这次的 root2 又往前进了一大步,基本是瞬间获得 root,并且实现了重启不再需要重复 exploit(漏洞利用)。

    准备:
    • 电脑一台,手机 Tattoo 一部,USB 数据线一根;
    • 懂命令行基本知识(Windows 下的 cmd,Linux 下的 shell),下面操作是提供给 Windows 用户参考,Linux 用户自己改包吧;
    • 下载附件包 r00tTattoo.zip(请先核对 md5sum,见帖底。Windows 下请下载 md5sum for Windows),解压。source 包可不必下;
    • 能让 adb 正常工作(Windows 下有数据线驱动,Linux 下需要修改 udev 规则,参考 developer.android.com)。



    操作步骤:(警告:输入的命令请谨慎再谨慎。)

    1. 数据线连接电脑,开 cmd,cd 到 r00tTattoo.zip 包解压目录(r00tTattoo),执行:




    1. 数据线连接电脑,开 cmd,cd 到 r00tTattoo.zip 包解压目录(r00tTattoo),执行:
    • install-tattoo-root.bat



    再进入手机 shell:
    • adb shell



    root 提权:
    • while /data/local/bin/m7; do :; done



    注意 do 与 : 之间有空格,此类错误操作不再解释。
    看到 # 提示符,就表示已成功提权,可能需要按 Enter 键重获提示符。

    2. 设置环境变量(一次执行一行):
    • export LD_LIBRARY_PATH=/system/lib
    • export PATH=$PATH:/system/bin



    运行 id 命令确认当前身份:
    • id



    uid=0 即是 root 用户了。

    提示:如果不是 root,下面操作没有意义。
    3. 为去除 /system 分区写保护机制,执行:
    • /data/local/bin/create_su.sh



    执行完确认下:
    • mount



    看是否 "/dev/block/mtdblock3 /system yaffs2 rw 0 0" 这行,/system 是否已重新挂载为 rw。
    再确认下:
    • lsmod



    会看到 "tattoo_hack 1480 0 - Live 0xbf000000",后面的 Live Ox... 是进程地址,不必相同。如果没有,将出错信息 PM 给我。

    操作完成!下面就可去刷 ROM 了。我推荐
    我自己的 ROM。:D
    欢迎讨论任何 Tattoo 相关技术问题,请直接 PM 我。

    附后说明:
    • 附件中的 tattoo-hack.ko 模块只适用于 2.6.29-gf922713 内核,可在“关于手机”中查看到内核版本。
    • /system 目录中文件,请不要随便修改或删除,尤其在你不知道它们是做什么的情况下。
    • 在 adb 端 adb shell 后执行 su 即是 root 用户;在 Tattoo 终端模拟器中执行 su 也如此。
    • 遇到问题首先核对 md5,r00tTattoo.zip: 12b743a6781e0ab2169b51e106b67132
    • 重启手机后,/system 会重新挂载成 ro,如果想修改其中的内容,需要再次加载 tattoo-hack.ko 模块并挂载 /system 为可读写。比如 su 获得 # 后:
      • insmod /data/local/bin/tattoo-hack.ko
        mount -o rw,remount /dev/mtd/mtdblock3 /system





    附件中有 Hack 源代码,目前测试的需要 root 权限的程序有 setCPU/rootExplore/Autostarts/Drocap2/CacheMate 等。


    附件下载:
    附件: 你需要登录才可以下载或查看附件。没有帐号?注册

    使用道具 举报

    该用户从未签到

    升级  10%

    帖子
    75
    积分
    55
    金币
    161 元
    发表于 2010-5-23 11:25:06 |显示全部楼层

    使用道具 举报

    该用户从未签到

    升级  36.67%

    帖子
    50
    积分
    31
    金币
    88 元
    发表于 2010-5-28 18:33:02 |显示全部楼层
    安智市场3.4
    支持一下  

    使用道具 举报

    该用户从未签到

    升级  13.33%

    帖子
    6
    积分
    7
    金币
    21 元
    发表于 2010-5-30 04:08:17 |显示全部楼层
    我明白一点事情 不错~~~  

    使用道具 举报

  • TA的每日心情

    2012-5-11 19:36
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    升级  1%

    帖子
    150
    积分
    202
    金币
    342 元
    发表于 2010-6-25 22:30:10 |显示全部楼层
    有没有用这种方法成功的

    使用道具 举报

  • TA的每日心情

    2012-5-11 19:36
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    升级  1%

    帖子
    150
    积分
    202
    金币
    342 元
    发表于 2010-6-25 22:41:53 |显示全部楼层
    刚刷成功了,谢楼主了

    使用道具 举报

    该用户从未签到

    升级  13.33%

    帖子
    16
    积分
    7
    金币
    36 元
    发表于 2010-7-17 20:50:17 |显示全部楼层
    千斤顶!!

    使用道具 举报

    该用户从未签到

    升级  60%

    帖子
    8
    积分
    3
    金币
    18 元
    发表于 2010-7-22 10:20:13 |显示全部楼层
    请问我的阿拉伯版本1.67.415.58可以刷成功吗

    使用道具 举报

    该用户从未签到

    升级  33.33%

    帖子
    78
    积分
    30
    金币
    121 元
    发表于 2010-7-23 14:38:43 |显示全部楼层
    感谢分享,好像有点深奥啊。

    使用道具 举报

    该用户从未签到

    升级  86.67%

    帖子
    30
    积分
    18
    金币
    52 元
    发表于 2010-7-27 08:19:38 |显示全部楼层
    O 了



    # export PATH=$PATH:/system/bin
    export PATH=$PATH:/system/bin
    # id
    id
    uid=0(root) gid=0(root)
    # /data/local/bin/create_su.sh
    /data/local/bin/create_su.sh
    insmod: init_module '/data/local/bin/tattoo-hack.ko' failed (File exists)
    all done!
    # mount
    mount
    rootfs / rootfs rw 0 0
    tmpfs /dev tmpfs rw,mode=755 0 0
    devpts /dev/pts devpts rw,mode=600 0 0
    proc /proc proc rw 0 0
    sysfs /sys sysfs rw 0 0
    tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
    /dev/block/mtdblock3 /system yaffs2 rw 0 0
    /dev/block/mtdblock5 /data yaffs2 rw,nodev 0 0
    /dev/block/mtdblock4 /cache yaffs2 rw,nodev 0 0
    # lsmod
    lsmod
    wlan 594300 1 - Live 0xbf006000
    tattoo_hack 1480 0 - Live 0xbf000000
    #

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    关于我们|来安智工作| 安智网 ( 京ICP备10031276号-2 京ICP证101039号 京公网安备110105006923 )     

    GMT+8, 2012-5-22 21:54 , Processed in 0.057262 second(s), Total 9, Slave 9 queries , Memcache On.

    Powered by Discuz! X2 Licensed

    © 2001-2011 Comsenz Inc.

    回顶部