apullo

A scanner for taking basic fingerprints.
Installation
gem install apullo
# or
docker pull ninoseki/apullo
Usage
$ apullo
Commands:
apullo check [Target] # Take fingerprints from a target(IP, domain or URL)
apullo help [COMMAND] # Describe available commands or one specific command
It takes basic network fingerprints of a target.
- Hashes of an HTTP response body
- Headers of an HTTP response
- Hashes of an SSL certificate
- Hashes of a favicon image
- Hashes of an SSH host key
- DNS records
- WHOIS registrant data
$ apullo check https://example.com
{
"http": {
"body": {
"md5": "84238dfc8092e5d9c0dac8ef93371a07",
"mmh3": -2087618365,
"sha1": "4a3ce8ee11e091dd7923f4d8c6e5b5e41ec7c047",
"sha256": "ea8fac7c65fb589b0d53560f5251f74f9e9b243478dcb6b3ea79b5e36449c8d9"
},
"cert": {
"md5": "3510c21c66bd62010fc547d3cd3f0ce6",
"serial": "21020869104500376438182461249190639870",
"sha1": "7bb698386970363d2919cc5772846984ffd4a889",
"sha256": "9250711c54de546f4370e0c3d3a3ec45bc96092a25a4a71a1afa396af7047eb8"
},
"favicon": {
},
"headers": {
"accept-ranges": "bytes",
"cache-control": "max-age=604800",
"content-type": "text/html; charset=UTF-8",
"date": "Thu, 07 Nov 2019 23:21:43 GMT",
"etag": "\"3147526947+gzip\"",
"expires": "Thu, 14 Nov 2019 23:21:43 GMT",
"last-modified": "Thu, 17 Oct 2019 07:18:26 GMT",
"server": "ECS (sec/9739)",
"vary": "Accept-Encoding",
"x-cache": "HIT",
"content-length": "648"
},
"meta": {
"url": "https://example.com"
}
},
"domain": {
"dns": {
"ns": [
"b.iana-servers.net",
"a.iana-servers.net"
],
"cname": [
],
"soa": [
"noc.dns.icann.org"
],
"mx": [
],
"a": [
"93.184.216.34"
],
"aaaa": [
"2606:2800:220:1:248:1893:25C8:1946"
]
},
"whois": {
"registrant_contacts": [
{
"id": null,
"type": 1,
"name": null,
"organization": "Internet Assigned Numbers Authority",
"address": null,
"city": null,
"zip": null,
"state": null,
"country": null,
"country_code": null,
"phone": null,
"fax": null,
"email": null,
"url": null,
"created_on": null,
"updated_on": null
}
],
"admin_contacts": [
],
"technical_contacts": [
]
}
},
"ssh": {
},
"meta": {
"target": "https://example.com"
}
}
Notes
mmh3is a 32 bit signed int value of MurmurHash3.- Keys of
http.headersare downcased.
License
The gem is available as open source under the terms of the MIT License.