xss攻击笔记
来源:互联网 发布:clover软件干嘛的 编辑:程序博客网 时间:2024/06/06 03:44
XSS,全称Cross Site Scripting,即跨站脚本攻击,某种意义上也是一种注入攻击,是指攻击者在页面中注入恶意的脚本代码,当受害者访问该页面时,恶意代码会在其浏览器上执行,需要强调的是,XSS不仅仅限于JavaScript,还包括flash等其它脚本语言。根据恶意代码是否存储在服务器中,XSS可以分为存储型的XSS与反射型的XSS。
DOM型的XSS由于其特殊性,常常被分为第三种,这是一种基于DOM树的XSS。例如服务器端经常使用document.boby.innerHtml等函数动态生成html页面,如果这些函数在引用某些变量时没有进行过滤或检查,就会产生DOM型的XSS。DOM型XSS可能是存储型,也有可能是反射型。
危害
XSS可以直接从前端(浏览器端)获取到想要的数据,例如cookie,当前 页面地址并发送到某个服务器(利用AJAX发起一个HTTP请求,将数据 发送过去),也可以发起一个HTTP请求(利用AJAX等)来进行某种操 作(例如蠕虫)。 举个例子 可以通过XSS漏洞来获取到管理员的Cookie及后台地址,更改自身的 Cookie来以管理员身份登录到后台当中。 可以通过XSS漏洞来检测到用户在浏览器上的一切行为
控制
使用相应的过滤函数过滤输入,对于用户输入的数据,严格检查,对于关键字符(< > ‘ = “)进行 过滤。对于关键词(alert document script等)进行过滤。
需要学习的
1.学习XSS漏洞需要掌握HTML,JavaScript以及部分CSS知识。 2.需要熟练操作Burp Suite3.需要熟练操作Chrome Dev Tools
经典注入
<script>alert('1')</script>
成功会有弹窗提示
51cto安全频道的几个文章
科普:对于XSS和CSRF你究竟了解多少
XSS的原理分析与解剖
存储型XSS从易到难的挖掘过程
世界第一个XSS攻击蠕虫的原理
反射型xss实战演示
DVWA的一些讲解
子集-CSRF(Cross-site request forgery)
CSRF是建立在XSS漏洞基础之上的,该漏洞要成功利用有两个要素。第一是页面存在XSS 漏洞,第二是能够成功访问该请求 img标签相当于发起了一个正常的GET请求,如果对方打开了该页面,则浏览器在渲染该 页面的时候向src的地址发起一个GET请求,也就相当于你在浏览器地址栏输入了src的地 址并进行了访问。所以可以用来进行401基础认证的爆破及利用某种身份完成前端的某些 操作。 举个例子 爆破并修改路由器DNS
msg=123456<img src='http://admin:123456@192.168.1.1/change_dns?dns=123.123.123.123'> msg=123456<img src='http://admin:888888@192.168.1.1/change_dns?dns=123.123.123.123'>msg=123456<img src='http://admin:12345@192.168.1.1/change_dns?dns=123.123.123.123'> 删除某个用户msg=123456<img src='/manage/del_user?userid=123'>
DVWA的实例分析,收藏一下
http://www.freebuf.com/articles/web/118352.html
- xss攻击笔记
- XSS攻击
- XSS攻击
- XSS攻击
- XSS攻击
- XSS攻击
- XSS攻击
- xss攻击
- XSS攻击
- XSS攻击
- XSS攻击
- xss攻击
- XSS攻击
- XSS攻击
- xss攻击
- XSS攻击
- xss攻击
- XSS攻击
- springmvc(2)--环境搭建和配置前端控制器
- Network and Distributed System Security (NDSS) Symposium 2017
- USACO1.2.4 回文平方数
- 凤凰网招聘二分查找python实现
- [数据结构] 数组与链表的优缺点和区别
- xss攻击笔记
- 查找一个字符串中第一个只出现两次的字符,要求时间复杂度为O(N)。-替换字符串中的空格为$$$。要求时间复杂度为O(N)
- Mavan依赖冲突的解决办法
- 使用CXF时因缺少对应jar包而报错问题汇总
- Tensorflow C++ 编译和调用图模型
- 在Mac pro上如何配置adb命令?
- 06.12 kickstart无人值守安装
- python学习笔记(五)集合(set)
- 一个jetty部署多个项目配置之方法