前言:
标题真不真,继续往下看,为什么要作者选择这个提交平台,一是作者真菜,二是好过吧,只要是存储xss就给过
本篇是作者的xss备忘录阶段小结,所以读者很有福,能得到大量的姿势(小菜姿势,哈哈哈)
现目前容易且主流的漏洞,作者认为有三种,一是框架漏洞,二是逻辑,三是xss
ok,进入我们的主题
1.xss基础知识和分类
2.xss姿势绕过
3.xss工具测试
4.xss防御
5.总结
好像没什么写的。。。
1.dom
2.反射
3.存储
这里推荐一本书《web前端黑客技术揭秘》
作者这里写的常见基础知识,也是里面的笔记,你说实用性就下面作者的操作就行了,因为我们一般都不会关注这么多,你说知识和技术魅力,这个真的不错;杂乱的笔记,大体写出框架和一些作者关注的点;谅解:
a、使用script标签实现的jsonp跨域可以将服务器响应文本以函数参数的形式返回,浏览器解析js代码时直接就执行了
b、常设置httponly,防止打cookie;但是在head的trace方法开启,有httponly的情况下,也可以进行js的cookie操作,称为xst攻击,简单练习链接 http://www.hackdig.com/?01/hack-11.htm
c、常见的外部url链接
html:
css:
@import “”
backgroud:url(“”)
可使用以下任意办法防御JSON Hijacking攻击
首先在请求中添加token(随机字符串)
再请求referer验证(限制为合法站点,并且不为空) 注意事项 在线json防御被外域恶意调用只限制了referer,但是允许空referer访问: 比如本地html,还有某些伪协议远程调用时是没有referer的。从而导致问题持续。所以空referer也是不安全的
e、很有趣的关注点,但是实际过程中,你要先闭合一些东西,才能继续考虑这些,往往作者都没有用到这里来,所以就扩展不深 html和javascript的自解码过程(html环境和js环境)进制编码:16进制 H D 十进制 最后的分号可以不要html实体编码js自动解码unicode 16进制 纯转义 无意义防御
f、一些标签内是不会执行js的,如textarea,所以一般都是要闭合它具备html编码的标签title iframe noscript noframesxmp没有编码功能plaintext 火弧不会,google有ie有解析差异,代码不会执行
g、浏览器进制常识html 10 16 多了a-f a-f大小写不敏感css中16进制还有\6ceval中八进制的\5616进制的\x5c
h、由于技术和知识原因,下面的这些没有深层次的学习和探讨其实还有csrf ,拖放和点击劫持,flash的xss(书籍作者介绍由于flash沙箱安全,实用性不强,就没有怎样关注了),xss的漏洞利用,劫持技术(重头戏)
网上有很多姿势
作者先写一些自己印象深的,再拿出自己常用的那些什么编码,各种事件替换,就不写了,推荐几篇文章,有兴趣可以自己阅读下姿势:
我们来挖小商城的xss,因为商城的xss输入点多
01
第一步:
搜索框判断:
οnfοcus=alert1 autofocus
那两个是反引号,实测可用,在不使用 ‘ ” ( )的情况下,但是一般都要闭合value的 "
“ οnfοcus=alert('1') autofocus ”
"οnclick="alert(1)
">
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?


微信扫码登录