用shell脚本批量进行xss跨站攻击请求
由于执行的xss攻击请求他多了,初步估计要执行83次,而且还要执行3篇,如果手工一个一个去执行,说出去,我还配叫自动化大师吗;
有鉴于此,边打算自己编写一个脚本进行批量执行;
而短脚本的编写,非shell莫属,想到做到;
首先附上xss跨站攻击的请求报文:
POST /web/show.asp?id= HTTP/1.1
Host: 192.168..xxx
Connection: close
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, */*
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727)
Content-Type: application/json
Content-Length: 25
{
"11111": " onabort ="
} 将onabort换成如下攻击特征:
onactivate
onafterprint
onbeforeactivate
onbeforeprint
onbeforeunload
onblur
oncancel
oncanplaythrough
oncanplay
onchange
onclick
oncontextmenu
oncopy
oncuechange
oncut
ondblclick
ondragdrop
ondragend
ondragenter
ondragleave
ondragover
ondragstart
ondrag
ondrop
ondurationchange
onemptied
onended
onerror
onfocus
onformchange
onforminput
onhashchange
oninput
oninvalid
onkeydown
onkeypress
onkeyup
onloadeddata
onloadedmetadata
onloadstart
onload
onmessage
onmousedown
onmouseenter
onmouseleave
onmousemove
onmouseout
onmouseover
onmouseup
onmousewheel
onmove
onoffline
ononline
onpagehide
onpageshow
onpaste
onpause
onplaying
onplay
onpopstate
onprogress
onpropertychange
onratechange
onreadystatechange
onreset
onresize
onscroll
onsearch
onseeked
onseeking
onselect
onshow
onstalled
onstart
onstorage
onsubmit
onsuspend
ontimeupdate
ontoggle
onunload
onvolumechange
onwaiting
onwheel
看到没有如果一个一个执行,我的天,这要猴年马月才能搞完!
话不多说,附上shlle脚本代码:
#!/bin/bash
echo "循环开始开始执行"
for j in $(cat rules3.txt)
do echo " 注意的是,json数据里变量要用 '' 括起"
# curl complete post json post 请求
# curl -i -X POST -H "'Content-type':'application/x-www-form-urlencoded', 'charset':'utf-8', 'Accept': 'text/plain'" -d 'json_data={...}' url
curl -i -X POST -H "'Content-type':'application/json'" -d $j http://192.168.26.213/ done
echo "循环结束"
其中rules3.txt文件内容为:
‘json_data={"":"onactivate"}'/
‘json_data={"":"onafterprint="}'/
‘json_data={"":"onbeforeactivate ="}'/
‘json_data={"":"onbeforeunload="}'/
‘json_data={"":"onblur="}'/
‘json_data={"":"oncancel="}'/
‘json_data={"":"oncanplaythrough="}'/
‘json_data={"":"oncanplay="}'/
‘json_data={"":"onchange="}'/
‘json_data={"":"onclick="}'/
‘json_data={"":"oncontextmenu="}'/
‘json_data={"":"oncopy="}'/
‘json_data={"":"oncuechange="}'/
‘json_data={"":"oncut="}'/
‘json_data={"":"ondblclick="}'/
‘json_data={"":"ondragdrop="}'/
‘json_data={"":"ondragend="}'/
‘json_data={"":"onondragenter="}'/
‘json_data={"":"ondragleave="}'/
‘json_data={"":"ondragstart="}'/
‘json_data={"":"ondrag="}'/
‘json_data={"":"ondrop="}'/
‘json_data={"":"ondurationchange="}'/
‘json_data={"":"onemptied="}'/
‘json_data={"":"onerror="}'/
‘json_data={"":"onfocus="}'/
‘json_data={"":"onformchange="}'/
‘json_data={"":"onforminput="}'/
‘json_data={"":"onhashchange="}'/
‘json_data={"":"oninput="}'/
‘json_data={"":"onkeydown="}'/
‘json_data={"":"onkeypress="}'/
‘json_data={"":"onkeyup="}'/
‘json_data={"":"onloadeddata="}'/
‘json_data={"":"onloadedmetadata="}'/
‘json_data={"":"onloadstart="}'/
‘json_data={"":"onload="}'/
‘json_data={"":"onmessage="}'/
‘json_data={"":"onmousedown="}'/
‘json_data={"":"onmouseenter="}'/
‘json_data={"":"onmouseleave="}'/
‘json_data={"":"onmousemove="}'/
‘json_data={"":"onmouseout="}'/
‘json_data={"":"onmouseover="}'/
‘json_data={"":"onmousewheel="}'/
‘json_data={"":"onmove="}'/
‘json_data={"":"onoffline="}'/
‘json_data={"":"ononline="}'/
‘json_data={"":"onpagehide="}'/
‘json_data={"":"onpageshow="}'/
‘json_data={"":"onpaste="}'/
‘json_data={"":"onpause="}'/
‘json_data={"":"onplaying="}'/
‘json_data={"":"onplay="}'/
‘json_data={"":"onpopstate="}'/
‘json_data={"":"onprogress="}'/
‘json_data={"":"onpropertychange="}'/
‘json_data={"":"onreset="}'/
‘json_data={"":"onresize="}'/
‘json_data={"":"onscroll="}'/
‘json_data={"":"onsearch="}'/
‘json_data={"":"onseeked="}'/
‘json_data={"":"onseeking="}'/
‘json_data={"":"onselect="}'/
‘json_data={"":"onshow="}'/
‘json_data={"":"onstalled="}'/
‘json_data={"":"onstart="}'/
‘json_data={"":"onstorage="}'/
‘json_data={"":"onsubmit="}'/
‘json_data={"":"onsuspend="}'/
‘json_data={"":"ontimeupdate="}'/
‘json_data={"":"ontoggle="}'/
‘json_data={"":"onunload="}'/
‘json_data={"":"onvolumechange="}'/
‘json_data={"":"onwaiting="}'/
‘json_data={"":"onwheel="}'/
‘json_data={"":"onbeforeprint"}'/
‘json_data={"":"onbeforeactivate ="}'/
‘json_data={"":"onended"}'/
‘json_data={"":"oninvalid"}'/
‘json_data={"":"onmouseup"}'/
‘json_data={"":"ondratechange"}'/
‘json_data={"":"onreadystatechange"}'/
注意
curl -i -X POST -H "'Content-type:'application/json'" -d " {'xxx':'sss'}" url
结果为:

改成这个格式后:
curl -i -X POST -H "'Content-type':'application/x-www-form-urlencoded', 'charset':'utf-8', 'Accept': 'text/plain'" -d 'json_data={...}' url

想拥有阿里云服务器的可以登陆此网站哦:https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=qqwovx6h
用shell脚本批量进行xss跨站攻击请求的更多相关文章
- XSS跨站攻击
目录 1 XSS跨站攻击简介 1 1.1 什么是XSS 1 1.2 XSS的分类 1 1.3 XSS的危害 1 2 XSS的攻击原理 1 2.1 本地式漏洞攻击 1 2.2 存储式漏洞攻击 2 2.3 ...
- 云锁Linux服务器安全软件安装及防护webshell、CC、XSS跨站攻击设置
无论我们在使用电脑,还是使用VPS/服务器的时候,最为担心的就是服务器是否有安全问题,尤其是网站服务器再遭受攻击的时候如何得到防护.对于大 部分站长用户来说,我们可能只会使用基础的环境,如果真遇到问题 ...
- Laravel5中防止XSS跨站攻击的方法
本文实例讲述了Laravel5中防止XSS跨站攻击的方法.分享给大家供大家参考,具体如下: Laravel 5本身没有这个能力来防止xss跨站攻击了,但是这它可以使用Purifier 扩展包集成 HT ...
- Cross-Site Scripting XSS 跨站攻击全攻略 分类: 系统架构 2015-07-08 12:25 21人阅读 评论(2) 收藏
原文:http://a1pass.blog.163.com/blog/static/2971373220087295449497/ 题记:这是我在<黑客X档案>08年第5期发表的一篇文章, ...
- 应用安全-Web安全-XSS(跨站攻击)攻防整理
分类 反射型 存储型 DOM型 XSF(Flash XSS) PDFXSS MHTML协议跨站(MHTML,data) 字符编码(UTF-7 XSS) 富文本编辑器测试 - 输入框 <img S ...
- web安全性测试——XSS跨站攻击
1.跨站攻击含义 XSS:(Cross-site scripting)全称"跨站脚本",是注入攻击的一种.其特点是不对服务器端造成任何伤害,而是通过一些正常的站内交互途径,例如发布 ...
- 宽字节XSS跨站攻击
简介 宽字节跨站漏洞多发生在GB系统编码. 对于GBK编码,字符是由两个字节构成,在%df遇到%5c时,由于%df的ascii大于128,所以会自动拼接%5c,吃掉反斜线.而%27 %20小于asci ...
- XSS跨站攻击靶场-通关笔记
XSS攻击是Web攻击中最常见的攻击手法之一,XSS中文名跨站脚本攻击,该攻击是指攻击者在网页中嵌入恶意的客户端脚本,通常是使用JS编写的恶意代码,当正常用户访问被嵌入代码的页面时,恶意代码将会在用户 ...
- xss跨站攻击原理
https://www.cnblogs.com/frankltf/p/8975010.html 跨站脚本攻击:通过对网页注入可执行代码且成功地被浏览器执行,达到攻击的目的,一旦攻击成功,它可以获取用户 ...
随机推荐
- 实验吧——加了料的报错注入(exp报错注入)
题目地址:http://ctf5.shiyanbar.com/web/baocuo/index.php 先查看页面源码得到提示知道了后台执行的sql语句,很常规的查询 测试了一个报错函数发现如下回显, ...
- vue中的---MVVM(面试必问)
M---Model (数据) V---View (视图) VM---VIewModel (转换器) VIewModel主要做两件事: 1.把 Model 中的数据绑定到View(视图层). 2.监 ...
- 4 Linux文件与目录管理
Linux的目录文件结构为树状结构,最顶级目录为根目录 / 其他目录通过挂载可以将他们添加到树中,通过解除挂载可以移除他们 绝对路径: 根目录开始 eg: /usr/share/doc 相对路径: 不 ...
- Django Template语法中 OneToOne、ForeignKey 外键查询
主表的Models的结构 class A(models.Model): username = models.CharField(max_length=32, verbose_name='用户名称') ...
- 前几天去电脑城升级了下主机配置(酷睿i3-9100F)
因为自用电脑配置有点儿低了,前几天路过电脑城正好顺便升级下主机配置. 平时又不玩儿什么游戏,只是简单的使用,于是酷睿i3-9100F就成为了我的选择. 酷睿i3-9100F 四核四线程,不带核显(GP ...
- Graph Embedding总结
图嵌入应用场景:可用于推荐,节点分类,链接预测(link prediction),可视化等场景 一.考虑网络结构 1.DeepWalk (KDD 2014) (1)简介 DeepWalk = Rand ...
- xdvipdfmx:fatal: Unable to open "xxx.pdf". Output file removed. fwrite: Broken pipe xelatex.exe
解决方法: 关闭外部PDF阅读器,重新编译运行下就好了. 参考:https://github.com/James-Yu/Atom-LaTeX/issues/109
- Spring Boot 注入外部配置到应用内部
Spring Boot允许你外部化你的配置,这样你就可以在不同的环境中使用相同的应用程序代码,你可以使用properties文件.YAML文件.环境变量和命令行参数来外部化配置,属性值可以通过使用@V ...
- [冬令营Day1 T2]sequence
题目描述 Description 给一个长度为N的序列以及Q的询问,每次两个参数l,r,问你序列[l,r]中的最大连续和 输入描述 Input Description 一行二个正整数N,Q. 接下来一 ...
- 07_LACP负载分担(数通华为)
1. 网络拓扑 2. SW1配置:[SW1]vlan batch 10 20[SW1]interface GigabitEthernet 0/0/1[SW1-GigabitEthernet0/0/1] ...