- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Ring3 NT rootkit 新思路
Ring3 NT rootkit 新思路
author : baiyuanfan
mail : baiyuanfan@163.com
August 7, 2005
内容目录:
一、NT rootkit发展的现状
二、ring3 nt rootkit新思路
三、挂钩异步I/O调用实现端口复用
四、在ring3控制iis6的端口
五、隐藏自己:自删除和复活
六、另外一些思路和讨论
附录
一、NT rootkit发展的现状
随着后门攻击与防御技术
的发展,普通的远程管理
程序式的后门早已不能够
适应复杂的环境:防火
墙,安全策略,IDS等。
防火墙限制了程序随意开
放端口或者反弹连接;各
种监测工具列举可疑的进
程文件启动项来发现和杀
死后门。于是rootkit应运
而生。它们具备自我
隐藏好,能够穿越防火墙
等安全设施的特性。
隐藏自己的自启动
键值或其他手段
隐藏自己新增的或
改写的磁盘文件
隐藏自己的进程
提供一个有效穿越
防火墙的通讯手段
(如端口复用)
Rootkit需要做
到的一些事情
一、NT rootkit发展的现状
1. ring3范围:
代表作——黑客守卫者(Hacker Denfender)
隐藏自己新增的磁盘文件和注册表服务键值使用hook
ntdll.dll 中的nativeAPI实现
存在的问题:这个方法对付普通的管理员检查很有效,然而
对于来自内核的检测者直接进行的驱动级别的列举,完全无
能为力,因为后者不通过被hook过的执行路径。
端口复用通过挂接win32 API WSARecv / ReadFile实现
存在的问题:对新的IIS6无效
一、NT rootkit发展的现状
2. ring0范围,目前很少有实用的系统公开,本文内,不讨论
ring0的rootkit技术。不过,基本的是,ring0的rootkit更强大,更
复杂,但是面对HIDS的挑战时,ring0的hook的危险级被认为比
ring3更高。
3. 因此我们发现,如何设计稳定有效的端口复用和如何对抗来自
于内核态的anti-rootkit的检查,是目前ring3 nt rootkit急需解决
的重要问题。
二、ring3 nt rootkit新思路
整体思路
1. 通过挂接native API实现同步和异步的端口复用
2. 特别的对不能直接挂接2003的iis6加以处理
3. 用自删除的方法代替以往的文件启动项隐藏技术,“没有”代替
“隐藏”,对抗来自内核的静态检查
4. 多线程协作体系解决部分进程权限不足
5. 自己完成大多数必要的控制任务,不和可能暴露我们自己的其
他后门程序协作
6. 印证我的这些新思路:一个测试中的ring3 nt rootkit:
byshell v0.67 beta2
完整rootkit系统
端口复用模块 自删除和复活模块 命令解释模块
挂接网络
native API 判断并处理iis6 自删除
截获关机
消息并复活
多线程协作体系
二、ring3 nt rootkit新思路
?整体思路模式图
三、挂钩异步I/O调用实现端口复用
目的:在被挂接的tcp接收函数返回给应用程序控制以前比较接收到
的数据,如果是客户端发来的激活后门的信号,就夺走这个
socket,通知原来程序连接已经被关闭,并且在这条socket连接上
实现后门,从而做到不影响原来端口上服务的端口复用。
应用程序提交
网络I/O请求 Winsock层
Native层
本地系统服务
Tcp/Ip
底层驱动
(AFD,TDI,NDIS)
ring0
提交请求
返回
结果
Native层
本地系统服务
应用程序得到
I/O结果数据 Winsock层
这里红杠显示的地方,我们在ring3有几次拦截I/O结
果返回的机会,if(!strcmp(buff,”暗号”))(dobackdoor();)
SPI
SPI
三、挂钩异步I/O调用实现端口复用
挂钩同步的网络I/O的方法很简单,在真正的I/O函数返回之后,自
己返回控制给用户程序之前直接比较接收的数据是不是激活信号就
行了。
而对于异步的I/O调用则有两个难点:
在异步IO调用的api函数返回时,数据并未被更新,而是过一段
时间后通过另外的通知完成机制,因此无法在返回用户程序前直
接比较判断缓冲区内容
winsock库在SDK win32API层次上实现了非常多种类的IO模
型,令人困惑不知道该如何挂接
三、挂钩异步I/O调用实现端口复用
1. nativeAPI层次的I/O模型:
通过挂接nativeAPI层次的网络I/O函数,可避免处理那一大堆
的win32API层次IO模型。
我所知所有的windows native api在实现I/O时都是给用户3种
选择。同步IO,event objec
您可能关注的文档
- Outpatient diagnosis of acute chest pain in adults.pdf
- Overall Layout Design of Iron and Steel Plants Based on SLP Theory.pdf
- Outpatient Civil Commitment of__ the Mentally Ill - An Overview and an Update.pdf
- Overcome the annoying insomnia.ppt
- Oxygen Overabundance in the Extremely Iron-Poor Star CS29498-043.pdf
- Ozone Degradation of Lignin.pdf
- P-V-T equation of state of epsilon iron and its densities at core conditions.pdf
- P650HVN02.3.pdf
- PAC8000与IFIX通讯说明.pdf
- PACLIC_21_00_010_Choi.pdf
最近下载
- 基于VISSIM的城市道路交叉口自适应信号控制仿真技术研究-交通运输规划与管理专业论文.docx VIP
- 专题05 名著导读【备考2025】2024年中考语文真题分类汇编 全国版(含答案).docx VIP
- (完整版)交管12123学法减分考试题库及答案.docx
- 群建阀门公司安全生产事故应急预案.doc VIP
- GA_T 1343-2016防暴升降式阻车路障.pdf
- 教育数字化转型背景下高校数字素养教育实践模式创新路径.docx VIP
- 200个句子涵盖了高中英语4500词汇[宝典].doc
- 体育馆会堂网架提升专项施工方案.doc
- 小学英语“教—学—评”一体化的优势及运用对策.pptx VIP
- 2020年2月四川省喜德县医院系统(卫生类)招聘考试《医学基础知识》试卷及答案.pdf
文档评论(0)