Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
cameradar — Cameradar 攻击进入 RTSP 视频监控摄像机 | Kitploit
工具/GitHubGitHub/ullaakut/cameradar
物联网安全密码攻击信息收集网络安全渗透测试
GitHubullaakut/cameradar

cameradar

Cameradar 攻击进入 RTSP 视频监控摄像机

查看仓库
5.2k62812天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Cameradar

Coverage Status

RTSP 流访问工具

Cameradar 在授权目标上扫描RTSP端点,并使用字典攻击暴力破解其凭据和路由。

Cameradar 的功能

  • 检测可访问目标上的开放 RTSP 主机。
  • 检测提供 RTSP 流的设备型号。
  • 尝试基于字典的流路由发现(例如 /live.sdp)。
  • 尝试基于字典的摄像头凭据发现。
  • 生成结果报告。

目录

  • 使用 Docker 快速开始
  • 安装二进制文件
  • 在 Android (Termux) 上安装
  • 配置
  • 安全与负责任的使用
  • 输出
  • 检查摄像头访问
  • 命令行选项与环境变量
  • 输入文件格式
  • 构建和贡献
  • 常见问题
  • 示例
  • 许可证

使用 Docker 快速开始

安装 Docker 并运行:

root@kitploit:~
docker run --rm -t --net=host ullaakut/cameradar --targets <target>

示例:

root@kitploit:~
docker run --rm -t --net=host ullaakut/cameradar --targets 192.168.100.0/24

这将扫描目标子网上的 554、5554 和 8554 端口。 它会尝试枚举 RTSP 流。 有关所有选项,请参阅 配置参考。

  • 目标可以是 CIDR、IP、IP 范围或主机名。

    • 子网:172.16.100.0/24
    • IP:172.16.100.10
    • 主机:localhost
    • 范围:172.16.100.10-20
  • 要使用自定义字典,挂载它们并传递两个标志:

    root@kitploit:~
    docker run --rm -t --net=host \
        -v /path/to/dictionaries:/tmp/dictionaries \
        ullaakut/cameradar \
        --custom-routes /tmp/dictionaries/my_routes \
        --custom-credentials /tmp/dictionaries/my_credentials.json \
        --targets 192.168.100.0/24
    

安装二进制文件

如果 Docker 不可用,或者你想要本地构建,请使用此选项。

依赖项

  • Go 1.25 或更高版本

步骤

  1. go install github.com/Ullaakut/cameradar/v6/cmd/cameradar@latest

现在 cameradar 二进制文件位于你的 $GOPATH/bin 中。 可用标志请参阅 配置参考。

在 Android (Termux) 上安装

以下步骤总结了适用于 Android 的 Termux 设置方法。 请使用 F-Droid 或 Termux 官方网站上的 Termux 117,而不是 Google Play 版本。

1) 设置 Termux 和 Alpine

在 Termux 中安装所需软件包:

root@kitploit:~
pkg update
pkg install mc wget git nmap proot-distro

安装 Alpine 并登录:

root@kitploit:~
proot-distro install alpine
proot-distro login alpine

2) 在 Alpine 中安装构建工具

root@kitploit:~
apk add wget git go gcc clang musl-dev make

3) 构建 Cameradar

创建模块路径并克隆仓库:

root@kitploit:~
mkdir -p go/pkg/mod/github.com/Ullaakut
cd go/pkg/mod/github.com/Ullaakut
git clone https://github.com/Ullaakut/cameradar.git
cd cameradar/cmd/cameradar
go install

4) 运行 Cameradar

复制字典并运行二进制文件:

root@kitploit:~
mkdir -p /tmp
cp -r ../../dictionaries /tmp/dictionaries
/go/bin/cameradar --targets=<target> --custom-credentials=/tmp/dictionaries/credentials.json --custom-routes=/tmp/dictionaries/routes --ui=plain --debug 

将 <target> 替换为你被授权测试的 IP、范围、主机或子网。

配置

默认端口为 554、5554、8554、http、322 和 8322。 如果未指定端口,Cameradar 将使用这些端口。

扫描自定义端口的示例:

root@kitploit:~
docker run --rm -t --net=host \
    ullaakut/cameradar \
    --ports "18554,19000-19010" \
    --targets localhost

你可以用自定义的路由和凭据文件替换默认字典。 仓库在 dictionaries 文件夹中提供了基础字典。

root@kitploit:~
docker run --rm -t --net=host \
    -v /my/folder/with/dictionaries:/tmp/dictionaries \
    ullaakut/cameradar \
    --custom-routes /tmp/dictionaries/my_routes \
    --custom-credentials /tmp/dictionaries/my_credentials.json \
    --targets 172.19.124.0/24

RTSPS 和 TLS 证书

使用 rtsps:// URL 访问 RTSPS 流。

  • 如果流证书由受信任的公共 CA 颁发,则无需额外设置。
  • 如果流证书是自签名或由私有 CA 颁发,操作系统信任存储可能会拒绝它。
  • 在这种情况下,运行 Cameradar 时将 SSL_CERT_FILE 指向 CA 证书(如果是自签名设置,则为服务器证书)。

本地二进制文件示例:

root@kitploit:~
SSL_CERT_FILE=/path/to/ca-or-server.crt \
        cameradar \
        --targets localhost \
        --ports 8322 \
        --skip-scan \
        --custom-routes routes.txt \
        --custom-credentials credentials.json

Docker 示例:

root@kitploit:~
docker run --rm -t --net=host \
        -e SSL_CERT_FILE=/tmp/certs/server.crt \
        -v /path/to/certs:/tmp/certs:ro \
        ullaakut/cameradar \
        --targets localhost \
        --ports 8322

如果不想使用 SSL_CERT_FILE,请将你的 CA 证书添加到运行时环境所使用的系统信任存储中。

使用 --skip-scan 跳过发现

如果你已经知道 RTSP 端点,可以跳过发现,并将每个目标和端口视为流候选。此模式不会运行发现,并且在受限网络上或当你想要攻击已知清单时可能很有用。

跳过发现意味着:

  • Cameradar 不会运行发现,也不会检测设备型号。
  • 目标解析为 IP 地址。主机名通过 DNS 解析。
  • CIDR 块和 IPv4 范围将扩展为该范围内的每个地址。
  • 大范围会产生很多目标,请谨慎使用。

示例:

root@kitploit:~
docker run --rm -t --net=host \
    ullaakut/cameradar \
    --skip-scan \
    --ports "554,8554" \
    --targets 192.168.1.10

在此示例中,Cameradar 对 192.168.1.10 的 554 和 8554 端口尝试字典攻击。

使用 --scanner 选择发现扫描器

Cameradar 支持两种发现后端:

  • nmap(默认)
  • masscan

当你想要更可靠的 RTSP 发现时使用 nmap:它会执行服务识别,并能更好地区分 RTSP 和其他开放端口。

当扫描非常大的网络时使用 masscan:它通常更快且在大规模下更高效,但不提供服务发现。

root@kitploit:~
docker run --rm -t --net=host \
    ullaakut/cameradar \
    --scanner masscan \
    --ports "554,8554" \
    --targets 192.168.1.0/24

[!WARNING]
--scan-speed 仅适用于 nmap 扫描器。

使用 --framecheck 减少误报

某些摄像头没有完全遵循 RTSP 行为,即使在路由或凭据错误时也可能返回 200 OK。

当你启用 --framecheck 时,Cameradar 会通过尝试播放并等待 RTP 数据包来验证每个 200 OK。

帧检查意味着:

  • Cameradar 仅当能确认帧生成时才接受 200 OK。
  • 如果未收到 RTP 数据包,Cameradar 将结果视为误报并继续攻击。
  • 路由检查与探测期间看到的身份验证质询保持兼容。

--framecheck 默认禁用,因为它会添加 RTSP 请求并可能显著增加攻击时长。

Docker 示例:

root@kitploit:~
docker run --rm -t --net=host \
        ullaakut/cameradar \
        --targets 192.168.1.0/24 \
        --ports "554,8554" \
        --framecheck

本地二进制文件和环境变量示例:

root@kitploit:~
FRAMECHECK=true \
        cameradar \
        --targets 192.168.1.0/24 \
        --ports "554,8554"

安全与负责任的使用

Cameradar 是一个渗透测试工具。 仅扫描你拥有或已获得明确许可测试的网络和设备。 不要使用此工具访问未经授权的系统或流。 如果不确定,请停止并在扫描前获得书面批准。

输出

Cameradar 以可读的终端 UI 呈现结果。 它会在控制台中记录发现结果。 报告包括发现的主机、识别的设备型号以及有效的路由或凭据。 如果你为 --output 标志指定了路径,Cameradar 还会写入一个包含已发现流的 M3U 播放列表。

检查摄像头访问

使用 VLC Media Player 连接到流:

rtsp://username:password@address:port/route

对于安全的 RTSP 端点,请使用:

rtsps://username:password@address:port/route

输入文件格式

文件可以包含 IP、主机名、IP 范围和子网。 每个条目用换行符分隔。 示例:

root@kitploit:~
0.0.0.0
localhost
192.17.0.0/16
192.168.1.140-255
192.168.2-3.0-255

当你使用 --skip-scan 时,Cameradar 会在构建目标列表之前将每个条目扩展为显式 IP 地址。

命令行选项与环境变量

完整的 CLI 和环境变量参考在 配置参考 中维护。

其中包含所有支持的标志、默认值、可接受值以及环境变量映射。

构建和贡献

Docker 构建

在仓库根目录下运行以下命令:

docker build . -t cameradar

生成的镜像名为 cameradar。

Go 构建

  1. go install github.com/Ullaakut/cameradar/v6/cmd/cameradar@latest

现在 cameradar 二进制文件位于 $GOPATH/bin/cameradar。

常见问题

请参阅 故障排除与 FAQ

示例

在自己的机器上运行 cameradar 以扫描默认端口

docker run --rm -t --net=host ullaakut/cameradar --targets localhost

使用输入文件、启用日志、端口 8554 运行 cameradar

docker run --rm -t --net=host -v /tmp:/tmp ullaakut/cameradar --targets /tmp/test.txt --ports 8554

在子网上使用自定义字典、端口 554、5554、8554、322 和 8322 运行 cameradar

docker run --rm -t --net=host -v /tmp:/tmp ullaakut/cameradar --targets 192.168.0.0/24 --custom-credentials "/tmp/dictionaries/credentials.json" --custom-routes "/tmp/dictionaries/routes" --ports 554,5554,8554

使用 masscan 发现运行 cameradar

docker run --rm -t --net=host ullaakut/cameradar --scanner masscan --targets 192.168.0.0/24 --ports 554,8554

许可证

版权所有 2026 Ullaakut

特此免费授予任何获得本软件及相关文档文件(“软件”)副本的人,在不受限制的情况下处理本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售本软件副本的权利,并允许获得本软件的人这样做,但须遵守以下条件:

上述版权声明和本许可声明应包含在本软件的所有副本或实质性部分中。

本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和不侵权的保证。在任何情况下,作者或版权持有人均不对因本软件或本软件的使用或其他交易而导致的任何索赔、损害或其他责任负责,无论是合同行为、侵权行为还是其他行为。

下载工具