#scan #ssl #command #scanner #command-line #cache #port

app sslscan

使用命令行 Qualys SSL Scan 工具

1 个稳定版本

使用旧 Rust 2015

1.0.0 2016年9月16日

#71 in #scanner

MIT 许可证

15KB
387

SslScan

SslScan 是 SslLabs 自动扫描器的 Rust 版本。默认情况下,它只输出每个主机的 IP 的等级,但你可以开启调试日志,并打印出整个 ssllabs 的响应。对于 SslScan,有两个命令。

  • scan_new - 强制进行新的扫描,不管旧的结果。只需提供一个主机名,你就可以开始了。
  • get_old - 返回仍在 ssllabs 缓存中的结果。如果 ssllabs 缓存中没有结果,应用程序将因请求错误而关闭,或者无法解码响应,也会失败。

从源代码构建 SslScan

目前,构建 SslScan 的唯一方法是构建源代码。这是因为构建 SslScan 需要 rust-nightly。为什么需要 rust-nightly 呢?因为你可能会问这个问题。因为内置的 #[derive(RustcDeserialize)] 无法正确解析可选值(即不是总是存在的值)。这是从 ssllabs 读取所必需的部分,而且我觉得没有必要自己构建一个处理这个问题的反序列化器。

无论如何!让我们开始构建过程

安装 rust-nightly,并构建。我建议通过 rustup 安装(而不是将其设置为默认)

  • 运行以下单行命令以安装 rustup: curl https://sh.rustup.rs -sSf | sh
  • 运行: rustup install nightly
  • 然后你可以通过以下方式构建项目: rustup run nightly cargo build --release.

然后你可以运行: RUST_LOG=info target/release/sslscan scan_new --host google.com

贡献

欢迎对这个项目做出贡献!在贡献之前,请阅读CONTRIBUTING.md

许可证

SslScan遵循MIT许可证。

依赖项

~9.5MB
~207K SLoC