常见web漏洞整理之进击吧xss!!!
XSS在线测试环境:
https://brutelogic.com.br/xss.php
这两个站对xss的理解很有帮助!!!
参考链接:
https://www.anquanke.com/post/id/86585
https://www.jianshu.com/p/99cf89bb65c3
开始学习------><-------
XSS简介:
XSS,跨站脚本攻击,Cross-Site-Scripting,由于简写与css(层叠样式脚本)重名,故更名为xss。xss就是基于javascript语句完成恶意的攻击行为。JS可以很灵活的操作html,css和浏览器。这也使得xss的攻击范围很大。
XSS利用方向:
- 盗取用户账号
- 盗取cookie资料
- 劫持用户会话,进行任意操作
- 刷流量,执行弹窗广告
- 传播蠕虫病毒
说实话,以上几种我都不会,只会搞下小框框,毕竟没有违法犯罪牟利的需求。好吧,主要还是因为菜。
XSS的利用原理:
浏览器没有过滤客户端输入的JS语句,导致可以执行JS代码,这就是XSS漏洞。
XSS的简单验证poc:
<script>alert(/xss/)</script>常用
<script>confirm('xss')</script>
<script>prompt('xss')</script>
XSS的分类:
1.反射型xss
反射型xss是非持久性、参数型的跨站脚本,JS代码在web应用的参数中,如我们最常见的搜索框。
2.存储型xss
存储型xss是持久型跨站,不存在某一参数中,写进数据库或文件中等能永久保存数据的地方;并且需要客户浏览器从服务器再请求到这些包含了恶意的XSS代码的页面,这才触发。
3.DOM型xss
DOM型的xss,其攻击的payload是修改受害者浏览器页面的DOM树结构而完成执行。这里由于payload是在浏览器本地修改DOM树,并不会传到服务器上,故DOM型比较难检测。
XSS的构造:构造形式是多种多样的,包括但不限于以下
- 简单的xss:<script>alert(/xss/)</script>
- 伪协议利用:<a href="javascript:alert(/xss/)">touch me!</a> <img src="javascript:alert('xss')">
- HTML事件:这个请参考https://www.w3school.com.cn/tags/html_ref_eventattributes.asp <svg onload=alert(111)>
XSS的变形:对于绕过防护,变形是个技巧,此处不提。
shellcode的调用:
shellcode就是在利用漏洞使所执行的代码,完整的xss攻击,会将shellcode存放在某服务器上,在触发xss时调用shellcode。如<script src="http://localhost/XSS-TEST/normal/xss.js"></script>
小实验:劫持cookie
植入一个存储型xss,待管理员查看或触发时,cookie被发送到hacker服务器上,再利用cookie重放登录。
截图:
- 注册一个xss平台账户,新建一个项目,选择模块,或者自定义模块,对模块好奇的可以展开详情查看代码
- 我在这里选择默认的模块,勾选keepsession,保存下session信息
- 点击完成后就会生成payload,随便选择一个copy下来
- 这里我找了一个带stored xss的靶场,pikachu,https://github.com/zhuifengshaonianhanlu/pikachu,将payload注入进去,页面没有弹框,刷新一下,看不出异常。
- 到xss平台下查看,是否有返回的信息,这个网站卡的可以。。可以看到,返回了cookie信息。
常见web漏洞整理之进击吧xss!!!的更多相关文章
- 十大常见web漏洞及防范
十大常见web漏洞 一.SQL注入漏洞 SQL注入攻击(SQL Injection),简称注入攻击.SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞.在设计程序,忽略了 ...
- 绕过WAF进行常见Web漏洞利用
前言 本文以最新版安全狗为例,总结一下我个人掌握的一些绕过WAF进行常见WEB漏洞利用的方法. PS:本文仅用于技术研究与讨论,严禁用于任何非法用途,违者后果自负,作者与平台不承担任何责任 PPS:本 ...
- 常见web漏洞
常见的web漏洞——文件上传漏洞 一.文件上传漏洞概述 文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力.这种攻击方式是最为直接和有效的,有时候几乎没 ...
- 常见web漏洞的整理之SQL注入
SQL注入: 简介: 全称Structured Query Language,即结构化查询语言,是一种特殊的编程语言,用于数据库中的标准数据查询语言.也被作为关系式数据库管理系统的标准语言. 原理: ...
- SRC常见WEB漏洞系列之HTTP-HOST头攻击
一.背景: web程序需要知道网站的域名比较麻烦,需要使用HTTP的 host头字段: <?php _SERVER["HTTP_HOST"] ?> @app.route ...
- 常见web漏洞修复方法
方法如下: 漏洞修复.(输入过滤,输出转义) 1.在连接数据库时,在接收参数后进行转义,$id = mysql_real_escape_string($id); 2.在网页源码中在接收参数后可用htm ...
- WEB漏洞 XSS(一)
1.xss的形成原理 xss 中文名是“跨站脚本攻击”,英文名“Cross Site Scripting”.xss也是一种注入攻击,当web应用对用户输入过滤不严格,攻击者写入恶意的脚本代码(HTML ...
- 常见WEB开发安全漏洞 原因分析及解决
目 录 1 会话标识未更新 3 1.1 原因 3 1.2 解决 3 2 SQL注入 3 2.1 原因 3 2.2 解决 5 3 XSS跨站脚本编制 5 3.1 原因 5 3.2 解决 5 4 XSRF ...
- 常见 WEB 安全漏洞(转)
SQL注入 成因:程序未对用户的输入的内容进行过滤,从而直接代入数据库查询,所以导致了sql 注入 漏洞 . 思路:在URL处可以通过 单引号 和 and 1=1 and 1=2 等语句进行手工测试s ...
随机推荐
- 单元测试实践思考(junit5+jmockit+testcontainer)
目录 背景 方案设计 单元测试指导思想 单层隔离 内部穿透 技术实现 依赖管理 基础架构 封装Junit5&Jmockit 单元测试配置 TestContainer封装 官方方案 实际方案 完 ...
- Visdom 介绍 | 一
用于创建,组织和共享实时丰富数据可视化的灵活工具.支持Python. 概述 概念 设置 用法 API 待办事项 贡献 概述 Visdom旨在促进(远程)数据的可视化,重点是支持科学实验. 为你自己和你 ...
- OpenCV-Python 图像阈值 | 十五
目标 在本教程中,您将学习简单阈值,自适应阈值和Otsu阈值. 你将学习函数cv.threshold和cv.adaptiveThreshold. 简单阈值 在这里,问题直截了当.对于每个像素,应用相同 ...
- TensorFlow Windows 安装
欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 本系列教程将手把手带您从零开始学习Tensorflow,并最终通过 ...
- Thread -- Volatile
1,可见性也就是说一旦某个线程修改了该被volatile修饰的变量,它会保证修改的值会立即被更新到主存,当有其他线程需要读取时,可以立即获取修改之后的值. 在Java中为了加快程序的运行效率,对一些变 ...
- Python input和print函数
一.input函数 可以看出,input()函数默认输入的是字符串类型,需要eval()函数将其进行转换. 区别直接赋值的情况,Python可以自动识别数据类型 二.print函数 1.直接输出 无论 ...
- RecyclerView 的简单使用
自从 Android 5.0 之后,google 推出了一个 RecyclerView 控件,他是 support-v7 包中的新组件,是一个强大的滑动组件,与经典的 ListView 相比,同样拥有 ...
- bootstrip安装
什么是Bootstrap Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加 ...
- 细数Java项目中用过的配置文件(ini 篇)
Java 菜鸟,会把可变的配置信息写死在代码里:Java 老鸟,会把可变的配置信息提取到配置文件中.坊间流传这么一句非科学的衡量标准,来评判程序员的级别. 那么,项目中的配置信息,你平时都是怎样来实现 ...
- java对象clone
java克隆 为什么需要克隆 我们在很多时候需要使用一个对象去记录另外一个对象的当前状态,对象中可能会有很多属性,如果我们一个一个去设置,不仅不方便,而且效率很低,我们看一个初学者可能遇到的问题 cl ...