2015-12-23 03:56:13 +01:00
|
|
|
# ssh-audit
|
2015-12-23 04:52:21 +01:00
|
|
|
**ssh-audit** is a tool for ssh server auditing.
|
|
|
|
|
|
|
|
## Features
|
|
|
|
- grab banner, detect ssh1 protocol and zlib compression;
|
|
|
|
- gather key-exchange, host-key, encryption and message authentication code algorithms;
|
|
|
|
- output algorithm information (available since, removed/disabled, unsafe/weak/legacy, etc);
|
2016-08-12 15:33:34 +02:00
|
|
|
- analyze SSH version compatibility based on algorithm information;
|
2015-12-30 12:17:58 +01:00
|
|
|
- historical information from OpenSSH and Dropbear SSH;
|
2015-12-30 16:01:11 +01:00
|
|
|
- no dependencies, compatible with python2 and python3;
|
2015-12-23 04:52:21 +01:00
|
|
|
|
|
|
|
## Usage
|
|
|
|
```
|
2016-09-02 17:08:15 +02:00
|
|
|
usage: ssh-audit.py [-bnv] [-l <level>] <host[:port]>
|
2015-12-23 04:52:21 +01:00
|
|
|
|
2016-09-02 17:08:15 +02:00
|
|
|
-b, --batch batch output
|
|
|
|
-n, --no-colors disable colors
|
|
|
|
-v, --verbose verbose output
|
|
|
|
-l, --level=<level> minimum output level (info|warn|fail)
|
|
|
|
|
2015-12-23 04:52:21 +01:00
|
|
|
```
|
2016-09-02 17:08:15 +02:00
|
|
|
* batch flag `-b` will output sections without header and without empty lines (implies verbose flag).
|
|
|
|
* verbose flag `-v` will prefix each line with section type and algorithm name.
|
2015-12-23 04:52:21 +01:00
|
|
|
|
|
|
|
### example
|
2016-08-12 15:29:51 +02:00
|
|
|
![screenshot](https://cloud.githubusercontent.com/assets/7356025/17623665/da5281c8-60a9-11e6-9582-13f9971c22e0.png)
|
2015-12-23 04:52:21 +01:00
|
|
|
|
|
|
|
## ChangeLog
|
2016-09-02 17:10:16 +02:00
|
|
|
### v1.0.20160902
|
|
|
|
- implement batch output option
|
|
|
|
- implement minimum output level option
|
|
|
|
- fix compatibility with Python 2.6
|
|
|
|
|
2016-08-12 15:29:51 +02:00
|
|
|
### v1.0.20160812
|
2016-08-12 15:33:34 +02:00
|
|
|
- implement SSH version compatibility feature
|
2016-08-12 15:29:51 +02:00
|
|
|
- fix wrong mac algorithm warning
|
|
|
|
- fix Dropbear SSH version typo
|
|
|
|
- parse pre-banner header
|
|
|
|
- better errors handling
|
|
|
|
|
2016-08-03 16:32:46 +02:00
|
|
|
### v1.0.20160803
|
|
|
|
- use OpenSSH 7.3 banner
|
|
|
|
- add new key-exchange algorithms
|
|
|
|
|
2016-03-07 12:01:57 +01:00
|
|
|
### v1.0.20160207
|
|
|
|
- use OpenSSH 7.2 banner
|
|
|
|
- additional warnings for OpenSSH 7.2
|
|
|
|
- fix OpenSSH 7.0 failure messages
|
|
|
|
- add rijndael-cbc failure message from OpenSSH 6.7
|
|
|
|
|
2016-01-05 13:14:50 +01:00
|
|
|
### v1.0.20160105
|
2016-01-05 17:04:49 +01:00
|
|
|
- multiple additional warnings
|
|
|
|
- support for none algorithm
|
2016-01-05 13:14:50 +01:00
|
|
|
- better compression handling
|
|
|
|
- ensure reading enough data (fixes few Linux SSH)
|
|
|
|
|
2015-12-30 12:17:58 +01:00
|
|
|
### v1.0.20151230
|
|
|
|
- Dropbear SSH support
|
|
|
|
|
2015-12-23 04:52:21 +01:00
|
|
|
### v1.0.20151223
|
|
|
|
- initial version
|