首页
社区
课程
招聘
[原创]91手机助手附带驱动分析
发表于: 2011-3-12 23:45 7138

[原创]91手机助手附带驱动分析

2011-3-12 23:45
7138

【文章标题】: 91手机助手附带驱动分析
【文章作者】: Root
【作者邮箱】: cppcoffee@gmail.com
【下载地址】: 附件
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
  最近由于项目需要,要得到IPhone的通信协议.看到了91手机助手可以跟IPhone进行通信,得出的结果...还是和大众一样,调用APPLE提供的DLL,没办法,只能继续整理IPhone协议的思路了.
  看到91手机助手上面有个驱动,利用礼拜天休息的时间看看有啥奥秘,嘿嘿.也是为了增加实战经验值:)
  分析如下:
  驱动刚开始注册一个程序通知例程 PsSetCreateProcessNotifyRoutine,检测外部是否有 EVENT 事件传输.如果有,则将刚创建的进程名字保存到全局缓冲区中.并将外部的 EVENT 设置有信号状态.等着 R3 应用层来采用 IRP_MJ_DEVICE_CONTROL 读取.
  获取 PED 的进程名偏移.保存到全局的变量中.后面将使用到这个偏移值.
  接着 HOOK ZwCreateFile 并设置全局的 HOOK 是否成功的 BOOLEAN 标志(这里的标志位也可用 R3 来进行读取).
  在自己的 ZwCreateFile 中检测是否有 iTunes.exe 进程访问 Temporary Files 目录的 Firmware\\ 路径,如果访问了,则设置另外一个事件.并等待用户处理结束.
  在 IRP_MJ_DEVICE_CONTROL 传递了两个 EVENT 进来,一个是用来刚创建进程的时候,保存进程名字后而通知 R3 用的.
  最后要说的是,虽然是CHECK编译的驱动,未曾使用的变量有些多.也许是因为作者没注意到吧.
  不足之处,请大家多多指教 :)
  
--------------------------------------------------------------------------------
【版权声明】: 本文原创于看雪技术论坛, 转载请注明作者并保持文章的完整, 谢谢!

                                                       2011年03月12日 23:46:24


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (2)
雪    币: 89
活跃值: (185)
能力值: ( LV9,RANK:270 )
在线值:
发帖
回帖
粉丝
2
这个,话说这个软件的手机端,有异常联网行为。用着怕怕啊
2011-3-14 13:44
0
雪    币: 269
活跃值: (25)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
呵呵呵 这小厂家写的hook参数过滤也有问题,一句话蓝屏~
2011-3-16 20:44
0
游客
登录 | 注册 方可回帖
返回
//