好友
阅读权限20
听众
最后登录1970-1-1
|
本帖最后由 lichao890427 于 2019-12-11 09:30 编辑
由于已经从PC开发转到移动安全,因此放出我当时对Q管驱动的一些研究,2015年8月
本人目前做iOS安全领域。如果有合作或交流意愿,联系方式见git:https://github.com/lich4
TSDefenseBt.7z
(664.75 KB, 下载次数: 29)
TsFltMgr_D.7z
(322.09 KB, 下载次数: 11)
TSKsp.7z
(781.42 KB, 下载次数: 13)
TSSysKit_D.7z
(357.23 KB, 下载次数: 12)
TsDefenseBt分析 .rar
(32.98 KB, 下载次数: 23)
TsFltMgr_D.7z
(322.09 KB, 下载次数: 13)
TSFltMgr分析.rar
(188.47 KB, 下载次数: 15)
TsKsp Log.rar
(12.96 KB, 下载次数: 9)
TSKsp.7z
(781.42 KB, 下载次数: 12)
TsKsp分析.rar
(104.49 KB, 下载次数: 9)
TSSysKit_D.7z
(357.23 KB, 下载次数: 8)
TSSysKit分析.rar
(145.27 KB, 下载次数: 11)
WinDbg指令调试笔记.rar
(94.44 KB, 下载次数: 9)
TsSysKit.sys分析
一、驱动入口DriverEntry 2
1.1 检测加载者是否为Ntos 2
1.2 执行删除任务 DoDeleteJob 3
二、驱动接口Interface 5
2.1 DeviceExtension接口 5
2.2 与WRK代码异同点 6
2.3 重置/保存注册表对象ObjectInitialzer例程 6
2.4 NtCreateKey 7
2.5 NtOpenKey 9
2.6 NtQueryValueKey 10
2.7 NtSetValueKeyEx 11
2.8 NtDeleteValueKey 12
2.9 NtDeleteKey 13
2.10 IopCreateFile 14
三、控制码 17
3.1 TSSysKit x86 IoControlCode对应表 17
0x221C00解锁文件 21
0x222004普通结束进程 21
0x22242C穿透创建服务加载驱动 22
3.2 TSSysKit x64 IoControlCode对应表 25
四、默认派遣例程 30
4.1 根据进程id结束进程 30
4.2 获取当前进程进程名 30
4.3 由进程ID获取进程设备名 31
4.4 设备名转DOS路径 32
4.5 得到EPROCESS对应ImageDosPath 33
4.6 随机化程序名机制 34
4.7 根据进程文件名获取进程信息 35
4.8 两种方式调用内核函数 35
4.9 获取对象类型 36
4.10 基础库功能——检测腾讯程序合法性 36
4.11 解锁文件 38
五、获取ObjectInitializer 44
5.1 获取注册表OBJECT_TYPE,匹配对象类型 44
5.2获取ParseProcedure 46
5.3 获取GetCellRoutine偏移,Hook GetCellRoutine 47
5.4 Hook和UnHook GetCellRoutine 48
5.5 创建系统线程获取 Cm*函数 49
5.6 匹配结构 54
5.8 获取DeviceObject对象类型 73
TsKsp分析
TsKsp.sys分析报告 1
一、 驱动入口DriverEntry 2
1.1 监控模型 2
1.2 派遣例程 2
1.3 监控函数 3
1.4重要回调的挂钩 10
1.5 一些用到的数据 10
1.6 OBJECT_TYPE_INITIALIZER 挂钩 11
1.7 PROCINFO结构 12
二、 控制信息 14
2.1 ACL访问控制列表 14
2.2 匹配树 14
2.3 全局开关DriverSwitch 15
2.4 自保开关影响的函数和功能 17
2.5 规则判断 18
2.6 黑白名单g_StorageList 19
2.7 上抛消息结构 24
2.8 其他 25 (对Q管签名的破解)
三、 接口和控制码 27
3.1 导出接口 27
3.2 控制码 27
四、 基础库 33
4.1 由进程Id获取文件对象 33
4.2 由线程句柄获取进程对象 36
4.3 由线程对象获取进程Id 36
4.4 由Ntfs文件索引号获取文件对象 37
4.5 长度反汇编引擎 39
TsFltMgr分析
TsFltMgr.sys分析报告 1
一、 驱动入口DriverEntry 2
1.1 过滤模型 3
1.2 检查当前系统是否为默认挂钩系统 3
1.3 打开TsFltMgr日志记录 4
1.4 控制信息 4
1.5 全局表 4
1.6 Proxy*函数模型 19
二、 驱动接口Interface 22
2.1 DeviceExtension接口 22
2.2 SetEvaluateTime 22
2.3 SetDisablePrevFilter 23
2.4 SetPostFilter 23
2.5 ExecOriginFromPacket 23
2.6 AddPrevFilter 23
2.7 RemovePrevFilter 24
2.8 GetCurrentHookInfo 25
2.9 GetDProxyTable 26
三、 基础库 27
3.1 获取注册表键值 27
3.2 通过进程名获取进程ID 29
3.3 Rabbit加密算法 29
四、 InlineHook KiFastCallEntry 35
4.1 获取SSDT/SSSDT/Hook点 36
4.2 从KiSystemService获取KiFastCallEntry 39
4.3 获取SSSDT信息 39
4.4 初始化InlineHook KiFastCallEntry跳转表 41
4.5 获取系统服务号的2种方式 44
4.6 InlineHook过程 45
4.7 构造InlineHook跳转后的执行语句 48
4.8 强制单核互斥执行指定Procedure 51
4.9 进行SSDT hook 52
4.10 对重要回调(进程回调、线程回调、映像加载回调)的挂钩 55
4.11 Hook KeUserModeCallback 57
4.12 交换内存 58
4.13 获取函数Iat偏移 58
4.14 另一种方式获取ShadowSSDT信息 59
TsDefenseBt.sys分析
TsDefenseBt.sys分析报告 1
一、 入口点 2
Ntfs创建回调NtfsFsdCreateHooker: 2
RegisterShutdown: 2
ClearThread 2
ShutdownDispatch: 3
UnloadDispatch: 3
CreateDispatch: 3
CloseDispatch: 3
IoCtlDispatch: 3
删除360注册表项: 3
解除baidu驱动回调: 6
删除360快捷方式: 6
删除360服务项: 6
删除baidu注册表项: 7
NtCreateProcessNotifyHooker1: 8
NtSetValueKeyHooker: 9
ZwRequestWaitReplyPortHooker/ZwAlpcSendWaitReceivePortHooker 9
NtWriteVirtualMemoryHooker/NtCreateThreadHooker 9
FakeObReferenceObjectByHandle 9
CmCallback 10 |
免费评分
-
查看全部评分
|