有关网站数据库被入侵的方式 XSS 解析

百度等大网站也曾经爆过 XSS{注1} 漏洞。这里复制一个例子吧,这个例子只是改了首页,不过拿到了后台权限之后拿到 shell 就可以搞定数据库了。

xss.jpg

比如:因为某些原因我们想黑掉某个人的blog,该blog系统的源码我们可以从网上获取到,在简单审核一些代码之后我们没有发现明显的SQL注射之类的漏洞,但是发现了几个非常有意思的 XSS 漏洞,该漏洞同样是反射型的 XSS ,但是因为程序的原因可以使得 exploit url 变形得非常隐蔽。由于程序开源,我们通过本地搭建该环境可以轻松构造出可以加管理员,可以在后台写 shell 的小型 exploit ,并且将 exploit 通过远程的方式隐藏在前面的 exploit url 里。通过分析该程序发现在评论回复时只有登录才可以回复,而目标经常性回复别人的评论,所以我们发表了一个评论并且将 exploit url 写在里面,通过一些手段诱使目标会访问该 url 。在等待几个小时之后,我们看到该评论已经被管理员回复,那么我们的 exploit 也应该是被顺利执行了。上后台用定义好的账户登录,很顺利, shell 也已经存在。OK,最后就是涂首页:)

timg (1).jpg

对于这部分没有什么特别好说的,因为所有的数据和逻辑都是公开的,但是非常重要的一点依然是我们的场景。在某些应用程序里,因为前台的交互比较多,发生 XSS 的点是前台,大部分用户的操作也都是前台发生的,但是这部分的权限非常没有意义,我们往往需要特定目标先访问后台,然后从后台访问我们的 XSS 点才能获取相应的权限。这部分的攻击就变得比较困难了,而上面的攻击里,由于目标肯定会先访问后台然后访问该 XSS 点,所以 XSS 变得有趣多了。


  1. XSS的介绍:XSS又叫CSS(Cross Site Script),跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意 html 代码,当用户浏览该页之时,嵌入其中 Web 里面的 html 代码会被执行,从而达到恶意攻击用户的特殊目的。 XSS 属于被动式的攻击,因为其被动且不好利用,所以许多人常忽略其危害性。
最后修改:2018 年 01 月 18 日 09 : 37 AM
如果觉得我的文章对你有用,请随意赞赏

发表评论

5 条评论

  1. 恍梦境°

    原来这就叫XSS攻击呀!那好像每个网站每天都在被攻击中!

  2. 懿古今

    好像每天都能看到很多扫描攻击,不过大部分都是扫描那些不存在的地址,开启了CDN之后就懒得管了

    1. 烟凡·古楼
      @懿古今

      呵呵,这种好像叫“注入”攻击吧!目前ngx_lua_waf可以很好的防范,据说 CDN 的WAF防火墙也可以,但是没有ngx_lua_waf拦截的全面!

  3. 西枫里博客

    跨站关键要过滤输入的内容

    1. 明月登楼
      @西枫里博客

      是呀!就是这种XSS扫描好烦人的!