BackTrack 中的 XSSer使用中文说明(非人工翻译)

简介:

===============================================================
xsser是一个自动框架,检测,利用和报告基于Web应用XSS漏洞。它包含几个选项,试图绕过某些过滤器,以及各种特殊的代码注入技术。

================================================================
选项与设置:
==============================

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:

*现则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注入:

——————-
* 从一个文件中读取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 文件.

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

* 在线例子:

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

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

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

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

——————-
* Base64 编码中间的标记(rfc2397) 从而对一个可攻击目标进行手工利用.

——————-
* 利用自己的”own” -远程代码-直接在浏览器中进行加载和Fuzz测试。

转自红黑由网络安全攻防研究室(www.91ri.org) 信息安全小组收集整理.转载本文请著名原文地址及原作者版权信息。