安全中国首页 > 文章中心 > 其他漏洞研究
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

浅释跳转漏洞(图)

更新时间:2008-3-5 0:20:34
责任编辑:果果龙
热 点:


跳转页面如下:


图3 CSDN跳转页面

查看页面源代码:


图4 CSDN漏洞源码

观察发现一共有4处出现测试字符串,其中一个没做过滤。于是轻易的可以构造弹出框的XSS注入语句,观察发现成功。


图5 CSDN弹出框

漏洞预防

由于在我的前一篇介绍搜索框XSS漏洞的文章中已经简单的介绍过怎么预防XSS漏洞了,所以XSS漏洞的预防在这里就不重复了,这里只讲述跳转漏洞预防。

这里以一个抽象的例子的来说明怎么预防跳转漏洞。

比如有个博客社区,一共普通用户点击社区首页的写博客,调用write_blog.php,其一般逻辑一般先检验登录,如果校验成功则继续,如果不成功则跳转到登录页面user_login.php,当用户在user_login.php正确的输入自己的帐号、密码后就会自动跳转到前一个页面。user_login.php之所以能够跳转到write_blog.php而不会跳转到 download.php往往需要在调用user_login.php的时候给他传递回调url作为参数。例如CSDN是:

http://passport.csdn.net/UserLogin.aspx?from=http://d.download.csdn.net/down/357656/chenxhcc

正如前文所说,单单传递一个回调url作为参数是不安全的,这里需要一个机制保证回调url不被修改,最简单的方法就是增加一个参数签名。比如可以在write_blog.php和user_login.php之间约定一个key,然后对回调的url根据key进行加密,产生一个checksum作为校验码。这样就可以保证回调url不被篡改了。当然,也可以约定一些接口,比如site_id=1时表示写博客,site_id=2表示下载......

上一页 1 2 

 
相关文章
一日一文章
 
一日一软件
一日一动画