Tooling to validate HTTPS Certificates and Connections Around Web 🕷️

logo

Documentation License: MIT Twitter: fidelissauro Build CI Release

Cassler - SSL Validator Tool

If your read fast, it's sounds like "Cassia Eller"

Tooling to validate HTTPS Certificates and Connections Around Web 🕷️

Running Tests

go test -v -race

Running Linter

golint -set_exit_status ./...

Installation

Using Go tools

go get github.com/msfidelis/cassler

On MacOSX

wget https://github.com/msfidelis/cassler/releases/download/v0.0.9/cassler_0.0.9_darwin_amd64 -O /usr/local/bin/cassler

chmod +x /usr/local/bin/cassler

On Linux x64

wget https://github.com/msfidelis/cassler/releases/download/v0.0.9/cassler_0.0.9_linux_amd64 -O /usr/local/bin/cassler

chmod +x /usr/local/bin/cassler

Running on Docker

docker run -it fidelissauro/cassler:latest --url google.com

Usage

cassler -h

Check Certificates

cassler --url google.com.br

Checking Certificates: google.com.br on port 443

Server Certificate:
Common Name: *.google.com.br
Issuer: CN=GTS CA 1O1,O=Google Trust Services,C=US
Subject: CN=*.google.com.br,O=Google LLC,L=Mountain View,ST=California,C=US
Signature Algorithm: SHA256-RSA
Created: 2020-09-22 15:29:04 +0000 UTC
Expires: 2020-12-15 15:29:04 +0000 UTC
Expiration time: 64 days
Certificate Version: 3

DNS Names:
- *.google.com.br
- google.com.br

Issuing Certificate URL's:
- http://pki.goog/gsr2/GTS1O1.crt

Server IP's: 
* 2800:3f0:4001:81b::2003
* 172.217.173.99

Certificate Authority:

GTS CA 1O1
Issuer: CN=GlobalSign,OU=GlobalSign Root CA - R2,O=GlobalSign
Subject: CN=GTS CA 1O1,O=Google Trust Services,C=US
Signature Algorithm: SHA256-RSA
Created: 2017-06-15 00:00:42 +0000 UTC
Expires: 2021-12-15 00:00:42 +0000 UTC
Expiration time: 429 days
Certificate Version: 3

Check TLS Versions Enabled on Servers

cassler --url https://google.com --mode tls

Testing TLS Versions: google.com on port 443

TLS Versions Enabled on 2800:3f0:4001:813::200e:
- tls1.0: true
- tls1.1: true
- tls1.2: true
- tls1.3: true

TLS Versions Enabled on 172.217.162.142:
- tls1.0: true
- tls1.1: true
- tls1.2: true
- tls1.3: true

Full Scan

cassler --url https://tls-v1-2.badssl.com --port 1012 --mode scan

Checking Certificates: tls-v1-2.badssl.com on port 1012 

Server Certificate: 
Common Name: *.badssl.com
Issuer: CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US
Subject: CN=*.badssl.com,O=Lucas Garron Torres,L=Walnut Creek,ST=California,C=US
Signature Algorithm: SHA256-RSA
Created: 2020-03-23 00:00:00 +0000 UTC
Expires: 2022-05-17 12:00:00 +0000 UTC
Expiration time: 582 days
Certificate Version: 3

DNS Names: 
- *.badssl.com
- badssl.com

Issuing Certificate URL's: 
- http://cacerts.digicert.com/DigiCertSHA2SecureServerCA.crt

Server IP's: 
* 104.154.89.105 

Certificate Authority: 

DigiCert SHA2 Secure Server CA
Issuer: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
Subject: CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US
Signature Algorithm: SHA256-RSA
Created: 2013-03-08 12:00:00 +0000 UTC
Expires: 2023-03-08 12:00:00 +0000 UTC
Expiration time: 877 days
Certificate Version: 3



Testing TLS Versions: tls-v1-2.badssl.com on port 1012 

TLS Versions Enabled on 104.154.89.105: 
- tls1.0: false 
- tls1.1: false 
- tls1.2: true 
- tls1.3: false

Specify a DNS Server

cassler --url raj.ninja --mode scan --dns 1.1.1.1
Checking Certificates: raj.ninja on port 443


DNS Lookup on: 1.1.1.1

Server Certificate:
Common Name: raj.ninja
Issuer: CN=Let's Encrypt Authority X3,O=Let's Encrypt,C=US
Subject: CN=raj.ninja
Signature Algorithm: SHA256-RSA
Created: 2020-11-26 20:46:27 +0000 UTC
Expires: 2021-02-24 20:46:27 +0000 UTC
Expiration time: 78 days
Certificate Version: 3

DNS Names:
- raj.ninja

Issuing Certificate URL's:
- http://cert.int-x3.letsencrypt.org/

Server IP's:
* 185.199.110.153
* 185.199.111.153
* 185.199.109.153
* 185.199.108.153

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

Owner
Matheus Fidelis
SRE, DevOps, Power Ranger, Piloto de Helicóptero e Astronauta da NASA.
Matheus Fidelis
Similar Resources

CLI Tool to remove unwanted connections from your Chia Node based on Geo IP Location.

chia-bouncer Tiny CLI tool to remove unwanted connections from your Chia Node based on the Geo IP Location (Country). The Tool is written in golang an

Jun 25, 2021

Automatic HTTPS for any Go program: fully-managed TLS certificate issuance and renewal

Automatic HTTPS for any Go program: fully-managed TLS certificate issuance and renewal

Easy and Powerful TLS Automation The same library used by the Caddy Web Server Caddy's automagic TLS features—now for your own Go programs—in one powe

Jan 8, 2023

A markov chain for Discord message dumps using https://github.com/fr3fou/polo

discord-markov-chain A markov chain for Discord message dumps using https://github.com/fr3fou/polo Download If you have a go installed, just clone the

Oct 28, 2022

Ethereum-vanity-wallet - A fork of https://github.com/meehow/ethereum-vanity-wallet but the key can be exported to a JSON keystore file

ethereum-vanity-wallet See https://github.com/meehow/ethereum-vanity-wallet This version: doesn't display the private key let's you interactively expo

Jan 2, 2022

Golang NASA APOD Web App

Golang NASA APOD Web App

apod Golang NASA APOD Web App A simple golang web application which consumes data from the NASA APOD API and uses Golang HTML templates and structs wi

Dec 16, 2021

A web-based demonstration of blockchain concepts.

A web-based demonstration of blockchain concepts.

Blockchain Demo A web-based demonstration of blockchain concepts. This is a very basic visual introduction to the concepts behind a blockchain. We int

Jan 7, 2023

Web Service challenge: Matriz Transformation

Web Service challenge: Matriz Transformation Recebendo como input uma matriz atr

Feb 16, 2022

sops is an editor of encrypted files that supports YAML, JSON, ENV, INI and BINARY formats and encrypts with AWS KMS, GCP KMS, Azure Key Vault, age, and PGP

sops is an editor of encrypted files that supports YAML, JSON, ENV, INI and BINARY formats and encrypts with AWS KMS, GCP KMS, Azure Key Vault, age, and PGP

sops is an editor of encrypted files that supports YAML, JSON, ENV, INI and BINARY formats and encrypts with AWS KMS, GCP KMS, Azure Key Vault, age, and PGP. (demo)

Jan 9, 2023

A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability.

A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability.

A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability.

Jan 7, 2023
Comments
  • Golang 1.19 support and tests using 1.18

    Golang 1.19 support and tests using 1.18

    • Cassler build packages using golang 1.19 version
    • Docker build for golang 1.19 version
    • Retrocompatibility Tests using 1.18 and 1.19
    • Removing 1.15.x, 1.16.x compatibility
check-cert: Go-based tooling to check/verify certs

check-cert: Go-based tooling to check/verify certs

Dec 6, 2022
cloud infra tooling for lnd provisioning/unlocking

lndinit: a wallet initializer utility for lnd This repository contains the source for the lndinit command. The main purpose of lndinit is to help auto

Dec 28, 2022
Certificate monitoring utility for watching tls certificates and reporting the result as metrics.
Certificate monitoring utility for watching tls certificates and reporting the result as metrics.

cert-checker cert-checker is a certificate monitoring utility for watching tls certificates. These checks get exposed as Prometheus metrics to be view

Dec 6, 2022
Generate and sign TSL certificates with ease.

certctl Manage certificates with ease.

Oct 20, 2022
mkcert is a simple tool for making locally-trusted development certificates
mkcert is a simple tool for making locally-trusted development certificates

A simple zero-config tool to make locally trusted development certificates with any names you'd like.

Jan 5, 2023
gdn is a Go module to get domain name from SSL certificates given an IP address

Get Domain Name gdn is a Go module to get domain name from SSL certificates given an IP address Installation Instructions From Source gdn requires go1

Nov 9, 2022
Golang Library for automatic LetsEncrypt SSL Certificates

Obtains certificates automatically, and manages renewal and hot reload for your Golang application. It uses the LEGO Library to perform ACME challenges, and the mkcert utility to generate self-signed trusted certificates for local development.

Dec 23, 2022
PKI support for SSH certificates

PKI certificates for SSH Introduction SSH certificates are limited in their usefulness - a certificate can only be signed with a single CA key, so no

Nov 1, 2022
For whatever reason you want to transfer TLS certificates in kubernetes to Qiniu CDN

Qiniu Certificate Sync For whatever reason you want to transfer TLS certificates in kubernetes to Qiniu CDN This app will upload provided TLS secrets

Oct 21, 2021
Package filippo.io/intermediates embeds a bundle of known unexpired, unrevoked intermediate certificates chaining to roots in the Mozilla Root Program

filippo.io/intermediates Package intermediates embeds a list of known unexpired, unrevoked intermediate certificates chaining to roots with Websites t

Nov 7, 2022