怎么对iOS蓝牙执行基于覆盖引导的模糊测试

技术怎么对iOS蓝牙执行基于覆盖引导的模糊测试本篇内容主要讲解“怎么对iOS蓝牙执行基于覆盖引导的模糊测试”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么对iOS蓝牙执行基

本文主要讲解“如何对iOS蓝牙进行基于叠加指导的模糊测试”,感兴趣的朋友不妨看看。本文介绍的方法简单、快速、实用。让边肖带你学习“如何对iOS蓝牙进行基于叠加指导的模糊测试”!

ToothPicker

牙签是一款基于覆盖引导的iOS模糊测试工具。这个工具是专门为iOS的蓝牙守护进程Bluetooth设计的。因为这个工具是基于FRIDA构建的,所以可以适应任何运行FRIDA的平台。

这个项目代码库中还包含了一个无线模糊测试工具,可以使用InternalBlue对Apple MagicPairing协议进行模糊测试,同时也提供了演示示例供参考。此外,该项目还提供了一个ReplayCrashFile.py脚本来帮助研究人员识别和验证模糊测试工具发现的过程崩溃。

这个模糊测试工具支持在各种iOS版本上“开箱即用”(在13.3-13.6上测试),但是需要指定符号。其他版本的iOS需要适配函数地址。另外FRIDA的跟踪者在iPhone 8上好像出现了一些问题,我们还没有解决。新版iPhone支持PAC,签名指针的性能会受到很大影响。因此,我们建议研究人员在iPhone7上运行这个工具。

牙签是基于frizzer的代码开发的,但是我们已经为牙签重建了代码,所以它不再与原始版本兼容。之后,我们计划用更有针对性的版本来取代它。

iPhone上的00-1010:

https://frida.re/docs/ios/

在Linux上:

usbmuxd

性欲活动设备

建议使用Virtualenv。

Adam sa(frizzer需要)

基于Arch的Linux:

# usbmuxdtypedally comes with libmobile device

#但只是为了确保,我们也手动安装了

sudopaman-Submuxdribipedevicepython-virtualenvradamsa

#将电话连接到计算机

#解锁。

#如果匹配消息,请单击“信任”

# Ifnopairingmessagepopsup:

idevicepairpair对

# now the should the popup,acceptandthenagain:

idevicepairpair对

# Incaseofconnectionerrors:

sudosystemctlrestartusbmuxd

#或orpairphoneandcomputeragain

#其他用户命令

# TosshintotheiPhone:

# checkra1 comes with ansshserverlisteningport 44

#代理电话的sSSHportto4444localport:

iproxy4444nb

sp;44
# Connect:
ssh root@localhost -p 4444
# Default password: alpine
 
# To fetch some device information of the phone:
Ideviceinfo

Debian Linux:

大致步骤跟上面的一样,但是:

  • radamsa需要从Git库安装,因为它没有已封装好的版本。

  • iproxy命令需要额外的包:libusbmuxd-tools

在macOS上:

brew install libimobiledevice usbmuxd radamsa npm
idevicepair pair
npm install frida-compile
pip3 install frida-tools

在macOS上,PacketLogger是Xcode中的一个额外组件,在安装了蓝牙调试配置之后,它将能够帮助我们解码各种数据包。除此之外,如果你使用Xcode来打开iOS崩溃日志时,它还可以帮助自动添加某些符号。

工具配置

  • 我们建议大家针对frizzer配置一个虚拟Python环境,然后在frizzer目录中运行命令来安装所需的代码包。

  • projects目录中包含一个针对MagicPairing协议的模糊测试样例。

  • 然后将一些通用工具以及MagicPairing编译到一个文件中。

  • 使用cd命令进入到harness目录,然后安装frida-compile

npm install frida-compile
  • 接下来,运行下列命令:

frida-compile ../projects/YOUR_PROJECT/YOUR_SPECIALIZED_HARNESS.JS -o ../projects/YOUR_PROJECT/harness.js

工具使用

首先,将你的iOS设备跟电脑连接,我们建议大家将手机切换到飞行模式,然后打开勿扰功能。

然后,运行下列命令来开启bluetoothd:

killall -9 bluetoothd

此时,需要确保手机没有连接至其他蓝牙设备。接下来,使用cd命令切换回项目目录,然后创建用于存储崩溃日志的目录,并运行下列命令:

mkdir crashes
../../frizzer/fuzzer.py fuzz -p

现在,我们就可以收集关于苹果设备的崩溃日志了。

简而言之,如需开启一个新的项目,只需要运行下列命令即可:

cd harness
npx frida-compile ../projects/YOUR_PROJECT/YOUR_SPECIALIZED_HARNESS.JS -o ../projects/YOUR_PROJECT/harness.js
cd ../projects/YOUR_PROJECT/
mkdir crashes
frizzer fuzz -p .

如需以不同的种子来启动工具,可运行下列命令:

frizzer fuzz --seed 1234 -p

到此,相信大家对“怎么对iOS蓝牙执行基于覆盖引导的模糊测试”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/39939.html

(0)

相关推荐

  • 如何做酸辣汤,上海酸辣汤正宗做法是什么

    技术如何做酸辣汤,上海酸辣汤正宗做法是什么上海的酸辣汤原料如何做酸辣汤:老豆腐1块半,猪血1两,木耳半两,猪肉1两.,竹笋半支,冬菇,葱,姜,蛋,香菜 (够全家吃),水,酱油、淀粉半匙,米酒少许,味精半匙,盐1小匙,白醋

    生活 2021年10月20日
  • Python解释器种类以及特点是什么

    技术Python解释器种类以及特点是什么这篇文章将为大家详细讲解有关Python解释器种类以及特点是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。python解释器是

    攻略 2021年12月4日
  • Redis中慢查询和订阅模式是什么

    技术Redis中慢查询和订阅模式是什么这篇文章主要讲解了“Redis中慢查询和订阅模式是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis中慢查询和订阅模式是什

    攻略 2021年11月15日
  • mysql如何解决幻读(mysql2003错误如何解决)

    技术mysql 5.7如何解决忘记密码问题小编给大家分享一下mysql 5.7如何解决忘记密码问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! mysql5.7忘记密码的解

    攻略 2021年12月16日
  • PostgreSQL物理备份工具pg_rman目怎么用

    技术PostgreSQL物理备份工具pg_rman目怎么用这篇文章给大家分享的是有关PostgreSQL物理备份工具pg_rman目怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。OS:

    攻略 2021年11月25日
  • RHEL5.1创建本地及FTP的yum源是怎样的

    技术RHEL5.1创建本地及FTP的yum源是怎样的本篇文章给大家分享的是有关RHEL5.1创建本地及FTP的yum源是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小

    攻略 2021年11月17日