用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 跨站脚本攻击:通过对网页注入可执行代码且成功地被浏览器执行,达到攻击的目的,一旦攻击成功,它可以获取用户 ...
随机推荐
- xamarin Mqtt
1 什么是MQTT? mqtt (Message Queuing Telemetry Transport,消息队列遥测传输)是 IBM 开发的一个即时通讯协议,有可能成为物联网的重要组成部分.MQTT ...
- VirtualBox打开VMware虚拟机
下载安装VirtualBox 打开VirtualBox,选择新建 设置如下: 之后就可以直接打开虚拟机了.
- centos 查看硬盘情况
lsblk 查看分区和磁盘 df -h ...
- 通过async与await实现高效并发
withTimeoutOrNull: 在上一次https://www.cnblogs.com/webor2006/p/12010388.html中对于协程的超时机制进行了一个学习,上次用的是withT ...
- Word 2016中公式不能自动斜体的解决方法
参考资料: 中文版 Office 数学公式默认不是斜体 为什么Word 2007中的公式编辑器字体不能自动倾斜 归纳总结 这个问题自Word 2007开始就存在,直至我目前用的Word 2016都没有 ...
- 从架构开始谈dubbo(一)
架构发展史 一.单体应用架构 当网站流量很小时,所有的功能写在一个项目中,打包部署在tomcat中. 例如:公司管理系统,超市的收银系统 也可以将单体应用部 ...
- 装ubuntu的坑
装ubuntu安装盘的U盘,在BOOT中会出现两种载入方式,切记不要用UEFI方式打开,否则安装ubuntu会在最后卡在GRUB的安装上面,然后失败.
- serialize()和new FormData()的区别
serialize()和FormData对象都可将表单数据序列化,后通过ajax异步提交 ,序列化表单就是将form表单中所有name属性序列化成KEY-VALUE的形式,提交到后台,后台以对象相应的 ...
- Python面向对象 | 类空间及类之间的关系
一. 类的空间问题 1何处可以添加对象属性 class A: def __init__(self,name): self.name = name def func(self,sex): self.se ...
- 2.shell编程-函数的高级用法
2.1.函数的定义和使用 函数基本使用 [root@VM_0_9_centos ~]# test() > {} -bash: syntax error near unexpected token ...