12558网页游戏私服论坛

 找回密码
 立即注册
游戏开服表 申请开服
游戏名称 游戏描述 开服状态 游戏福利 运营商 游戏链接
攻城掠地-仿官 全新玩法,觉醒武将,觉醒技能 每周新区 经典复古版本,长久稳定 进入游戏
巅峰新版攻 攻城掠地公益服 攻城掠地SF 新兵种、新武将(兵种) 进入游戏
攻城掠地公 散人玩家的天堂 新开 进入游戏
改版攻城掠 上线即可国战PK 稳定新区 全新改版,功能强大 进入游戏
少年江山 高福利高爆率 刚开一秒 江湖水落潜蛟龙 进入游戏
太古封魔录 开服送10亿钻石 福利多多 不用充钱也可升级 进入游戏
神魔之道 签到送元宝 稳定开新区 送豪华签到奖励 进入游戏
神奇三国 统帅三军,招揽名将 免费玩新区 激情国战,征战四方 进入游戏
龙符 三日豪礼领到爽 天天开新区 助你征战无双 进入游戏
王者之师 免费领豪华奖励 免费玩新区 6元送6888元宝 进入游戏
查看: 376|回复: 0

OSX被动Fuzz框架

[复制链接]

52

主题

52

帖子

114

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
114
发表于 2020-2-9 03:57:19 | 显示全部楼层 |阅读模式
1. 这是什么?本框架基于内核模式中的被动 inlinehook机制,主要用于fuzzingOSX内核漏洞。
简单来说,这是一个典型的内核驱动,它inline-hook了与IOKit框架和内核服务相关的导入API。
如果内核发生了crash,你可以收集内核dump文件来重现漏洞。
你可以关注我的twitter:@flyic (of moony li) 来获得更多详细信息。
我们将会在东京的PacSec2016(10.26/10.27) 大会上,进行“Activefuzzing as complementary for passive fuzzing”的主题演讲,这之后,才会公布相关源代码。
PacSec Applied Security Conference: Tokyo, Japan
这个被动fuzzing框架是基于fG! 所写的针对OSX平台的
“the_flying_circus”Rootkit。在此特别感谢fG!
(A Mountain Lion rootkit for Phrack#69! Copyright (c) fG!, 2012, 2013 - reverser@put.as - Reverse Engineering and Security for fun and pleasure!  All rights reserved.)


2.运行要求
原则上,这个被动fuzzing框架支持Mac Pro/Air上的普遍OSX版本。
根据我们的经验,从10.11到10.11.6的内核版本对被动fuzzing几乎没有干扰。
这个框架已在Mac Pro,10.11.6,KDK_10.11.6_15G31.kdk上测试。


3.如何使用?
重要提示:
运行内核驱动会导致内核突然崩溃,使得你失去所有的数据。请自行承担使用这个内核驱动的风险。


3.1 快速开始
如果你只是为了好玩而尝试这个被动fuzz,请按照这样快速操作:
a.      加载快速被动fuzz的驱动
sh-3.2#chown -R root:wheel ./quick-pasive_kernel_fuzz.kext
sh-3.2# kextutil ./quick-pasive_kernel_fuzz.kext
b.      quick-pasive_kernel_fuzz会在内核模块中出现
sh-3.2#kextstat
然后你就会在内核模块列表中看到这个驱动


3.2使用ThunderBolt线进行调试的完整调试
这个开始引导适用于任何运行MacOSX系统的机器(例如:MacPro,MacAir, Mac Mini)
这个方案要求需要另外一台被调试用的OSX机器和额外的ThunderBolt线。
ⅰ.在被调试的OSX机器上

a.      准备KDK和nvram
Ⅰ.下载KDK_10.11.6_15G31.kdk(以这个KDK为例)并且安装在你的Mac电脑上。

Ⅱ.将kernel.development拷贝到系统目录文件夹并且同步内核缓存
sh-3.2#cp -fr
/Library/Developer/KDKs/KDK_10.11.6_15G31.kdk/System/Library/Kernels/kernel.development*/System/Library/Kernels/
sh-3.2# kextcache -invalid /
sh-3.2# reboot

Ⅲ.设置用以调试的启动参数
sh-3.2# nvram boot-args="debug=0x566kdp_match_name=firewire fwkdp=0x8000 pmuflags=1 kext-dev-mode=1  -v"
sh-3.2# reboot
b.加载用来被动fuzzing的内核驱动
sh-3.2# chown -R root:wheel./pasive_kernel_fuzz.kext
sh-3.2# kextutil ./pasive_kernel_fuzz.kext
c.你的Mac可能会在等待进一步调试时发生内核崩溃

ⅱ.在OSX主机上:

重要提示:
请保持ThunderBolt始终连接在两台机子上,因为即插即用(PnP)机制不支持已崩溃的内核。

a.准备KDK

1.下载KDK_10.11.6_15G31.kdk(以这个KDK为例)并且安装在你的Mac上。
这个步骤不是必须的,但是我们强烈建议这样做。在接下来的步骤中调用lldb,lldb会在调试主机和被调试机间匹配*.dSYM符号文件。否则,在你的调试过程中,符号信息不会显示。

b.调试已崩溃的目标机

Ⅰ.启动fwkdp服务
flyic-pro:pasive_kernel_fuzz.kext root1$ fwkdp

Ⅱ.lldb 调试
sh-3.2# cd/Library/Developer/KDKs/KDK_10.11.6_15G31.kdk/System/Library/Kernels
sh-3.2# lldb ./kernel.development
(lldb) kdp-remote localhost
The debugger would wait until the targetmachine  crashes, and then you can typeany command for debugging including collect core dump file.

3.3 使用有线局域网进行完整调试
因为只有老式的OSX机器支持有线局域网(例如:旧的MacMini),所以这种类型的调试并不普遍。

等待被完善。

译者:银雁冰
编辑:凌迟




来源:http://www.12558.net
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
楼主热帖
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|12558网页游戏私服论坛 |网站地图

GMT+8, 2024-5-19 14:00 , Processed in 0.103515 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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