摘要: 简介 根据前面两篇Blog介绍的 "双管道后门" 和 "单管道后门" ,他们的特点是一定需要建立管道以便进行进程间通信。但是能不能不需要管道呢?答案是可以的,这里需要借鉴重叠IO的思想,将程序中的 socket 函数替换成支持重叠IO的 WSASocket 函数。 核心知识点 si.hStdInpu 阅读全文
posted @ 2018-08-24 19:00 倚剑问天 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 原理简述 单管道后门 相对于 "双管道后门(参照前面发的Blog)" ,很明显单管道后门使用了“cmd.exe /c [命令]”的用法在进行cmd进程创建时就顺带执行了命令,所以省去了由socket发往cmd的管道。同时笔者为样例程序加上了 反向连接 的模块,反向连接由宿主机作为client端,操纵 阅读全文
posted @ 2018-08-24 18:57 倚剑问天 阅读(688) 评论(0) 推荐(0) 编辑
摘要: 简述 后门程序 有两个重要的过程,分别是 socket与cmd通信 的过程和 cmd结果回传给socket 的过程。而 双管道正向连接型后门 是后门中最古老的一种,采用两个匿名管道,分别负责上述两个重要过程。其中正向连接的意思是后门充当Server端,然后用户使用 telnet或netcat(nc) 阅读全文
posted @ 2018-08-24 18:54 倚剑问天 阅读(454) 评论(0) 推荐(0) 编辑
摘要: 简介 动态链接库最大的优势在于可以提供给其他应用程序共享的资源,最小化应用程序代码的复杂度,其中一个十分重要的功能就是dll可以导出封装函数的功能。导出函数有两种主要方式,分别是 静态导入 和 动态导入 ,本文主要介绍 动态导入 功能。 方法解析 (1)创建DLL动态链接库项目 (2)在DllMai 阅读全文
posted @ 2018-08-24 18:48 倚剑问天 阅读(714) 评论(0) 推荐(0) 编辑
摘要: 要点 使用 FindFirstFile 和 FindNextFile 两个WindowsAPI,并配合 链表 或 队列 存储文件夹序列。 C++源码(链表存储) C++源码(队列存储) 运行截图 阅读全文
posted @ 2018-08-24 18:40 倚剑问天 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 简介 在Socket编程的时候,我们需要实时获取我们所需要的IP地址。例如在编写后门的时候,我们可能需要获得有效的外网IP或内网IP;有时候我们可能需要判断我们获取的是否是虚拟机网卡,这时候就需要对每一张网卡上的特征进行识别。以下笔者总结了一些常用的处理方法供大家参考。 参考资料: 1. "提取网卡 阅读全文
posted @ 2018-08-24 18:38 倚剑问天 阅读(1479) 评论(0) 推荐(0) 编辑