- 博客(13)
- 收藏
- 关注
原创 内核文件读写操作--非MiniFilter模式
日常驱动开发中文件读写操作十分频繁,经常写不少重复的轮子,这里把生产环境稳定的文件读写操作模版发出来,方便有需要的同学不必重复造轮子。注意,我这里驱动开发使用的是C++17或者更高,所以大部分都是c++代码或者Template模板代码,需要设置c++编译环境才能使用。
2025-02-06 10:36:02
141
原创 常用工具函数记录--字符串Hash
这是一个基于FNV-1A(Fowler-Noll-Bagley)的哈希函数,适用于字符串哈希计算,效率非常高。在很多场景会用到,例如:主动防御软件在对白名单路径文件的放行检查等。
2025-02-04 14:57:21
70
原创 常用工具函数记录--进程操作
2. 根据进程名获取PID(注意:对于同名多进程需要额外处理)5. 复制指定PID进程的Token句柄。4. 根据进程名挂起与恢复进程。1. 根据PID查杀进程。3.根据PID获取进程名。
2023-06-20 10:50:55
121
原创 常用工具函数记录---(Kernel) PID-HANDLE-EPROCESS-PATH 转换
在内核中根据进程的pid、句柄、eprocess等进行相互获取转换
2023-06-19 15:48:56
147
原创 Windows动态沙箱实现--进程回调监控
下面是我们的回调代码实现,核心功能是获取当前创建的进程PID、全路径、命令行、父进程PID、父进程全路径信息。需要注意的是,这里获取的父进程信息有可能是假的,最常见的就是启动服务、shellcode注入启动或者借助UpdateProcThreadAttribute伪造父进程启动。这类的伪装,我们需要在后续的InfinityHook里实现发现并进行关联标注。前面讨论了沙箱的目标,今天开始落实代码实现,从功能实现的先后顺序上,我们优先实现4个回调:进程回调、镜像回调、线程回调、注册表回调,今天实现进程回调。
2023-06-19 11:10:30
405
原创 Windows动态沙箱实现--目标讨论
由于工作的需要,在平常经常会遇到这么一个情景“有一个软件,运行过程中不知道进行了什么网络连接、下载释放了什么文件,加载了什么驱动与dll、向哪个进程注入了什么shellcode、读取了哪个进程的什么内存、随后又远程启动了哪些最终干活的线程,导致了广告、图标、盗号等现象的出现”。2.通过WFP网络引擎捕获“进程-线程-DNS解析/目标IP清单” + “进程-线程-HTTP-GET/POST完整路径” + “进程-线程-TCP/UDP-本机IP:PORT/远端IP:PORT”;
2023-06-16 19:36:47
355
1
原创 常用工具函数记录---HEX字符串转为内存HEX
在一些特殊的场景下我们往往会用到一些将字面hex转换为内存模式的功能,这类需求往往是比较特殊的,但是在一些特异的场景下往往有需要用到,这里记录一下完整的工具函数与使用范例。本文的代码编写环境为VS 2022,GCC版本8.3,系统环境windows 10/Ubuntu 18.04/Ubuntu 20/Debian 10/Centos 8,直接拿走的朋友记得自己添加相关的入参与返回校验。//C 风格版本int C2Hex(char input){ if (inp...
2022-02-04 12:00:56
498
原创 本专栏说明
写了好多年的代码,一直没写过博客,新年伊始,决定慢慢的把一些大家都能到的工具函数、工程项目、技术攻关的东西都总结一下,发出来帮助后面需要的人,希望对大家能有一定的帮助。
2022-02-02 17:56:21
391
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人