阅读:2755回复:0
[恢复]如何检测及清除文件系统过滤驱动
您的查询字词都已标明如下:检测及清除文件系统 (点击查询词,可以跳到它在文中首次出现的位置)
如果打开速度慢,您可以尝试打开无图片的快照; 如果您想保存该页面,可以添加到搜藏 (百度和网页http://bbs.driverdevelop.com/htm_data/16/0609/118100.html的作者无关,不对其内容负责。百度快照谨为网络故障时之索引,不代表被搜索网站的即时页面。) -------------------------------------------------------------------------------- 控制面板 | 短消息 | 搜索 | 会员 | 帮助 | 社区 | 首页 | 无图版 驱动程序开发网技术社区 -> Kernel Mode discussion and Soft Driver -> 如何检测及清除文件系统过滤驱动 转到动态网页 --> 本页主题: 如何检测及清除文件系统过滤驱动 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题 WQXNETQIQI 级别: 驱动牛犊 精华: 1 发帖: 6 威望: 9 点 积分: 80 分 贡献值: 0 点 注册时间:2006-06-12 如何检测及清除文件系统过滤驱动 例如象3721或者是中搜那种不对sc stop等命令响应的driver,如何强行将其清除呢? [ 此贴被WQXNETQIQI在2006-09-23 16:21重新编辑 ] 驱网网上商城-开发板,开发资料光盘 驱动开发者 呵呵 [楼 主] Posted:2006-09-23 01:25| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 这个比较困难~IRP DispatchRoutine恢复~~包括inline,非inline的~~ 还有一种是filter摘除,谁都知道~~嘿嘿~~ 驱网网上商城-开发板,开发资料光盘 [1 楼] Posted:2006-09-23 09:19| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 摘filter比较容易: //使用方法: /* ClearFilters(L"\\Driver\\Tcpip"); ClearFilters(L"\\FileSystem\\Ntfs"); ClearFilters(L"\\FileSystem\\Fastfat"); */ void ClearFilters(WCHAR * Name) { UNICODE_STRING TName; PDRIVER_OBJECT TDrvObj; PDEVICE_OBJECT CurrentDevice; RtlInitUnicodeString ( &TName, Name); ObReferenceObjectByName( &TName, OBJ_CASE_INSENSITIVE, NULL, 0, *IoDriverObjectType, KernelMode, NULL, &TDrvObj); if(!TDrvObj) return ; CurrentDevice = TDrvObj->DeviceObject; while(CurrentDevice != NULL ) { CurrentDevice->AttachedDevice=0; CurrentDevice = CurrentDevice->NextDevice; } ObDereferenceObject(TDrvObj); return ; } 驱网网上商城-开发板,开发资料光盘 [2 楼] Posted:2006-09-23 09:21| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 非inline的恢复,稍微写个方法: RtlInitUnicodeString(&NtfsDeviceName, L"\\FileSystem\\Ntfs"); status = ObReferenceObjectByName( &NtfsDeviceName, OBJ_CASE_INSENSITIVE, NULL, 0, *IoDriverObjectType, KernelMode, NULL, (PVOID*)&NtfsDriverObject); if(NtfsDriverObject) { pntfs = GetModuleHandle("ntfs.sys"); ntfsCopy = LoadPeFile(L"\\Device\\HarddiskVolume1\\Windows\\System32\\drivers\\ntfs.sys",NonPagedPool, 0); pRealntfs = (PVOID)((char *)EP_ADDR(ntfsCopy)); ProcessRelocs(ntfsCopy, pntfs); __asm cli NtfsDriverObject->MajorFunction[IRP_XXX]=(PDRIVER_DISPATCH)GetFunctionAddrByID((BYTE *)pRealntfs, (BYTE)IRP_XXX); __asm sti ExFreePool(ntfsCopy); ObDereferenceObject(NtfsDriverObject); } 高速无限下载文件,请申请vip会员 [3 楼] Posted:2006-09-23 09:26| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 #define SearchDepth 0x100 DWORD GetFunctionAddrByID(BYTE *pDriverEntry, BYTE MajorFunction) { int i=0; DWORD function=0; BYTE ZZ = MajorFunction*4+0x38; if(ZZ < 0x80) { for (i=0;i<SearchDepth;i++) { if( (*(pDriverEntry+i)==0xc7)&& ( *(pDriverEntry+i+1)==0x46 || *(pDriverEntry+i+1)==0x43 ) && ( *(pDriverEntry+i+2)==ZZ) ) { function=*(DWORD*)(pDriverEntry+i+3); break; } } } else { for (i=0;i<SearchDepth;i++) { if( (*(pDriverEntry+i)==0xc7)&& ( *(pDriverEntry+i+1)==0x86 || *(pDriverEntry+i+1)==0x83 ) && ( *(pDriverEntry+i+2)==ZZ) ) { function=*(DWORD*)(pDriverEntry+i+3); break; } } } return function; } 高速无限下载文件,请申请vip会员 [4 楼] Posted:2006-09-23 09:26| doskey 级别: 驱动小牛 精华: 2 发帖: 124 威望: 119 点 积分: 1193 分 贡献值: 0 点 注册时间:2004-12-08 V大,有两个疑问。 1、EP_ADDR这个如何取得正确的DriverEntry?xpsp2的ntfs.sys的入口是GsDriverEntry,DriverEntry是紧跟在GsDriverEntry后的,那么EP_ADDR是返回的GsDriverEntry地址嘛?普通的带有GsDriverEntry的驱动,都在它的结尾处jmp到真正的DriverEntry。这在EP_ADDR中是分开处理的吗?还是有更好的方法? 2、刚刚看了GetFunctionAddrByID,发现它有很大局限性,好像只能在部分ms编译的驱动中才能试用。因为在0xC7后面的0x46、0x43、0x86、0x83分别是esi和ebx,可是有的驱动中的是用的其它寄存器。 望请指教 高速无限下载文件,请申请vip会员 [5 楼] Posted:2006-09-23 10:54| WQXNETQIQI 级别: 驱动牛犊 精华: 1 发帖: 6 威望: 9 点 积分: 80 分 贡献值: 0 点 注册时间:2006-06-12 谢谢VXK,检测如何做呢?就好象syser里的object viewer里可以看file system的filters那样 高速无限下载文件,请申请vip会员 驱动开发者 呵呵 [6 楼] Posted:2006-09-23 15:25| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 仔细看Clear部分~~ 如你所说:DriverEntry是紧跟在GsDriverEntry后面,用搜索过程搞定~~反正最后是搜索的~~ 就是针对MS的驱动才用那个酒肉和尚的搜索方法,否则需要反汇编~~~ 驱网网上商城-开发板,开发资料光盘 [7 楼] Posted:2006-09-24 08:33| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 其实如果你是杀毒软件或者反流氓软件大可以根据操作系统BuildNum可以硬编码地址偏移~~ 因为他们可以不断更新~~呵呵~~ 驱网网上商城-开发板,开发资料光盘 [8 楼] Posted:2006-09-24 08:36| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 对于检测可以看看sinister的http://www.whitecell.org/list.php?id=41 高速无限下载文件,请申请vip会员 [9 楼] Posted:2006-09-24 08:38| xyzreg 级别: 驱动牛犊 精华: 0 发帖: 95 威望: 53 点 积分: 532 分 贡献值: 0 点 注册时间:2005-06-20 摘除Filter Drvier我博客里写过。 驱网网上商城-开发板,开发资料光盘 [10 楼] Posted:2006-09-24 12:37| xyzreg 级别: 驱动牛犊 精华: 0 发帖: 95 威望: 53 点 积分: 532 分 贡献值: 0 点 注册时间:2005-06-20 DispatchRoutine恢复,得搜索特征码 高速无限下载文件,请申请vip会员 [11 楼] Posted:2006-09-24 12:39| WQXNETQIQI 级别: 驱动牛犊 精华: 1 发帖: 6 威望: 9 点 积分: 80 分 贡献值: 0 点 注册时间:2006-06-12 楼上说的是这篇文章么? 唉,软件防火墙好像没一个令我满意的,都比较弱,考虑不全。国内的防火墙更是令人心寒~ 无论是DLL注入还是不引入DLL的纯代码注入,还是TDI Cilent,都能把国内的防火墙搞定。NDIS hook 更不要说了.. 来点好玩的,其实我们只要写个驱动,从设备栈里把防火墙的TDI过滤驱动给摘除掉,这样就能对付一般的防火墙了。当然,国外强一点的防火墙,比如ZoneAlarm Pro 6.5就得再结合其他方法了,嘿嘿。 摘除过滤驱动的代码片段: RtlInitUnicodeString ( &TcpipName, L"\\Driver\\Tcpip" ); ObReferenceObjectByName( &TcpipName, OBJ_CASE_INSENSITIVE, NULL, 0, *IoDriverObjectType, KernelMode, NULL, &TcpipDrvObj); CurrentDevice = TcpipDrvObj->DeviceObject; while(CurrentDevice != NULL ) { CurrentDevice->AttachedDevice=0; CurrentDevice = CurrentDevice->NextDevice; } 这段代码就能足以使国内人人皆知的天网防火墙装了和没装一样... 呵呵 PS:这里的突破指的是软件防火墙的内对外层面。 驱网网上商城-开发板,开发资料光盘 驱动开发者 呵呵 [12 楼] Posted:2006-09-24 13:35| WQXNETQIQI 级别: 驱动牛犊 精华: 1 发帖: 6 威望: 9 点 积分: 80 分 贡献值: 0 点 注册时间:2006-06-12 10楼的名字很眼熟。。。是否玩6502的? 高速无限下载文件,请申请vip会员 驱动开发者 呵呵 [13 楼] Posted:2006-09-24 13:40| xyzreg 级别: 驱动牛犊 精华: 0 发帖: 95 威望: 53 点 积分: 532 分 贡献值: 0 点 注册时间:2005-06-20 QUOTE: 引用第13楼WQXNETQIQI于2006-09-24 13:40发表的“”: 10楼的名字很眼熟。。。是否玩6502的? what is 6502? 驱网网上商城-开发板,开发资料光盘 [14 楼] Posted:2006-09-24 23:51| WQXNETQIQI 级别: 驱动牛犊 精华: 1 发帖: 6 威望: 9 点 积分: 80 分 贡献值: 0 点 注册时间:2006-06-12 QUOTE: 引用第14楼xyzreg于2006-09-24 23:51发表的“”: what is 6502? 没有听说过就算了。。。可能认错人。。。 高速无限下载文件,请申请vip会员 驱动开发者 呵呵 [15 楼] Posted:2006-09-25 01:07| wowocock 级别: 驱动老牛 精华: 1 发帖: 4009 威望: 420 点 积分: 4127 分 贡献值: 1 点 注册时间:2002-04-08 删除过滤驱动的方法不好,因为你把所有的过滤全去掉了,其实只要去掉我们不要的驱动即可,方法和删除双向连表中项目一样. 高速无限下载文件,请申请vip会员 花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠 [16 楼] Posted:2006-09-25 08:40| guaiguaiguan 级别: 驱动小牛 精华: 4 发帖: 227 威望: 234 点 积分: 2340 分 贡献值: 0 点 注册时间:2003-10-11 killvxk用的方法在酒肉和尚的blog里看过 http://blog.csdn.net/sunwang123456/archive/2005/10.aspx 驱网网上商城-开发板,开发资料光盘 [17 楼] Posted:2006-09-25 08:53| killvxk 级别: 驱动中牛 精华: 0 发帖: 432 威望: 406 点 积分: 4031 分 贡献值: 0 点 注册时间:2005-10-03 我都说过了是酒肉的方法~~ 反汇编的方法虽然也不错,不过麻烦~(所有驱动通吃~) 驱网网上商城-开发板,开发资料光盘 [18 楼] Posted:2006-09-25 15:34| 快速跳至 >> 初学者入门 |- c/c++入门(含vc使用) |- InnoSetup 中文讨论区 |- Keil C 使用 |- 电子技术基础 |- ABC初学者 |- 驱动及应用程序安装程序制作 >> 安全技术 |- 反流氓、反木马和rootkit |- 网络安全技术 |- 病毒技术分析 >> 阅读与交流 |- windows 源码解读 |- 书评 >> 各取所需 |- 求职专区 |- 合作开发 |- 供需信息 >> 驱动开发 |- 每周话题 |- x64移植技术 |- WDF 学习与研究 |- Kernel Mode discussion and Soft Driver |- USB驱动开发 |- 非USB硬件驱动开发 |- 图形设备驱动版(打印、扫描、显示...驱动) |- Mac 驱动开发 |- NDIS网络接口开发 |- LINUX&UNIX核心开发 |- 开发工具使用 |- (IEEE1394)FireWire |- 文件系统(过滤)驱动程序开发 |- 软件工程在驱动开发中的应用 |- 总结、原创区 >> 硬件开发 |- DSP & PLD &FPGA |- 硬件设计 |- FirmWare |- 集成电路设计(IC) >> SNMP网管 |- SNMP网管软件开发 >> 嵌入式系统及掌上设备 |- 嵌入式系统开发 |- Wince 程序开发 |- VxWorks >> 程序人生 |- 疯狂灌水 |- 新闻,要闻,花边 |- 情感小屋 |- I love English |- 程序人生 |- 志宁自语 |- MP3 & FLASH 共享 |- 艺术&帖图区 |- 漂流一族 >> 其它事务 |- 用户留言 |- 软件使用与交流 >> 公司黑白名单 |- 白名单 |- 黑名单 >> 合作网站技术支持论坛 |- 驱动开发网在线商城 |- syser debugger |- S1系列PCI开发板、FPGA开发板支持 |- PLX PCI 开发板支持 |- DriverStudio 技术支持 驱动程序开发网技术社区 -> Kernel Mode discussion and Soft Driver 快速发帖 顶端 内容: HTML 代码不可用 使用签名 Wind Code自动转换 [查看帖子长度] 标题: 表情: 按 Ctrl+Enter 直接提交 Powered by PHPWind v4.3.2 Code ? 2003-05 PHPWind This is html template view this page faster You can contact us |
|
最新喜欢:znsoft
|