随笔分类 - Windows编程
摘要:简介 C++中关于多线程的内容对于构建工程来说是至关重要的,C++本身也对关于多线程的操作提供了很好的支持。本章笔者就来介绍一下C++有关于多线程的重要知识点 临界区 。 临界区的作用 线程就像是进程的影子,可以帮助进程几乎在同一个时间内执行更多的任务。但是由于线程不占有资源,所有的线程共享进程的资
阅读全文
摘要:批处理打造MySQLCleaner 1. 简介 在我们卸载MySQL数据库的时候,往往除了需要卸载软件,还需要删除各种注册表信息,隐藏文件,卸载服务,否则当我们再次安装MySQL时就会出现一些令人难以理解的错误。所以为了简单起见
阅读全文
摘要:简介 所谓进程守护,就是A进程为了保护自己不被结束,创建了一个守护线程来保护自己,一旦被结束进程,便重新启动。进程守护的方法多被应用于恶意软件,是一个保护自己进程的一个简单方式,在ring3下即可轻松实现。而创建守护线程的方法多采用远程线程注入的方式,笔者之前曾介绍过远程线程注入的基本方式,主要分为
阅读全文
摘要:下载安装MASM32汇编环境 官方下载站: "MASM32" 环境变量配置 1. 配置 MasmHome 变量,值为 masm32 的安装目录: 2. 配置 include 和 lib 变量 include : %MasmHome%\include; lib : %MasmHome%\lib; 3.
阅读全文
摘要:简介 在之前的章节中,笔者曾介绍过有关于 "远程线程注入" 的知识,将后门.dll文件注入explorer.exe中实现绕过防火墙反弹后门。但一个.exe文件总要在注入时捎上一个.dll文件着实是怪麻烦的
阅读全文
摘要:简介 添加注册表项是实现文件自启动的经典方法之一,但因为操作注册表项是一个敏感操作,被报毒可能性较大,但即便如此,这个方法还是值得一学的,因为后期大部分编程都涉及到注册表操作。 最常使用到的注册表项有两项: 1. "HKEY_CURRENT_USER\\Software\\Microsoft\\Wi
阅读全文
摘要:简介 大多数后门或病毒要想初步实现 隐藏进程 ,即不被像任务管理器这样典型的RING3级进程管理器找到过于明显的不明进程,其中比较著名的方法就是通过远程线程注入的方法注入将恶意进程的 DLL文件 注入系统认可的正常进
阅读全文
摘要:简介 前面我们介绍到我们可以用进程注入的方法,借用其他应用的端口收发信息,从而达到穿墙的效果,那么今天介绍一种新的方法,叫做 端口复用 技术,他能够与其他应用绑定同一个端口,但同时进行端口复用的程序会接管之前程序的信息接受权,所以我们在复用端口后,要对非后门信息通过 127.0.0.1 本机回环地址
阅读全文
摘要:简介 Windows NT系统后门要实现自启动,有许多种方法,例如 "注册表自启动" , "映像劫持技术" , "SVCHost自启动" 以及本章节介绍的 "服务自启动" 等方法,其中服务自启动相对于上述其他三种需要修改注册表的启动方式而言更不容易被发现。 C++代码样例
阅读全文
摘要:简介 在Windows系统中有一个系统服务控制器,叫做SVCHost.exe,它可以用来管理系统的多组服务。它与普通的服务控制不同的是它采用dll导出的ServiceMain主函数实现服务运行,详细原理可参照Blog: "SVCHOST启动服务实战" 。我们在使用此方法时,要有两个步骤: 1. 编写
阅读全文
摘要:简介 Windows映像劫持技术是微软提供给软件开发者调试使用的在注册表项,能够替换目标进程执行。但如果被病毒木马利用,便会成为触发式自启动的绝佳方式,所以修改映像劫持的操作行为也被反病毒软件列为极其危险的行为之一。 实现映像劫持修改的注册表项为: "HKEY_LOCAL_MACHINE\SOFTW
阅读全文
摘要:简介 在之前已经笔者已经写过 "利用.def文件进行dll函数动态导出" 的文章,那么今天就给大家介绍一下,如何利用 __declspec 函数前缀进行简单的静态函数导出。 要点 大家阅读过 "动态导出" 的文章后,只需要将原文导出函数的前缀加上 extern"C" __declspec(dllex
阅读全文
摘要:简介 说到代码控制Windows关机/注销/重启的方式,有很多种,最简单的不过就是控制命令行,使用 system("pause") 函数执行一个 shutdown s t 0 ,关机就完成了。但这种方式还要借助于命令行的方式解决问题。而Windows早就提供给我们直接控制关机/注销/重启的API了,
阅读全文
摘要:简介 Windows系统如何通过C/C++下载互联网上的文件呢?这里笔者给大家演示一个最简单的方法,利用Windows提供的 urlmon 库,可以快速实现文件下载的简单实例。 注: 本文内容部分参考了《非安全》编辑部出版的《Hack编程实例精讲》系列书籍,在此致谢。 C++代码样例 演示效果 运行
阅读全文
摘要:简介 在渗透测试中开启对方电脑的3389端口是入侵者加入对方计算机账户后要想直接控制对方计算机的必须步骤,即开启对方计算机的远程终端功能,不同的Windows系统要开启3389需要修改不同的注册表项,为了方便,我们直接添加所有可能的注册表项,其中Windwos2000电脑需要重启激活,本程序并未添加
阅读全文
摘要:简介 根据前面两篇Blog介绍的 "双管道后门" 和 "单管道后门" ,他们的特点是一定需要建立管道以便进行进程间通信。但是能不能不需要管道呢?答案是可以的,这里需要借鉴重叠IO的思想,将程序中的 socket 函数替换成支持重叠IO的 WSASocket 函数。 核心知识点 si.hStdInpu
阅读全文
摘要:原理简述 单管道后门 相对于 "双管道后门(参照前面发的Blog)" ,很明显单管道后门使用了“cmd.exe /c [命令]”的用法在进行cmd进程创建时就顺带执行了命令,所以省去了由socket发往cmd的管道。同时笔者为样例程序加上了 反向连接 的模块,反向连接由宿主机作为client端,操纵
阅读全文
摘要:简述 后门程序 有两个重要的过程,分别是 socket与cmd通信 的过程和 cmd结果回传给socket 的过程。而 双管道正向连接型后门 是后门中最古老的一种,采用两个匿名管道,分别负责上述两个重要过程。其中正向连接的意思是后门充当Server端,然后用户使用 telnet或netcat(nc)
阅读全文
摘要:简介 动态链接库最大的优势在于可以提供给其他应用程序共享的资源,最小化应用程序代码的复杂度,其中一个十分重要的功能就是dll可以导出封装函数的功能。导出函数有两种主要方式,分别是 静态导入 和 动态导入 ,本文主要介绍 动态导入 功能。 方法解析 (1)创建DLL动态链接库项目 (2)在DllMai
阅读全文
摘要:要点 使用 FindFirstFile 和 FindNextFile 两个WindowsAPI,并配合 链表 或 队列 存储文件夹序列。 C++源码(链表存储) C++源码(队列存储) 运行截图
阅读全文

浙公网安备 33010602011771号