★★免责声明★★
文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将信息做其他用途,由Ta承担全部法律及连带责任,文章作者不承担任何法律及连带责任。
0、工具简介
今天给大家分享一款非常好用的信息收集自动化工具:水泽,在github上star3.5k+。
作者:Ske
团队:0x727
定位:协助红队人员快速的信息收集,测绘目标资产,寻找薄弱点
语言:python3开发
功能:一条龙服务,只需要输入根域名即可全方位收集相关资产,并检测漏洞。也可以输入多个域名、C段IP等。
项目地址:https://github.com/0x727/Shuize_0x727
1、安装说明
以我自己在kali系统安装为例。
先下载项目源码包到自己本机,再复制到kali系统然后解压,或者直接在kali系统上git clone的方式,我选择前者。
由于工具是用python3开发,且文档有说明是要求python3.8以上才可。
# kali系统切换root管理员权限
sudo su
# 不确定python3版本号,可查看
python3 -V
# 解压zip包到当前目录
unzip ShuiZe_0x727.zip
# 切换到Shuize目录
cd ShuiZe_0x727
# 当前用户对该目录有写权限,不然扫描结果无法生成
chmod 777 *
# 编译
./build.sh
发现采用./build.sh 有报错,可能没有办法安装成功。我自己重启kali系统,再执行./build.sh多次,最后安装成功。
选择官方提供的docker方式安装,官方建议采用这个方式。但我在测试过程,./docker_build.sh这个步骤因网络问题下载多次中断,尝试多次执行最后才成功。
# 有安装docker,这句可以不用执行
apt install docker.io
# 安装 python3.8
docker pull yankovg/python3.8.2-ubuntu18.04
# A-获取安装python3.8的dockerID --
docker run -itd yankovg/python3.8.2-ubuntu18.04 bash
# B-根据上一步骤的得到的dockerID,填充完执行,进入docker
docker exec -it docker的ID /bin/bash
会看到类似这样的界面
虚拟机未重启前可用以下命令进入容器
# 查看所有容器 包含容器ID
docker ps -a
# 使用bash shell进入容器
docker exec -it <container_id_or_name> /bin/bash
以下是容器内部安装python3和ShuiZe工具相关命令:
# 按步骤执行以下命令
apt-get update
# 执行该命令时,遇到提示选择Y/N时,选择Y继续
apt install git --fix-missing
# 执行该命令时,遇到提示选择Y/N时,选择Y继续
apt install vim
# 安装python3命令相关
rm /usr/bin/python3
ln -s /usr/local/bin/python3.8 /usr/bin/python3
python3 -m pip install --upgrade pip
git clone https://github.com/0x727/ShuiZe_0x727.git
# 切换到ShuiZe目录
cd ShuiZe_0x727/
# 当前用户对目录ShuiZe_0x727有写权限,不然扫描结果无法生成
chmod 777 *
# 编译
./docker_build.sh
以上步骤执行完后,需要做配置,比如fofa、github、360安全quake,端口检测,配置文件地址:/iniFile/config.ini
。
注意:fofa等api免费的次数很少。
# 进入配置文件所在目录
cd iniFile
# 打开配置文件
vim config.ini
# 操作说明如下:
# 按I进入编辑,按Esc退出编辑,按:q! 退出不保存,按:wq!退出保存
1.1、获取Github的token
**获取Github的token路径:**个人头像->Settings->Developer settings->Personal access tokens->Tokens(classic)->Generate a personal access token
第一步:定位到生成token入口
第二步:确定生成token相关配置
第三步:获取到生成的token
2、使用说明
当不知道命令查询时,可用帮助命令
python3 ShuiZe.py -h
比如域名是a.test.com,在用命令收集时,去掉a.这样可以收集test.com下所有子域名的相关信息。命令执行完后会给出资产信息保存路径,以docker安装的为示例。
这个domain.xlsx文件需要从docker复制出来到外部,然后再复制到自己的本机。复制之前可以先退出docker容器或者新开一个窗口。
# 退出命令
exit
# 查看所有容器 包含容器ID
docker ps -a
# 复制命令
docker cp 容器ID:/path/to/data.txt 目标路径
至此就拿到资产收集的excel文件了。如果想收集更多信息,有些接口需要付费,在学习和研究阶段用免费就可以了。
3、题外话
我中间停了2周多一点没有更新公众号/博客,主要是前面的第一周在赶着自考备考的事情,然后自己感冒咳嗽躺床上3天,后来好转了想着不用去看医生了。没想到家里老人也感冒咳嗽了,带去医院看医生,自己的咳嗽又加重不得不看医生,最后一周走3趟医院。
这次事情也再次提醒自己要合理安排好时间,注意睡眠时间,尽量不要熬夜,坚持运动。有健康身体比什么都重要,一生病真的没精神学习和做其他事情。还有如果感冒咳嗽超过3天还没有好转,一定要去看医生,不然会加重得不偿失。