设为首页 收藏本站
查看: 1038|回复: 0

[经验分享] Windows Mobile CAB安装包分析

[复制链接]

尚未签到

发表于 2016-5-21 07:15:18 | 显示全部楼层 |阅读模式
一般我们得到的Windows Mobile安装程序有两种情况:

01、可以在PC上运行的EXE可执行文件。
当我们下载一些正规厂商生产的WM软件,比如卡巴的杀毒软件或者SkyPE软件。在PC上可以运行并安装,当用户的手机接入PC时,会通过AcitveSync安装到WM手机上。因为他们在安装时在硬盘上有备份。如果你安装了WM模拟器和ActiveSync软件在PC上。当把模拟器接入PC后ActiveSync也会识别到,并安装软件到模拟器上。

02、CAB包安装包
可以直接把CAB包拷贝到手机上点击安装。如果使用WM模拟器,则需要在WM模拟器上设置一个同PC共享的目录。设置成功后WM中会有一个新的目录://Storage Card。把CAB包拷贝到共享目录中可以安装。

一般安装程序会要求你选择安装目录是//Windows目录还是//Storage Card目录。为了分析方便最好选择//Storage Card目录,因为所有程序和DLL都保存在共享目录中方便在PC上分析。但是目前有很多软件为了安全会在用户选择//Storage Card目录的情况下仍然把很多核心的程序和DLL保存到系统目录中。

本文重点介绍:如何直接分析CAB包,获取全部可执行文件和DLL文件,并详细了解软件安装过程。本次试验使用的是:SkypeForPocketPC.cab包进行分析。

01、首先用RAR解压SkypeForPocketPC.cab压缩包。
解开压缩包之后可以看到有12文件,如图1所示。其中只有一个_setup.xml可以看出是XML格式文件。其余文件名和扩展名未知。用EditPlus打开这个_setup.xml可以看到非常丰富的安装信息。


首先是:安装的基本信息:
比如:<parm name=/"ProcessorType/" value=/"2577/" />2577这个编号以前的文章中提到过和ARM相关。表示是目标CPU类型为ARM.
<parm name=/"OSVersionMin/" value=/"4.2/" />最低安装操作系统的版本号为4.2。对应PocketPC 2003。
<parm name=/"NumDirs/" value=/"5/" /> 生成目录个数。
<parm name=/"NumRegKeys/" value=/"8/" />生成的注册表键数。


其次是:文件转换及安装信息:
比如:<characteristic type=/"%InstallDir%/" translation=/"install/">
<characteristic type=/"MakeDir/" />
<characteristic type=/"Skype.exe/" translation=/"install/">
<characteristic type=/"Extract/">
<parm name=/"Source/" value=/"000Skype.001/" />

通过这个信息我们知道了000Skype.001这个文件实际上是Skype.exe程序。通过一组转换及安装信息我们可以将解压得到的文件恢复正确的文件名和扩展名。


最后是:写入注册表信息:
比如:<characteristic type=/"HKLM//SOFTWARE//Microsoft//Today//Items//Skype/">
<parm name=/"Type/" value=/"4/" datatype=/"integer/" />

在HKLM//SOFTWARE//Microsoft//Today//Items//Skype下写入名称为/"Type/"类型为/"integer/"值为/"4/"的数据。通过这组信息我们可以知道在安装过程中在系统注册表中做了哪些修改。


02、到这个阶段还剩下两个文件。使用WinHex以二进制方式打开文件可以查看其内容。发现SKYPEM~1.000开头为MSCE。这种文件我经常在CAB包中发现,MSCE可能是MicroSof CE的意思。我一般直接就把扩展名改成MSCE完事。这个文件不影响后续的分析。

对于最后一个文件SKYPES~1.999通过WinHex打开后发现是一个典型的PE文件。那么就有两种可能。要么是EXE文件或者DLL文件。首先把扩展名改成*.exe然后,用PETools打开文件查看File Header的characteristics属性就可以看到是否是DLL了。


★根据以前分析CAB安装包的经验,经常会有个别文件在_setup.xml中没有介绍。一般都是首先用WinHex打开文件根据文件头判断文件类型再做操作。


直接分析CAB安装包的好处:

01、了解安装统计信息。
_setup.xml文件提供了详细的安装统计信息,很容易理解总共做了哪些操作。

02、准确得到全部EXE文件和DLL文件。
目前在WM平台据我所知还没有FileMon这样的工具,文件安装在系统目录之后需要重新导出才能做进一步分析。有时可能会漏掉部分文件。

03、容易分析安装程序对哪些注册表项做了处理。
目前在WM平台据我所知还没有RegMon这样的工具,通过分析_setup.xml可以知道安装程序对哪些注册表项做了处理。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-219675-1-1.html 上篇帖子: Windows GDI中的坐标系(一) 下篇帖子: Cognos8.4 cube在windows上刷新
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表