Xsser
===============================================================
跨站脚本者是一个自动框架,检测,利用和报告基于Web应用XSS漏洞。它包含几个选项,试图绕过某些过滤器,以及各种特殊的代码注入技术。
XSSer由一个遵循GPL V3的团队完成,版权属于psy ( - ).
选项与设置:
==============================
xsser [OPTIONS] [-u <url> |-i <file> |-d <dork>] [-g <get> |-p <post> |-c <crawl>] [Request(s)] [Vector(s)] [Bypasser(s)] [Technique(s)] [Final Injection(s)]
--version 显示程序的版本号
-h, --help 显示帮助信息
-s, --statistics 显示高级显示输出结果
-v, --verbose 激活冗余模式输出结果
--gtk 加载 XSSer GTK 接口
你可以选择 Vector(s) 和 Bypasser(s) 结合特殊的用法来注入代码:
--fla=FLASH 利用XSS代码植入来创建一个假的swf
至少有一个选择必须被指定来设置来源以获得目标(s)的url。. 你需要选择然后运行XSSer:
-i READFILE 从一个文件中读取URL
-d DORK 利用搜索引擎傻瓜式的搜索URL
--De=DORK_ENGINE 傻瓜式的利用搜索引擎 (bing, altavista,yahoo, baidu, yandex, youdao, webcrawler, ask, etc.查看 dork.py 文件来核对有效的搜索引擎)
These options can be used to specify which parameter(s) we want to use
like payload to inject code.
-p POSTDATA 输入一个负荷来进行审计,使用 POST 参数(例如: 'foo=1&bar=')
-c CRAWLING 目标URL的爬行数目(s): 1-99999
--Cw=CRAWLER_WIDTH 爬行深度: 1-5
--Cl 本地目标URL爬行 (默认 TRUE)
这些选项被用来制定如何攻击目标和使用负荷. 你有多重选择:
--user-agent=AGENT 改变你的 HTTP User-Agent header (默认 SPOOFED)
--referer=REFERER 使用别的HTTP Referer header (默认 NONE)
--headers=HEADERS 额外的 HTTP headers 换行隔开
--auth-type=ATYPE HTTP 认证类型 (基本值类型或者摘要)
--auth-cred=ACRED HTTP 认证证书 (值 name:password)
--proxy=PROXY 使用代理服务器 (tor:http://localhost:8118)
--timeout=TIMEOUT 设定时间延迟 (默认 30)
--delay=DELAY 设定每一个 HTTP request值 (默认 8)
--threads=THREADS 最大数目的 HTTP requests并发 (默认 5)
--retries=RETRIES 连接超时重试 (默认 3)
这些选项对于有过滤器的XSS 攻击很有效 和或者重复所利用的代码:
(对预知可能错误的结果非常有用)
--heuristic 启发式的设置才检测那些脚本会被过滤: ;\/<>"'=
这些选项被用在特殊的 XSS 向量源代码来注入到每一个负荷中。非常重要的, 如果你不想尝试通用的XSS注入代码,
请使用默认参数. 只有一个选项:
--auto AUTO - 从文件中插入 XSSer '报告' 向量
这些选项用来编码所选择的攻击向量,如果目标使用反XSS过滤器代码和IPS规则,则尝试绕过所有的目标上的反XSS 过滤器代码和入侵防御系统规则,
. 总之, 能结合其他的技巧 来提供编码:
--Une 使用 Unescape() 函数
--Mix 最小的 String.FromCharCode() 函数 和 Unescape()函数
--Dec 使用小数编码
--Hex 使用16进制编码
--Hes 使用带分号的16进制编码
--Dwo 编码IP地址向量为双字节
--Doo 编码IP地址向量为八进制
--Cem=CEM 手动尝试不同的字符编码
(反向混淆效果更好) -> (例如: 'Mix,Une,Str,Hex')
这些选项被用来尝试不同的XSS 技巧. 你可以进行多重选择:
--Xsa XSA - 跨站Agent 脚本
--Xsr XSR - 跨站 Referer 脚本
--Dcp DCP - DCP注入
--Dom DOM - DOM注入
--Ind IND - HTTP 包含代码的快速响应
--Anchor ANC - 使用影子攻击负荷 (DOM 影子!)
这些选项在攻击目标中用于特殊代码注入 Important, if you want to exploit on-the-wild
your discovered vulnerabilities. Choose only one option:
--Fr=FINALREMOTE REMOTE - 远程插入注入代码
--Doss DOSs - XSS 对服务端的拒绝服务攻击注入
--Dos DOS - XSS 对客户端的拒绝服务攻击注入
--B64 B64 - META标签 Base64编码(rfc2397)
These options can be used to execute some 'special' injection(s) in
vulnerable target(s). You can select multiple and combine with your
final code (except with DCP code):
--Ifr IFR - 使用 <iframe>资源标签注入代码
--silent 禁止控制台输出结果
--update 检查XSSer 最新稳定版本
--save 直接输入结果到模版文件 (XSSlist.dat)
--xml=FILEXML 输出 'positives'到一个XML文件 (--xml filename.xml)
--publish 输出 'positives'本地网络 (identi.ca)
--short=SHORTURLS 显示最后的短代码 (tinyurl, is.gd)
--launch 发现的每个XSS都在浏览器进行测试
用法举例:
==============================
* 从一个文件中读取URL并且进行简单的注入,同时设定代理参数和HTTP Header参数:
* 从URL进行多重注入, 使用自动化负荷,和代理, 注入负荷使用116进制编码 "Hex", 产生冗长的输出,并且将结果保存到一个文件 (XSSlist.dat):
* 从URL进行多重注入, 使用自动化负荷和特殊的文字编码(第一, 改变负荷为16进制; 第二, 改变第一次的编码为字节码到字符串; 第三, 把第二次的编码重新进行16进制编码), 使用代理欺骗, 改变时间延迟为 "20" and 使用多线程 (5 个线程):
* 从文件读取进行高级注入, 负荷采用 -own- payload 参数,并且使用Unescape() 函数进行字符编码绕过检测:
* 傻瓜式的选择 "duck" 引擎进行注入 (XSSer 蠕虫!):
* 注入爬行深度为3 ,页面数目(宽度)为4 来进行检测(XSSer 蜘蛛!):
* 从URL简单注入, 使用POST方式, 并且统计结果:
* 从URL进行多重注入,发送参数类型为GET, 使用自动负荷, 使用八进制的IP地址进行混淆并且输出结果到一个 "tinyurl" 短网址 (为分享者准备!):
* 从URL进行简单注入, 使用 GET 参数, 用Cookies参数注入一个向量, 尝试使用一个 DOM 幽灵空间 (服务器无日志记录!) 如果存在任何 "漏洞", 则手工植入 "恶意" 代码 (为真正的攻击者准备!):
* 从URL进行简单注入, 使用 GET 参数, 尝试产生一个带 "恶意代码" 短网址 (is.gd) 使用一个有效的DOS来攻击客户端:
* 多点多重注入, 从一个目标中提取目标, 运行自动负荷,改变时间延时为 "20" ,并且使用多线程(5 个线程), 增加延时到10 s, 注入参数到HTTP 的USer-Agent, HTTP 参数 和 Cookies参数, 使用Tor代理, IP进行八进制混淆, 进行结果统计, 冗长 模式创建短网址 (tinyurl) 来发现任何有效的攻击负荷 (真正的攻击模式!):
* 注入用户的XSS攻击向量在 "在空白处"创建带恶意代码的虚假图片, 并且准备被上传.
* 报告输出'positives' 注入到 dorking搜索 (使用 "ask" dorker) ,直接写入到一个 XML 文件.
* 使用XSS代码注入创建一个 .swf 文件
* 如果目标产生错误的结果,则每次发送一个检测hash。
* 从URL进行多重Fuzz注入, 包含 DCP 注入 利用自己的代码, 用短网址进行欺骗, 发现有用的结果. XSS实时利用.
* Base64 编码中间的标记(rfc2397) 从而对一个可攻击目标进行手工利用.
$ python XSSer.py -u "host.com" -g "vulnerable_path" --payload "valid_vector_injected" --B64
* 利用自己的 "own" -远程代码-直接在浏览器中进行加载和Fuzz测试。
$ python XSSer.py -u "host.com" -g "vulnerable_path" --auto --Fr "my_host/path/code.js" --launch
Xsser的更多相关文章
- 小白日记48:kali渗透测试之Web渗透-XSS(二)-漏洞利用-键盘记录器,xsser
XSS 原则上:只要XSS漏洞存在,可以编写任何功能的js脚本 [反射型漏洞利用] 键盘记录器:被记录下的数据会发送到攻击者指定的URL地址上 服务器:kali 客户端 启动apache2服务:ser ...
- 『在线工具』 基于 xsser.me 源码 + BootStrap 前端 的 XSS 平台
乌云社区上一个小伙伴的对xsser.me 的源码做了 BS 的优化,本人已经搭建好,提供给大家免费使用,大牛求绕过,多谢. 地址: http://xss.evilclay.com (目前开放注册,不需 ...
- phpadmin dvwa sqli-labs xsser.me
下载phpadmin,安装后网站根目录 phpStudy\PHPTutorial\WWW 将下载的dvwa文件夹放到该目录下,修改config/config.inc.php文件中的mysql连接信息. ...
- XSS漏洞自动化攻击工具XSSer
XSS漏洞自动化攻击工具XSSer XSS是Web应用常见的漏洞.利用该漏洞,安全人员在网站注入恶意脚本,控制用户浏览器,并发起其他渗透操作.XSSer是Kali Linux提供的一款自动化XSS ...
- XSSer:自动化XSS漏洞检测及利用工具
转载自FreeBuf.COM XSS是一种非常常见的漏洞类型,它的影响非常的广泛并且很容易的就能被检测到. 攻击者可以在未经验证的情况下,将不受信任的JavaScript片段插入到你的应用程序中,然后 ...
- xsser和XSStrike
0x01 xsser xsser是一款用于针对Web应用程序自动化挖掘.利用.报告xss漏洞的框架.kali默认安装. 命令行启动:xsser 图形化界面启动:xsser --gtk 帮助信息:xss ...
- xss篇-本着就了解安全本质的想法,尽可能的用通俗易懂的语言去解释安全漏洞问题
前言 最早接触安全也是从xss攻击和sql注入攻击开始的. 0x01 跨站脚本攻击漏洞(XSS),是客户端脚本安全中的头号大敌,owasp top10 屡居榜首,由于攻击手法较多,开发者水平不一 ...
- XSS(跨站脚本攻击)的最全总结
从OWASP的官网意译过来,加上自己的理解,算是比较全面的介绍.有兴趣的可私下交流. XSS 跨站脚本攻击 ============================================== ...
- web安全之xss
xss:跨站脚本攻击,攻击者,把一段恶意代码镶嵌到web页面,,用户浏览页面时,嵌入页面的恶意代码就会执行,从而到达攻击用户的目的. 重点在于脚本,javascript和actionscript ...
随机推荐
- CPU 硬盘性能
CPU 硬盘性能到底相差多少 本文以一个现代的.实际的个人电脑为对象,分析其中CPU(Intel Core 2 Duo 3.0GHz)以及各类子系统的运行速度——延迟和数据吞吐量.通过粗略的估算PC各 ...
- [转]execve() - Unix, Linux System Call
link: http://www.tutorialspoint.com/unix_system_calls/execve.htm NAME execve - execute program SYNOP ...
- SSRS 系列 - 使用带参数的 MDX 查询实现一个分组聚合功能的报表
SSRS 系列 - 使用带参数的 MDX 查询实现一个分组聚合功能的报表 SSRS 系列 - 使用带参数的 MDX 查询实现一个分组聚合功能的报表 2013-10-09 23:09 by BI Wor ...
- C++ 动态库导出函数名“乱码”及解决
C++ 动态库导出函数名“乱码”及解决 刚接触C++,在尝试从 dll 中导出函数时,发现导出的函数名都“乱码”了. 导出过程如下: 新建一个Win32项目: 新建的解决方案里有几个导出的示例: // ...
- C语言实现,队列可伸缩
两个栈实现一个队列,C语言实现,队列可伸缩,容纳任意数目的元素. 一.思路:1.创建两个空栈A和B:2.A栈作为队列的入口,B栈作为队列的出口:3.入队列操作:即是入栈A:4.出队列操作:若栈B为空, ...
- Java笔记:Java集合概述和Set集合
本文主要是Java集合的概述和Set集合 1.Java集合概述 1)数组可以保存多个对象,但数组长度不可变,一旦在初始化数组时指定了数组长度,这个数组长度就是不可变的,如果需要保存数量变化的数据,数组 ...
- 定时器Timer不定时
订餐系统之定时器Timer不定时 经过几天漫长的问题分析.处理.测试.验证,定时器Timer终于定时了,于是开始了这篇文章,希望对还在纠结于“定时器Timer不定时”的同学有所帮助,现在的方案,在系统 ...
- C Socket初探
C Socket初探 前段时间写了个C# Socket初探,这次再写个C语言的Socket博文,运行效果如下: 实现步骤: 1. Server端 #include <stdio.h> // ...
- Js继承小结
Js继承小结 一直以来,对Js的继承有所认识,但是认识不全面,没什么深刻印象.于是,经常性的浪费很多时间重新看博文学习继承,今天工作不是特别忙,有幸看到了http://www.slideshare.n ...
- linux下http服务器开发
linux下http服务器开发 1.mystery引入 1)超文本传输协议(HTTP)是一种应用于分布式.合作式.多媒体信息系统的应用层协议 2)工作原理 1)客户端一台客户机与服务器建立连接后,会发 ...