Compare commits

...

2 Commits

Author SHA1 Message Date
7efe07fd7b Fixed source of issuer name 2024-05-04 18:26:25 +02:00
7cb3006e7b Sketched documentation 2024-05-04 18:25:43 +02:00
2 changed files with 33 additions and 1 deletions

32
README.adoc Normal file
View File

@@ -0,0 +1,32 @@
This is a simple, but (eventually) very fast scanner to identify certificates in use on your network.
Documentation is terrible at this point; the program is still being written and debugged, so configuration and output formats are in flux.
== Installation
Download the sources and run `cargo build --release`
Copy the binary `target/release/ascertain` somewhere on your path.
== Configuration
A simple example to get you started:
Place the following in sample_config.toml and run using `ascertain -c sample_config.toml`
[toml]
----
[targets]
hosts = ["10.24.74.0/24"]
ports = [443, 80, 8443, 636]
live_port = 22
[output]
format = "json"
output_file = "certs.jsonl"
issuer_file = "issuers.jsonl"
----
This probes port 22 to see if the target even exists; if so, it scans the other four ports.
There are many more config options; read src/config.rs and JSONConfig in src/report.rs for details.

View File

@@ -108,7 +108,7 @@ impl CertInfo {
pub fn extract(data: &X509Ref) -> anyhow::Result<Self> {
let md = MessageDigest::sha256();
let cert_digest = data.digest(md)?.to_vec();
let issuer_subject = data.subject_name();
let issuer_subject = data.issuer_name();
Ok(CertInfo {