导航:首页 > 源码编译 > sys反编译调试

sys反编译调试

发布时间:2023-08-14 18:08:53

① 路由器的固件能反编译

可以进行反编译。

路由器的固件通常存储在FLASH中,通常都是以xxx.bin格式的文件形式保存的。bin格式是一种二进制文件,存储的是路由器的机器码,通过反编译,可以将其还原为汇编码,以便进行分析。获取、反编译及分析固件通常按下列步骤:

获取路由器固件需要的环境

  1. 常见路由器的SPI FLASH编程器;

  2. 最好是用Winows 笔记本来登陆到ubuntu系统的台式机上的方式 ;

  3. Windows 下的Putty、winhex、WinSCP软件工具;

  4. TTL线、网线、万用表及烙铁,热风枪等工具和线材;

分析步骤

  1. 拆开对应的路由器设备的外壳;

  2. 查看路由器内部的的接口标识;

  3. 用万用表找到对应的地线GND标号;

  4. 通常为了调试或升级的方便,都会保留TTL引脚;

  5. 查看是否存在有TTL线的引脚或触点;

  6. 用准备好的TTL线连接路由器的TTL引脚或触点;

  7. windows下用putty中的串口项打开对应的TTL线连接的串口;

  8. 查看是否有路由器启动的日志信息,如果有,请仔细分析;

  9. 等路由信息启动完毕后,看看是否有终端跳出来,是否有登陆窗口跳出;

  10. 如果有登陆窗口,但是无法输入,或者无法猜测出对应的用户名密码;

  11. 用热风枪或烙铁取下路由器上的存储FLASH芯片;

  12. 在Windows下用编程器提前存储在FLASH芯片的全部固件;

  13. 用WinSCP工具将提取出的固件上传到ubuntu系统中;

  14. 在ubuntu系统中安装对应的固件分析工具(firmware-mod-kit、binwalk、lzma、squashfs-tools等);

  15. 用这些分析工具进行分析,分析出来后,解压对应的数据包,提前对应的关键性数据进行分析。

按以上步骤可以实现对路由器的分析。

② 小程序反编译后不能运行

可以调试。
1、安装夜神模拟器、RE文件管理器。打开手机设置->找到超级用户->右上角三个小点点击一下,设置->点击超级用户访问权限,选择仅限于应用,这样超级用户权限就拿到了。
打开微信,没有的在应用市场下载就行,打开想反编译的微信小程序,小程序打开后,可以切换到RE文件管理器去找源文件了。

③ 小程序反编译后在开发者工具调试不了

网络异常。小程序反编译后在开发者工具调试不了是网络异常,开发工具后,涉及到联网,需要登录的功能都会报错。小程序是2017年度网络十大热词之一,微信小程序,简称小程序,英文名:MiniProgram是一种不需要下载安装即可使用的应用。

④ 安卓app360加固怎么反编译

1 对比

上传demo进行加固,解包后对比下原包和加固包,发现加固包在assets文件夹下多了libjiagu.so,libjiagu_x86,lib文件夹下多了libjiagu_art.so,同时修改了dex文件和androidManifest文件

打开manifest文件,看到xxx加固对Application标签做了修改,添加了壳入口,也就是我们反编译后看到的StubApplication.smali这个文件。

相比于之前版本的加固,自从1.x.x.x加固版本之后,多了几次反调试,使得动态难度稍微增大了一些,不过针对脱壳机脱壳,再多了反调试也是无用。或者通过修改系统源码,也能达到消除反调试的作用。


2 动态调试

(1)把app安装到手机,以调试模式打开app

(2)以shell模式root权限打开IDA的android_server监听

(3)tcp转发

(4)打开IDA,修改配置为在进程开始时下断

(5)搜索到进程后jdwp转发,pid值即为我们进程号,并在命令行下附加。

成功附加后,可以下段了,打开Debugger Option

我们选择在线程开始和库加载时下断,修改成功后,jdb附加,点击运行

程序会断在elf头处,按下G键,搜索mmap,在mmap函数的段首和断尾下段

F9运行,来到断尾时F8单步,

来到此处时,在 BLunk_5C999C2C下断,F9一下,F7跟进去

跟进去今后在BLX LR处进行下断,此处就是进行反调试的地方,原理依然是获取TracePid的值判断当前是不是处于调试状态,建议第一次调试的人在fgets和fopen处下断,再f7跟进此调用就可以看到TracePid的值了。

跟进去之后,我们直接把方法移到最下方,就可以看到kill符号了,这就是杀进程的地方,如果当前处于调试状态,则直接结束进程。

我们在此函数的所有cmpR0,#0处下断,F9一下后即断在断点处,观察寄存器窗口的R0值,实质就是当前的TracePid的16进制的值

不确定的可以使用cat /proc/pid/status进行对比一下,我们直接把R0置0,右键选择Zero Value即可清0,继续F9

我们看到程序又来到了mmap处,继续f9

当继续断在调用反调试功能的方法时,继续F7跟进,依然在所有的cmp R0,#0处下断,断下后把R0清0后继续F9运行

目前的规律是,调用BLXLR的第一次,第二次和第四次是进行反调试判断的,第三次并不影响,可以直接f9跳过去,三次反调试搞定后,就可以愉快的F9运行并观察堆栈窗口了

当看到出现如下所示时:

说明壳已经开始解密并释放dex文件了,我们直接F8单步十几步,最后F9一下就可以看到我们需要的dex头了

直接脚本mp出来即可,最后把libjiagu的所有文件删除,并修复下Application标,如果存在则修复,不存在删除即可

⑤ 已知芯片型号如何反编译

使用专业的反汇编工具和技巧进行反编译。可以使用动态反汇编在芯片运行旁唯时对二进制代码进行逆向分析,需要使用到调试器和其工具,可以使碰晌用静态笑启锋反汇编将芯片数据存储的二进制代码还原为汇编指令,需要借助反汇编工具如IDAPro等。反编译能够帮助开发人员了解芯片的内部结构和运行机制,有助于理解和改进芯片的性能、功能和安全性。

阅读全文

与sys反编译调试相关的资料

热点内容
能否给隐藏相册加密 浏览:594
糖心app改什么名 浏览:823
战地1控服务器如何部署 浏览:392
xp还原系统输入命令 浏览:321
mysql命令行版本 浏览:303
如何进入itunes找文件夹 浏览:832
CAD中重复命令使用 浏览:477
心智pdf 浏览:475
网站电台直播间源码 浏览:852
文件夹14c和18c的区别 浏览:34
android隐式调用 浏览:667
plc的编程指令边沿继电器 浏览:723
voc文件夹 浏览:865
租广东联通服务器注意什么云空间 浏览:934
javascript高级程序设计pdf 浏览:292
pwm单片机原理 浏览:347
ai算法在线修复图片 浏览:981
scratch编程中如何做射击游戏 浏览:479
at89c51编程器 浏览:344
项目经理叫醒程序员 浏览:344