频道栏目
首页 > 安全 > 网站安全 > 正文

一份网上找不到的网址导航源码漏洞分析

2009-07-22 17:30:11      个评论      
收藏   我要投稿

通明;红色黑客联盟 www.2cto.com 原创作品转载请注明

本文可以在此和作者交流:http://bbs.2cto.com/read.php?tid=94372

我网上的某个朋友给我一个他的网址导航网站,叫我帮他宣传宣传,我看他这站满强大地,比hao123等网站多了许多实用功能,我想他这程序应该很安全把,朋友把程序打包给我后,我检测了一下,程序发现一些超低级的漏洞,请大家往下看

登陆验证漏洞,这程序有个用户登陆的地方,在这地方因为登陆不严格导致出现"or=or漏洞我们来看源码

登陆地址为http://nihao188.com/user/login.htm我们来看他的处理表单文件login.asp代码

<%dim pw,vtime,myname                                     //定义三个变量
myname=trim(request("username"))                       //通过request对象接受客户端发来的帐号,程序员编写不严谨,不定义是用具体哪方法来接受,而且只过滤了空格
pw=md5(trim(request("pw")),16)                //这代码一样,也只过滤了空格
vtime=request("vtime")
set rs=server.createobject("adodb.recordset")
rs.open"select * from my_user where username="&myname&" and password="&pw&"",conn,1,3  

//直接带入数据库查询了

以下略------------------

我在这段代码后面加上注释,方便大家看

通过上面的代码大家看懂了把,直接用or=or登陆

这是一个漏洞,在首页里面有个新站登陆,这是提交用户新站的页面,在这个页面有跨站漏洞,在后台就可以显示用此漏洞我们可以得到cookie等信息,甚至挂马!!!

我们来看看这页代码

地址为http://www.nihao188.com/url.html

处理文件为url.asp文件

set rs=server.createobject("adodb.recordset")
Login_UrlNmae=Request.Form("webname")
Login_Url=Request.Form("weburl")
Login_Class=Request.Form("webtype")
alexa=Request.Form("alexa")
Login_Email=Request.Form("email")
qq=Request.Form("qq")
friend=Request.Form("friend")
Login_Menu=Request.Form("Login_Menu")
if Login_Menu="Add" then
   rs.open"select * from Login where Login_Url="&Login_Url&"",conn,1,3
   if not rs.eof and not rs.bof then
     Response.Write("<script language=javascript>alert(贵站已提交过,请不要重复提交!);this.location.href=/;</script>")
     Response.End()
   end if
   rs.close
   rs.open"select * from Login",conn,1,3
   rs.addnew
      rs("Login_UrlNmae")=Login_UrlNmae
   rs("Login_Url")=Login_Url
   rs("Login_Class")=Login_Class
   rs("alexa")=alexa
   rs("Login_Email")=Login_Email
   rs("qq")=qq
   rs("friend")=friend

看上面代码看出上面没做任何过滤就直接带入数据库查询

在主页有个网友留言那一样有跨站漏洞

地址:http://www.nihao188.com/quality.html

代码为

Message=trim(request("requireddescription"))
if Message="" then
Response.write"<SCRIPT language=JavaScript>alert(请提出您对nihao188网址导航的意见和建议!);"
Response.write"javascript:location.replace(/)</SCRIPT>"
else

  
    Set rsAdd = Server.CreateObject("ADODB.Recordset")
    sql="select * from Message"
    rsAdd.open sql,conn,1,3
    rsAdd.addnew
    rsAdd("Message")=Message   
    rsAdd("date")=now()  
    rsAdd.update
    rsAdd.close   
    response.write"<SCRIPT language=JavaScript>alert(您的留言已经提交!感谢您对本站的支持!);"
    response.write"javascript:location.replace(/)</SCRIPT>"
    response.end

只过滤了空格!!!

所以这程序安全性还是很有问题

最后我宣传宣传该站

http://www.nihao188.com/

2009最火爆的网址之家,网址导航,网址大全,实用网址一网打尽

大家来捧场,请转载本文章时加上通明博客链接:http://hi.baidu.com/tongming133

上一篇:007博客网XSS漏洞
下一篇:Web安全风险破解
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站