工具用法
目录:
第一部分
1、Githack (python脚本版):
当前大量开发人员使用git进行版本控制,对站点自动部署。 如果配置不当,可能会将.git文件夹(该文件夹中可能含有该网站的全部源文件)直接部署到线上环境。
这就引起了git泄露漏洞。
GitHack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,重建还原工程源代码。
使用方法:cd到Githack文件夹下 python Githack-master.py URL/.git/
它会下载并建立一个以URL命名的文件夹,下载的网站文件就在里面
1、Githack(kali中直接下载版)
githacker --url http://1b7131f4-bdcf-4180-85a4-9a369ae8678d.node5.buuoj.cn:81/.git/ --output-folder '/tmp/test'
/.git/前面时url链接, tmp/test 是文件存放路径,建议放在tmp目录下创建一个文件夹放下载的文件,因为tmp是临时目录,关机重启后其中的文件会被清除
若是下载的文件不完整;则进入到文件所在的那个目录:
执行: git log --reflog
会得到 类似 commit e5b2a2443c2b6d395d06960123142bc91123148c (refs/stash) 这种,若是有多个,则一个个执行下面命令,直到得到完整文件
然后执行: git reset --hard e5b2a2443c2b6d395d06960123142bc91123148c
参考:[网鼎杯 2018]Comment题解,超详细!_网鼎杯2018 comment-CSDN博客
若是下载下来的文件没什么有用信息,那可能是文件不完整,可以对其进行git还原:
拿到四个文件,还原.git的操作
| git log --oneline | 查看简洁的提交历史 |
| git show <commit> | 查看某次提交的具体改动 |
| git stash list | 查看所有暂存的工作记录 |
| git stash show -p | 查看最近一次暂存的具体代码变化 |
| git stash show <stash@{0}> -p | 查看指定暂存的具体代码变化 |

引用参考:DASCTF-phpms - 麟原 - 博客园 (cnblogs.com)
2、dirb 扫描网站后台
dirb http://IP或域名
3、nikto 也可以用来扫描网站后台
nikto -h http://IP或域名
4、maltego : 一款信息收集软件;kali自带
5、可以用 dig 工具(kali中自带)查询域传送漏洞:
dig axfr @DNS服务器IP 域名
eg: dig axfr @172.16.132.1 www.vuLhub.org
通过域名传送漏洞可以得到子域名信息、子域名对应的IP 地址
6、dnsenum (kali中自带)
dncenum 域名
推荐使用dnsenum,此款工具在解析域名的时候,会指定检测域传送漏洞。
8、XSS安全平台 (xssaq.com) :
可以在该平台生成XSS注入代码(即创建项目),注入后访问被注入的界面或文件,
(若是存在XSS漏洞)则该网站的cookie、登录页面等某些信息可能会返回到XSS平台的对应项目的项目内容中
9、uname -a : 查看系统内核版本
10、扫描网站后台 (扫不出时建议多试几次,当网站开启类似在一段时间内频繁,就会自动返回相同的一个报错页面的功能时,建议使用它)
dirsearch -u 网址
11、curl 可以直接下载网页源码,且它默认关闭重定向,即下载的网页是原网页,而不是重定向后的网页
eg:curl http://bbabae18-2f88-4fc2-911c-b2ffc16058ce.node4.buuoj.cn:81/action.php
12、hydra

13、nmap
14、
flask-usingn(一个可以用来对flask_session进行加解密的工具)
如果只对cookie进行签名
解密:(解密时有无秘钥都可)
flask-unsign --decode --cookie "cookie中的内容"
签名:
flask-unsign --sign --cookie "{'cookie内容}" --secret '秘钥 '
软件下载地址(包括安装和使用教程)
https://github.com/Paradoxis/Flask-Unsign
15、sqlmap

16、编码网站
CTF在线工具-CTF工具|CTF编码|CTF密码学|CTF加解密|程序员工具|在线编解码 (hiencode.com)
17、emoji表情加解密
18、JWT编码解码
若是已知JWT编码,则可以尝试在kali中利用c-jwt-cracker-master这个项目爆破出密匙 。
[BUUCTF题解][CISCN2019 华北赛区 Day1 Web2]ikun - Article_kelp - 博客园 (cnblogs.com)
[CISCN2019 华北赛区 Day1 Web2]ikun - 春告鳥 - 博客园 (cnblogs.com)
19、php_mt_seed工具
用于破解PHP伪随机数(mt_rand函数)的种子(seed)
先进入到目录下, ./php_mt_seed 已知部分的伪随机数
注意:要先将以知部分的伪随机数转化成php_mt_seed看得懂的数据

参考:[GWCTF 2019]枯燥的抽奖-CSDN博客 CTF-Web25(php_mt_seed的使用)_php mt seed-CSDN博客
20、参数爆破工具 arjun
arjun可以尝试爆破出网页或是链接都有什么参数;
但只有页面,页面中没有什么可用信息,源代码中也没有可以信息,可以尝试利用arjun看看页面中是否有隐藏起来的参数(隐藏代码中是否有可利用的参数)
arjun -u 链接 -c 100 -d 5

参考:[BUUOJ记录] [RootersCTF2019] I_<3_Flask - Ye'sBlog - 博客园 (cnblogs.com)
21、编码转换工具 iconv
XXE通过外来编码绕过WAF:
一个xml文档不仅可以用UTF-8编码,也可以用UTF-16(两个变体 - BE和LE)、UTF-32(四个变体 - BE、LE、2143、3412)和EBCDIC编码。
在这种编码的帮助下,使用正则表达式可以很容易地绕过WAF,因为在这种类型的WAF中,正则表达式通常仅配置为单字符集。
外来编码也可用于绕过成熟的WAF,因为它们并不总是能够处理上面列出的所有编码。例如,libxml2解析器只支持一种类型的utf-32 - utf-32BE,特别是不支持BOM。
以utf-8转码为utf-16绕过为例:(kali虚拟机中尝试)

shell.xml是utf-8编码的文件,shell1.xml是utf-16编码的文件(即我们需要的转码后的文件)
注意:转码结束后,不能从虚拟机中直接打开文件复制内容出来,需要将整个从虚拟机中拉出来(复制出来)
参考:绕过WAF保护的XXE-先知社区 (aliyun.com) (改文章中有四种XXE绕过WAF的方法)
[CSAWQual 2019]Web_Unagi 1 - z3ghxxx - 博客园 (cnblogs.com)
SSH链接
在kali中:
ssh 用户名@IP地址 -p 端口号
也可以时URL
使用Xshell8软件时只能是IP地址
wget
wget用从网络中下载文件
wget -r url : 用于下载整个网络或目录
若是下载 .git 目录:

则进入到调用目录下使用 git reflog ;可以看到历史提交记录

git show 文件名 :可以查看对应文件内容

参考:Bugku WEB source(超详细题解 WP)_bugku web source wp-CSDN博客
NC
Netcat(nc,瑞士军刀)是一个简单的TCP/IP工具,具有端口转发、反弹shell、文件传输、代理和端口转发、侦听端口、查看网络流量等多种功能。
nc IP/URL 端口 :可以链接对应主机,之后可以直接输入OS命令执行(没有进行然后防护的情况下)
NC常见功能详细参考:kali虚拟机nc指令相关以及nc无法连接解决方案 - skdtxdy - 博客园 (cnblogs.com) NC 命令及 10 个示例 (linux-console.net)
BP攻击模块筛选指定字符


浙公网安备 33010602011771号