- 博客(127)
- 资源 (2)
- 收藏
- 关注

原创 windows 平台相关的资料(开发/逆向/漏洞等方向)
dll编写相关:链接:https://www.cnblogs.com/talenth/p/9585208.htmldll劫持:链接:https://www.cnblogs.com/wayuzhi/p/4152516.htmldll相关:链接:http://www.voidcn.com/article/p-pohgxapy-su.htmlcom编程相关:链接:https://blog.c............
2020-01-20 10:45:18
818
原创 uac bypass 相关资料
在较新的win11上面,通过netplwiz来绕过uac已经无效了;通过cmd命令行启动netplwiz就会出现uac弹窗。第七步,选择 所有文件,查找cmd.exe;右键以 管理员权限运行,不会弹出uac框。第四步 点击帮助按钮,弹出下拉菜单,选择 帮助主题 如下。第五步 右键,弹出菜单,选择 查看源文件。第六步,点击 文件,选择 打开。
2025-02-26 17:16:15
137
1
原创 [记录贴] 火绒奇怪的进程保护
但奇怪的是,在另外一台机器上面更新到最新版本,火绒相关的进程还是可以被processhacker杀掉;pyark还是可以强杀的。进程强杀之内存清零---
2025-02-25 13:30:56
248
原创 某“银狐”样本清除思路
Update.wnc对应的是计划任务运行的文件,计划任务项目名称为 kafanbbs(可以在系统日志中找到相关记录),对应的xml文件时EFCF.tmp在临时文件夹。3, 去runtime.exe所在文件夹下,发现并没有对应的文件;所以把上面这些文件及创建的表项删完,基本上就清除干净了。直接ctrl+a+ctrl+d 删除这些文件,本能删除的尝试重命名;curl.dll和tProtect.dll对应的是驱动服务,需要删除服务项。可以看出,Autoruns并没有列举出”银狐“注册的特殊计划任务,差评。
2024-12-18 23:00:50
486
转载 x64 gs寄存器解读
**原文链接:https://blog.youkuaiyun.com/QQ1057081261/article/details/131598154。值得一提的是,虽然gs:[0x60] 直接存放的PEB,但是由于vista/7后的地址随机化机制,还是从TEB获取比较靠谱.由于x64下vs2005没法直接使用内联汇编,所以只把必须使用汇编来做的事情写成单独的asm。得到了PEB,剩下的就和x86下一样了.只是偏移不一样了。x64下.指针的长度已经是8个字节,所以偏移不一样了.//用c语言描述就是。
2024-11-15 09:34:17
98
原创 locked勒索病毒流程记录
大部分功能都集中在模块3里面,其采用c#编写;内部有通过base64编码的形式携带易被利用的驱动和用于加密的模块。其中3.1和3.2可以在github上找到对应的仓库;关键点:socket+VirtualAlloc+CreateThread。模块 3,1,nday提权 2,byovd攻击进行杀软对抗 3,调用加密模块加密文件。模块 2,带有混淆的hta脚本通过mshta.exe执行。主要介绍其各个模块之间运行流程,不做细节上分析。3.1 相关git链接。3.2 相关git链接。
2024-03-26 13:38:54
255
原创 关于byovd攻击的原材料
关于byovd攻击的防御模型还行还没有怎么听说过,大部分厂商都是像wd一样使用黑名单或者提取特征,没有那种通用的处理方法。里面应有尽有啊,简直就是,完全看你自己的发挥咯。用的好就是第三方驱动插件,支持各种功能diy。
2024-03-12 13:40:20
526
原创 进程间通信之alpc
常见的进程间通信有管道,共享内存等。下面演示一种交少见的机制,alpc (advanced local procedure call)。文件CPP-ALPC-Basic-Client.cpp。下面出现的代码都来自参考链接中,非本人编写。文件CommandALPC.cpp。
2024-01-05 17:18:00
1117
原创 通过windows cng api 实现rsa非对称加密
相对于aes等对称加密算法,rsa加密算法不可逆性更强。非对称加密在通常情况下,使用公钥对数据进行加密之后,如果没有私钥,基本是不可能实现解密的。在一些勒索程序中,非对称加密会经常出现;通过运行结果可以看出,调用系统cng api 每次生成的密钥对都不一样,这就很ok。(下文通过cng api演示rsa加密,不做原理性介绍)
2023-12-23 14:22:10
826
原创 在windows11上彻底关闭系统更新
步骤 1,定位到系统更新的关键程序文件,如下图中绿框中的4个文件,通常在c:\windows\system32目录下面,wuauclt.exe,wuaueng.dll,wuapihost.exe,wuapi.dll。系统更新是由具体的程序来完成的,可以通过修改(重命名或删除)该程序的文件,使得系统无法启动更新这个过程;步骤 2 ,以文件wuauclt.exe为例,选中该文件并右键,查看属性;步骤3,对wuauclt.exe进行重命名,会有弹框提示,如下图。如果上面都成功执行,7的确定会变亮,并点击确定。
2023-12-12 22:30:12
1086
1
原创 Windows Management Instrumentation (WMI) 的使用---一些系统接口的替代者
之前在一些样本里面看到了类似于sql的字符串,一直不太清楚那些是做什么的。哪些语句是wql(大概就是windows系统自己的查询语句),通过执行这些特定的查询语句,可以获取或修改许多系统相关的信息。比如说查询系统中当前运行的进程,系统中服务信息等;之前这些操作一般通过系统底层的api(CreateService,OpenProcess等)来获取。用来做一些运行环境检查(虚拟机,杀毒软件等)。通过上面的截图可以看到,查询一个类(class)的信息,会有多个字段返回,就像sql里面的表(table)。
2023-12-04 14:56:34
664
转载 How to exploit a vulnerable windows driver
【代码】How to exploit a vulnerable windows driver。
2023-09-22 16:52:22
147
原创 c++ stl 之vector使用
C++ STL(标准模板库)是一套功能强大的 C++ 模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。当然,向量中除了可以存放int类型的数据,其他的像char,DWORD,std::string或者自定义的结构体都是可以的。向量容器(一个 C++ 标准的模板),它与数组十分相似,唯一不同的是,向量在需要扩展大小的时候,会自动处理它自己的存储需求."
2023-07-04 11:35:41
220
原创 通过修改peb中的命令行参数字段实现进程创建的劫持
之前分析过的一些恶意软件中会使用这种方法来进行浏览器的主页劫持,其原理就是在进程创建回调函数中处理进程的创建消息。下面示例展示了如何修改命令行参数:以abcdefg.exe进程为例,其完整文件路径为:"C:\Users\1909\Desktop\abcdefg.exe";进修改后变为:"C:\Users\1909\Desktop\abcdefg.exe" -124,当然也可以变为:"C:\Users\1909\Desktop\abcd.exe" -124。
2023-06-25 11:15:46
431
原创 windows pe文件导入表隐藏
假如,需要使用CreateFileA,WriteFileA,CloseHandle等api,我们会通过GetProcAddress来获取其地址,然后保存到自定义的函数原型指针中。但是,这样就会导致每个函数都有一个单独的变量,无法统一管理;分析过一些文件,发现里面都会对引用的api进行动态获取,然后通过内存指针调用。细细想来,这种方法还是有一定的对抗作用的,如果别人想要分析的必须的稍微深入或者动态调试一下。1,动态获取函数地址,统一保存,通过下标(漂移来识别)2,调用时,对函数地址进行函数指针化,完成调用。
2023-06-16 22:38:35
195
原创 minhook探究
在接口的设计,hook的兼容性等方面,还是值得我们初学者解决的。熟悉inline hook的,在阅读了minhook的代码之后就会发现,它也是用的这种hook方法。紧接着是一个jmp指令,但是跳转的地址看起来有点不对,实际上是反汇编引擎解析有误,从源码中可以知道这里实际上是跳转到一个绝对地址(0xff,0x25,0x000000,0x7fff05fa4175),也就是CreateFileA第二条指令开始的地方(0x7fff05fa4175)。总的来说还是好用的。
2023-06-05 16:02:33
819
原创 I/O完成端口(iocp)相关内容学习
通过阅读微软的I/O完成端口介绍,可以大致了解该机制通常结合异步I/O解决多线程的高并发问题。1,通过CreateIoCompletionPort将文件句柄与端口进行关联,并设置处理异步I/O业务的线程数。2,创建线程,等待处理I/O业务。3,调用异步I/O接口。
2023-06-01 17:05:57
265
转载 Windows下x86和x64平台的Inline Hook介绍
如果你通过windows.h头文件导入WriteConsoleA这个函数,会发现它调用了kernel32.dll的WriteConsoleA而不是kernelbase.dll的,这个你可以去反汇编看看,但是在kernel32.dll内部,你会发现函数头部就是一句jmp指令,而真正执行的是kernelbase.dll里的函数,所以一般选择要Hook的函数的时候,如果这个函数头部是一句跳转指令,则去修改跳转过去的地址。而__i386__是gcc定义的x86下的宏,_M_IX86是微软定义的。
2023-02-26 21:40:20
441
原创 [小记]注入服务进程/跨session注入
(都是系统管理员权限启动)左边是重启后,右边是重启前。进程的SeDebugPrivilege被“点开"后,可以注入svchost.exe。目标进程是svchost.exe,是服务进程,在session0;弄巧成拙:通过ProcessHacker把资源管理器进程重启后,发现又可以注入服务进程了。所有和session没有什么关系,那是为什么?最近测试注入遇到一个问题:OpenProcess 失败,报错码:5,没有权限。1,是否是管理员权限启动程序?2,注入的目标进程有什么特殊?3,上网搜索相关内容并继续试验。
2023-02-14 11:00:09
557
原创 [推荐]aes,base64使用
上面的aes和base64都是c语言实现的,没有本地库依赖,可以根据需要添加使用。后面的一个网站是在线的aes工具,支持多种模式与填充方式,输出支持base64和hex格式,可以用来作为辅助验证程序的正确性。(具体实现细节待研究)
2023-02-12 11:50:10
267
原创 cjson,libcurl 使用demo
这些开源的库使用起来能够节省不少精力和时间。如果是自己去实现相关的功能,一方面是时间来不及,一方面是效果和性能不一定有保证。这些库都是经过长时间维护和优化的,在开发中应用确实比较方便(其实是自己做不到同等效果,哈哈)。(相关的源码文件都可以在github上下载)
2023-01-16 11:18:38
371
原创 ACE-SSC-DRV64.SYS 文件分析
2,设备对象的通信操作,对应驱动里面irp_mj_device_control处理函数。驱动接收到数据之后,根据里面的索引执行对应的函数,没有使用通常的控制码来区分子功能。读取进程的内存时,使用PsAcquireProcessExitSynchronization来“锁住”进程,避免在读取操作期间,进程退出导致异常。1,设备对象的打开操作,对应驱动里面irp_mj_create处理函数中,会对进程名进行过滤;经分析,发现主要功能是进程的内存读取,为应用层提供相关的接口。而不是直接遍历进程。
2023-01-14 13:27:07
4470
转载 (转载)windows消息管理机制
一、基本概念1.SDK和API的区别SDK:软件开发工具包(外语首字母缩写:SDK、外语全称:Software Development Kit)一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。API:应用程序接口。windows API是通过C语言来实现的,头文件为windows.h;MFC和QT是C++实现的,是C++的GUI开发框架。3. 句柄4.消息。
2023-01-07 14:09:43
332
原创 通过进程id获取用户名
可以看到,User name这一栏里面,有NT AUTHORITY\SYSTEM,NT AUTHORITY\LOCAL SERVICE,HKS\1909等。不同的用户名拥有不同的权限。下面的代码获取的用户名与ProcessHacker的结果有一点不同。在一个样本中看到的:通过进程id获取对应的用户名,来确定需要注入的目标进程。实际结果中SYSTEM对应的是HKS$(HKS是设备名称,后面跟着'$‘,来表示SYSTEM);其他的LOCAL SERVICE,1909是一样的。
2022-12-24 19:19:00
1063
3
转载 获取系统完整版本号/本机ip/系统开机时间/当前时间/本机mac/网关mac
【代码】获取系统完整版本号/本机ip/系统开机时间/当前时间/本机mac/网关mac。
2022-11-21 09:47:54
253
原创 终章-天花板
距离我最开始接触Equation Group的样本已经有3,4年了吧,分析这些样本在很大程度上促进了我对windows系统的了解;虽然我还是无法完成类似的作品,但是现在至少可以‘欣赏’一下。
2022-08-04 17:35:10
345
转载 kernel mitigations
*原文链接:Kernel Mitigations - CNO Development Labs (cnotools.studio)*关于windows kernel mitigationsIn this section, we shall take a brief look at some of the Windows kernel mitigations that might hinder or completely block our exploits. Additional details .
2022-03-09 11:03:16
599
原创 cerber勒索软件分析
前置关于对称/非对称加密:对称加密和非对称加密的区别 - 姚春辉 - 博客园 (cnblogs.com)常见的对称加密算法有:DES、3DES、Blowfish、IDEA、RC4、RC5、RC6 和 AES常见的非对称加密算法有: RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)...
2022-01-18 09:35:08
903
原创 zamana 反恶意软件核心模块分析--amsdk.sys
zamana AntiMalware 是windows平台上的一款反恶意软件(轻量级),其核心模块amsdk.sys实现了内核层的功能;amsdk.sys没有加壳/混淆,而且还有很多调试信息,这有利用我们理解其开发流程和细节。(分析环境:win 11 64,zamana AntiMalware 免费版)以下从其六个主要的功能模块展开分析:1,authentication manager (进程认证管理)2,mini filter (文件过滤功能)3,self guard (自我保护)
2022-01-13 16:46:44
570
原创 一个简单的windows filesystem mini filter 驱动例子
代码网上都有,就讲一下解决安装问题:1,mini filter 的安装,一开始还是项普通的 legacy driver一样,通过命令函 "sc create servicenam binPath type=kernel"发现一直报错:找不到文件;然后调整"sc create servicename binPath type=filesys";驱动可以起来,然后FltRegisterFilter失败,报错找不到对象(0xc0000034).原来mini filter driver 安装需要通过inf 文件
2022-01-10 18:17:32
1538
3
原创 (VMProtect 分析)跟着ida和WinDbg逛VirtualMachine
本文中的代码示例来源于vgk.sys(1.0.0.3):从文件中抽出的某个handler的开头部分,代码出现的先后顺序就是其逻辑上的执行顺序。如下: .stub0:00000001405BC2AD push 2B6CD1BFh.stub0:00000001405BC2B2 call handler5.stub0:00000001405716F3 handler5 proc near
2021-12-06 18:03:13
1596
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人