网络摄像头漏洞扫描工具 | Webcam vulnerability scanning tool

简介

主要针对网络摄像头的漏洞扫描框架,目前已集成海康、大华、宇视、dlink等常见设备

安装

请在 Linux 或 Mac 系统使用,确保安装了3.8及以上版本的Python,尽量不要使用3.11,因为对许多包的兼容不是很好

克隆该仓库:

git clone https://github.com/jorhelp/Ingram.git

进入项目目录,创建一个虚拟环境,并激活该环境:

cd Ingram
pip3 install virtualenv
python3 -m virtualenv venv
source venv/bin/activate

安装依赖:

pip3 install -r requirements.txt

至此安装完毕!

运行

由于是在虚拟环境中配置,所以,每次运行之前,请先激活虚拟环境:source venv/bin/activate

你需要准备一个目标文件,比如 targets.txt,里面保存着你要扫描的 IP 地址,每行一个目标,具体格式如下:

# 你可以使用井号(#)来进行注释

# 单个的 IP 地址
192.168.0.1

# IP 地址以及要扫描的端口
192.168.0.2:80

# 带 '/' 的IP段
192.168.0.0/16

# 带 '-' 的IP段
192.168.0.0-192.168.255.255

有了目标文件之后就可直接运行:

python3 run_ingram.py -i 你要扫描的文件 -o 输出文件夹

端口: 如果target.txt文件中指定了目标的端口,比如: 192.168.6.6:8000,那么会扫描该目标的8000端口

否则的话,默认只扫描常见端口(定义在 Ingram/config.py 中),若要批量扫描其他端口,需自行指定,例如:

python3 run_ingram.py -i 你要扫描的文件 -o 输出文件夹 -p 80 81 8000

默认并发数目为 300,可以根据机器配置及网速通过 -t 参数来自行调控:

python3 run_ingram.py -i 你要扫描的文件 -o 输出文件夹 -t 500

支持中断恢复,不过并不会实时记录当前运行状态,而是间隔一定时间,所以并不能准确恢复到上次的运行状态。如果扫描因为网络或异常而中断,可以通过重复执行上次的扫描命令来继续扫描

所有参数:

optional arguments:
  -h, --help            show this help message and exit
  -i IN_FILE, --in_file IN_FILE
                        the targets will be scan
  -o OUT_DIR, --out_dir OUT_DIR
                        the dir where results will be saved
  -p PORTS [PORTS ...], --ports PORTS [PORTS ...]
                        the port(s) to detect
  -t TH_NUM, --th_num TH_NUM
                        the processes num
  -T TIMEOUT, --timeout TIMEOUT
                        requests timeout
  -D, --disable_snapshot
                        disable snapshot
  --debug

 

阅读剩余
THE END