首页
社区
课程
招聘
[原创]结合init源码剖析android root提权漏洞(CVE-2010-EASY)
发表于: 2011-9-4 21:41 19017

[原创]结合init源码剖析android root提权漏洞(CVE-2010-EASY)

2011-9-4 21:41
19017

转载请注明出处:http://hi.baidu.com/androidhacker/blog/item/59faabfda34b71f57709d707.html

这篇文章是上一篇博客的后续分析,主要介绍向init进程发送热拔插信息后init进程的处理流程

首先我们来了解一个数据结构,uevent,如下

struct uevent {                                                                                

    const char *action;                                                                        

    const char *path;                                                                          

    const char *subsystem;                                                                     

    const char *firmware;                                                                      

    int major;                                                                                 

    int minor;                                                                                 

};  
static void parse_event(const char *msg, struct uevent *uevent) 

{

 

    while(*msg) {                                                                              

        if(!strncmp(msg, "ACTION=", 7)) {                                                      

            msg += 7;                                                                          

            uevent->action = msg;                                                              

        } else if(!strncmp(msg, "DEVPATH=", 8)) {                                              

            msg += 8;                                                                          

            uevent->path = msg;                                                                

        } else if(!strncmp(msg, "SUBSYSTEM=", 10)) {                                           

            msg += 10;                                                                         

            uevent->subsystem = msg;                                                           

        } else if(!strncmp(msg, "FIRMWARE=", 9)) {                                             

            msg += 9;                                                                          

            uevent->firmware = msg;                                                            

        } else if(!strncmp(msg, "MAJOR=", 6)) {                                                

            msg += 6;                                                                          

            uevent->major = atoi(msg);                                                         

        } else if(!strncmp(msg, "MINOR=", 6)) {                                                

            msg += 6;                                                                          

            uevent->minor = atoi(msg);                                                         

        }

         while(*msg++);

    }           

}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 6
支持
分享
最新回复 (7)
雪    币: 1015
活跃值: (235)
能力值: ( LV12,RANK:440 )
在线值:
发帖
回帖
粉丝
2
支持楼主
2011-9-4 21:51
0
雪    币: 321
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
楼主很专业。
2011-9-8 16:57
0
雪    币: 220
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
嗯 不得不赞一个
2011-9-9 23:45
0
雪    币: 223
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
支持,好文章
2011-9-14 17:24
0
雪    币: 761
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
很好的东西,不知道现在漏洞修复了否?
2013-1-22 11:18
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
目前rootAndroid4.3系统的方式比较好理解,然后续版本的系统怎么root?求大神指点(PC端工具或Android侧应用、脚本等)
2014-9-28 12:19
0
雪    币: 53
活跃值: (280)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
后续都是利用kernel或驱动的漏洞,各种栈溢出、数组越界、mmap漏洞,网上搜搜很多
2014-9-29 21:27
0
游客
登录 | 注册 方可回帖
返回
//