您的位置:首页 > 运维架构 > 网站架构

国内网站大多存在的安全问题、

2009-11-28 10:59 246 查看
今天偶然进了一个挺大的网站、

当时注册了一个帐号、随即登录进去、

随便进了几个页面、做的还不错、

接着、系统提示我上传一张头像、

我就照办、然后弹出了一个模式窗口、

点击右键、查看源代码、javascript验证写的不错、

文件类型已经限制了、只允许.jpg和.gif

但是javascript是运行在客户端的、用户可以屏蔽、

而且技术高点的可以远程提交表单啊、

随即、我将部分代码拷贝出来、新建了一个html页面、

去掉js验证、将多余的代码也干掉了、

   以前的提交地址是:form action="admin_pic_upfile_3.asp"

以前的是相对路径、现在改成绝对路径、

form action="http://www.XXX.net/upload/admin_pic_upfile_3.asp"

在本机打开页面、选择一个文件、点击上传、

果真提示上传成功、我上传的是一个txt文本、

想必、asp木马也可以上传吧、虽然上传成功了、

但没办法知道上传成功的文件的URL、无法访问到资源、

郁闷、随即一个不小心、又查看了一下源代码、

是一段JS代码、也是这一段JS代码、成为了致命的漏洞、

  <script language="javascript">alert("上传成功");window.opener.del();window.opener.jf.innerH   TML="10";window.opener.document.face_pic.src="/face/200911/28/small/20091128390168   81.jpg";window.close();</script>

将文件的存放路径暴了出来、接下来也不用多说了、

其实不止这一个网站有这个问题、国内大多数网站都存在这个问题、

一些大网站还是做的很好的、在提交表单的时候、特别加了随机数、

避免远程提交表单、或者加了验证码、

所以提醒大家一点、在写登录和注册以及一些安全系数比较大的功能时候、

一定要防止用户远程提交表单、否则一旦被攻击、损失是很大的、

还有一点就是、处理上传的问题的时候、尽量在服务端验证用户选择、

不要用JS验证、因为这样是很不安全的、

呵呵、以上我本人总结的、写的不好、不要见谅、by:xluo
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐