Hackademic: RTB2
项目地址:https://download.vulnhub.com/hackademic/Hackademic.RTB2.zip
是一个打包好的镜像文件
注意:导入 vmx 时一定要选择我已移动,否则没网
使用 Nmap 扫描出开放服务及操作系统版本

666 端口被过滤了,访问 80 端口

SQL 注入
80(万能密码)
使用万能密码登录成功
1 | ' or 1=1--' |

这是它后端源码

查看页面源代码发现提示

解密拿到提示


666
测试发现这个页面存在 SQL 注入


CTF
Port Knocking
Port Knocking 是一种通过在闭合的端口上产生一系列特定的连接尝试(敲门),来触发防火墙临时开放特定服务端口的机制
特征:用 nmap 扫描,会显示 filtered
客户端按照约定的顺序向服务器的一组闭合端口发送数据包。例如:先访问 7000 端口,再访问 8000 端口,最后访问 9000 端口
1 | # -r 表示按顺序依次扫描端口 |

再次扫描发现 666 端口开放

访问是个 Web 界面

RCE
666
继 SQL 注入后直接 --os-shell 发现可以插入木马,有一个我们的可读文件

弱口令
phpMyAdmin
执行
1 | sqlmap -u "http://192.168.1.9:666/index.php?option=com_abc&view=abc&letter=List+of+content+items...&Itemid=3" \ |
拿到账号密码
1 | root:yUtJklM97W |
成功登录进 phpMyAdmin 后台

提权
PHP 反弹 Shell
编写好文件开启 HTTP 服务

通过之前的 SQL Shell 下载文件
1 | # 中间有两个空格 |

网页端运行木马

收到请求建立连接

Python 升级为交互式 Shell
1 | python -c 'import pty;pty.spawn("/bin/bash")' |

内核 RDS 协议(CVE-2010-3904)
根据内核版本搜索漏洞发现这个编号的漏洞可以打

快速定位到位置

通过 HTTP 服务传到靶机上编译运行提权成功
