基于ARM本机汇编码调试Windows RT操作系统

我在xda开发者论坛发布了破解IE的Flash等等的东西后,有几个看雪的朋友问我如何调试WinRT系统,这里我写一篇文章,简单的用口述的方式说下。

你需要准备一台装有Windows RT的机器,我是用的是Surface RT和普通的x86台式机。好,我们开始。

 

1)首先在x86机器上安装VS2012,最好是安装旗舰版,不然调试中那个类似WinDbg的命令行功能无法使用。

2)然后在Windows RT系统上安装Visual Sutido 2012 Remote Debugger Tools。

3)然后你需要去淘宝买一个USB转RJ45的东西,目前WinRT上只有ASIX 88172的芯片才能有签名驱动,推荐你在淘宝搜索关键字“HTC USB HUB”,出来的那个黑色的玩意就可以用,驱动可以去网上找。

4)使用路由器或交换机把你的x86机器和Windows RT设备连接在一个局域网里面。

5)在Windows RT桌面上运行远程调试器,会开始监视端口等待连接,推荐你使用无身份验证再打一个超久的超时时间;然后再x86机器上运行VS2012,选择调试附加,在下拉框选择远程,在文本框输入你的Windows RT设备IP然后回车,你RT设备的进程会被全部列表,选择要调试的,附加即可。

 

此时是使用ARM的本机汇编码调试,Windows RT基于ARMv7和Thumb2指令集,跟老的那些ARM指令集不同,这个注意下。其实我对ARM指令集不甚熟悉,不过如果你有丰富的x86下的汇编调试经验,OD和WinDbg使用经验,Win32 API等,可以很简单上手,给API下断点就行了。

很多第一次使用VS来调试的朋友可能看到那个调试界面除了觉得难用外还有感觉功能不丰富,其实你在菜单上好好看看,可以显示一大堆调试需要的窗口出来,比如内存,寄存器,模块,线程之类的。命令行窗口好好利用,命令行文档在VS2012那个下载网站就有。具体如何使用我就不说了,慢慢摸,反正局限性很多,跟WinDbg双机调试没法比,跟OD的易用性也没法比。

写ARM的shellcode可以靠VS2012的VC中的ARM交叉编译器的那个微软ARM宏汇编器armasm.exe,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值