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

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

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

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

工具目录

分类

查看所有分类
Loading categories
sslscan — 快速 SSL/TLS 扫描器,可发现支持的加密套件、协议和漏洞(Heartbleed、POODLE、CRIME),并包含证书链分析和密钥交换枚举。 | Kitploit
工具/GitHubGitHub/rbsec/sslscan
漏洞扫描器网络安全密码学
GitHubrbsec/sslscan

sslscan

快速 SSL/TLS 扫描器,可发现支持的加密套件、协议和漏洞(Heartbleed、POODLE、CRIME),并包含证书链分析和密钥交换枚举。

查看仓库
2.6k41452天前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

sslscan2

sslscan 版本 2 现已发布。这包括对后端扫描代码的重大重写,这意味着许多检查不再依赖于 OpenSSL 的版本。这使得无论系统编译时使用的 OpenSSL 版本如何,都可以支持旧协议(SSLv2 和 SSLv3)以及 TLSv1.3。

这主要归功于 jtesta 的工作,他负责了大部分后端重写。

其他关键变化包括:

  • 枚举服务器密钥交换组。
  • 枚举服务器签名算法。
  • 支持扫描 SSLv2 和 SSLv3 协议,但不扫描单个加密套件。
  • 包含使用 Docker 的测试套件,以验证 sslscan 功能正确。
  • 移除了 --http 选项,因为它已损坏且最初使用率很低。
  • 支持新的后量子组。

XML 输出变化

在版本 2.0.0-beta4 中,对 XML 输出进行了一项可能带来破坏性变更的修改。以前,可能会返回多个 <certificate> 元素(默认返回一个,如果使用了 --show-certificate 则返回第二个)。

关键变化是:

  • 新增一个父元素 <certificates>,它将包含 <certificate> 元素。
  • <certificate> 元素有一个新的 type 属性,其值可以是:
    • short 用于默认输出。
    • full 用于使用 --show-certificate 时。
  • 对于具有多个具有不同签名算法的证书的服务器,可能会返回每种类型的一个以上证书(参见 issue #208 中的讨论)。
  • <certificate> 元素中的 <signature-algorithm> 元素不再包含 "Signature Algorithm:" 前缀,也不再包含空格和换行。

如果您正在使用 XML 输出,那么您可能需要修改解析器。

README

ci

这是 rbsec ([email protected]) 对 ioerror 版本的 sslscan 的一个分支(ioerror 版本的原始 README 包含在下文)。关键变更如下:

  • 在输出中高亮 SSLv2 和 SSLv3 加密套件。
  • 高亮 SSLv3 中的 CBC 加密套件(POODLE)。
  • 在输出中高亮 3DES 和 RC4 加密套件。
  • 在输出中将 PFS+GCM 加密套件标记为良好。
  • 在输出中高亮 NULL(0 位)、弱(<40 位)和中(40 < n <= 56)加密套件。
  • 在输出中高亮匿名(ADH 和 AECDH)加密套件(紫色)。
  • 默认隐藏证书信息(使用 --show-certificate 显示)。
  • 默认隐藏被拒绝的加密套件(使用 --failed 显示)。
  • 添加对 TLSv1.1、TLSv1.2 和 TLSv1.3 的支持。
  • 支持 IPv6(可以使用 --ipv6 强制)。
  • 检查 TLS 压缩(CRIME,使用 --no-compression 禁用)。
  • 禁用加密套件检查 --no-ciphersuites。
  • 禁用彩色输出 --no-colour。
  • 移除了未记录的 -p 输出选项。
  • 添加了对 OpenSSL HeartBleed(CVE-2014-0160,使用 --no-heartbleed 禁用)的检查。
  • 标记使用 MD5 或 SHA-1 签名,或使用短 RSA 密钥(<2048 位)的证书。
  • 支持使用 --rdp 扫描 RDP 服务器(感谢 skettler)。
  • 添加了指定 socket 超时时间的选项。
  • 添加了静态编译的选项(感谢 dmke)。
  • 添加了 --sleep 选项以在请求之间暂停。
  • 仅显示指定检查的输出(--no-preferred)。
  • 确定客户端证书可接受的 CA 列表(--show-client-cas)。

在 Linux 上构建

建议忽略系统 OpenSSL 安装,并静态链接您自己的版本。虽然这会导致 sslscan 二进制文件占用更多资源(文件大小、内存消耗等),但这允许进行一些额外的检查,例如 TLS 压缩。请注意,从 sslscan 2.2.0 版本开始,sslscan 所需的最低 OpenSSL 版本是 3.5.0 (LTS),因此如果您的发行版带有旧版本,则无法针对它进行构建,您必须进行静态构建。

要编译自己的 OpenSSL 版本,您可能需要安装 OpenSSL 构建依赖项。以下命令可用于在 Debian 上执行此操作。

root@kitploit:~
apt install git zlib1g-dev make gcc

然后运行

root@kitploit:~
make static

这将克隆 OpenSSL 仓库,并在编译 sslscan 之前配置/编译/测试 OpenSSL。

请注意: 默认情况下,OpenSSL 使用 gcc 编译,没有进一步的自定义。要使用 clang 编译,请使用以下命令安装构建依赖项。

root@kitploit:~
apt install git zlib1g-dev make clang

然后运行

root@kitploit:~
make static CC=clang

您可以通过检查 sslscan --version 列出的版本是否带有 -static 后缀,来验证您是否拥有静态链接的 OpenSSL 版本。

使用 Docker 构建

确保您的本地 Docker 安装功能正常,然后使用以下命令构建容器:

root@kitploit:~
make docker

或手动使用:

root@kitploit:~
docker build -t sslscan:sslscan .

然后您可以使用以下命令运行 sslscan:

root@kitploit:~
docker run --rm -ti sslscan:sslscan --help

在 Windows 上构建

感谢 jtesta 的补丁,sslscan 现在可以在 Windows 上编译。这可以通过本地编译或从 Linux 交叉编译来完成。请参阅 INSTALL 文件中的说明。

请注意,sslscan 最初是为 Linux 编写的,并且尚未在 Windows 上广泛测试。因此,Windows 版本应被视为实验性版本。

预构建的交叉编译 Windows 二进制文件可在 GitHub Releases 页面 上找到。

在 macOS(原名 OS X)上构建

有实验性的支持在 macOS(原名 OS X)上进行静态构建,但这应被视为不受支持。您可能需要安装从源码编译 OpenSSL 所需的任何依赖项。完成后,只需运行:

root@kitploit:~
make static

原始 (ioerror) README

这是 sslscan.c 的一个分支,以便更好地支持 STARTTLS。

sslscan 的原始主页是:

root@kitploit:~
http://www.titania.co.uk

sslscan 最初由以下人员编写:

root@kitploit:~
Ian Ventura-Whiting

此分支的当前主页(直到上游合并完成的补丁)是:

root@kitploit:~
http://www.github.com/ioerror/sslscan

大部分 TLS 之前的协议设置灵感来自 OpenSSL 的 s_client.c 程序。此分支的目标是在 STARTTLS 设置完善后最终与原始项目合并。

部分 OpenSSL 设置代码来自 Tor Project 的 Tor 程序。因此,遵守 BSD 许可证可能是合适的,声明为: Copyright (c) 2007-2010, The Tor Project, Inc.

下载工具
  • 实验性的 OS X 构建支持(感谢 MikeSchroll)。
  • 标记一些自签名 SSL 证书。
  • 实验性的 Windows 支持(感谢 jtesta)。
  • 在 OpenSSL >= 1.0.2 下显示 EC 曲线名称和 DHE 密钥长度(--no-cipher-details)。
  • 在 OpenSSL >= 1.0.2 下标记弱 DHE 密钥(--cipher-details)。
  • 标记过期证书。
  • 在输出中将 TLSv1.0 和 TLSv1.1 协议标记为弱。
  • 实验性的 OS X 支持(仅静态构建)。
  • 支持扫描 PostgreSQL 服务器(感谢 nuxi)。
  • 检查 TLS Fallback SCSV 支持。
  • 添加了对 LDAP 的 StartTLS 支持(--starttls-ldap)。
  • 添加了 SNI 支持(--sni-name)(感谢 Ken)。
  • 支持 MySQL 的 STARTTLS(感谢 bk2017)。
  • 检查支持的密钥交换组。
  • 检查支持的服务器签名算法。
  • 显示 IANA/RFC 加密套件名称(--iana-names)。
  • 显示完整的证书链(--show-certificates)。