This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org
O-Saft/Documentation
From OWASP
O-Saft
This is O-Saft's documentation as you get with:
o-saft.pl --help
- 1 O-Saft
- 1.1 NAME
- 1.2 DESCRIPTION
- 1.3 SYNOPSIS
- 1.4 QUICKSTART
- 1.5 WHY?
- 1.6 RESULTS
- 1.7 COMMANDS
- 1.7.1 +check +cipher +info +http +list +quick +sni +sni_check +version
- 1.7.2 Commands for information about this tool
- 1.7.3 Commands to check SSL details
- 1.7.4 Commands to test target's ciphers
- 1.7.5 Commands to test SSL connection to target
- 1.7.6 Commands to show details of the target's certificate
- 1.8 OPTIONS
- 1.8.1 General options
- 1.8.1.1 --h
- 1.8.1.2 --help
- 1.8.1.3 --help=cmd
- 1.8.1.4 --help=commands
- 1.8.1.5 --help=checks
- 1.8.1.6 --help=legacy
- 1.8.1.7 --help=compliance
- 1.8.1.8 --help=intern
- 1.8.1.9 --help=score
- 1.8.1.10 --help=text
- 1.8.1.11 --help=text-cfg
- 1.8.1.12 --help=regex
- 1.8.1.13 --dns
- 1.8.1.14 --no-dns
- 1.8.1.15 --host=HOST
- 1.8.1.16 --port=PORT
- 1.8.1.17 --host=HOST and --port=PORT and HOST:PORT and HOST
- 1.8.1.18 --proxyhost=PROXYHOST --proxy=PROXYHOST:PROXYPORT
- 1.8.1.19 --proxyuser=PROXYUSER
- 1.8.1.20 --proxypass=PROXYPASS
- 1.8.1.21 --proxyport=PROXYPORT
- 1.8.2 Options for SSL tool
- 1.8.3 Options for SSL connection to target
- 1.8.3.1 --cipher=CIPHER
- 1.8.3.2 --no-md5-cipher
- 1.8.3.3 --SSL, -protocol SSL
- 1.8.3.4 --no-SSL
- 1.8.3.5 --nullsslv2
- 1.8.3.6 --http
- 1.8.3.7 --no-http
- 1.8.3.8 --sni
- 1.8.3.9 --no-sni
- 1.8.3.10 --force-sni
- 1.8.3.11 --no-cert
- 1.8.3.12 --no-cert --no-cert
- 1.8.3.13 --no-cert-text TEXT
- 1.8.3.14 --ca-depth INT
- 1.8.3.15 --ca-file FILE
- 1.8.3.16 --ca-path DIR
- 1.8.3.17 --no-nextprotoneg
- 1.8.3.18 --no-reconnect
- 1.8.3.19 --no-tlsextdebug
- 1.8.3.20 --sclient-opt=VALUE
- 1.8.4 Options for checks and results
- 1.8.5 Options for output format
- 1.8.6 Options for compatibility with other programs
- 1.8.7 Options for customization
- 1.8.8 Options for tracing and debugging
- 1.8.8.1 --n
- 1.8.8.2 --v
- 1.8.8.3 --verbose
- 1.8.8.4 --v --v
- 1.8.8.5 --v --v --v
- 1.8.8.6 --v --v --v --v
- 1.8.8.7 --trace
- 1.8.8.8 --trace --trace
- 1.8.8.9 --trace --trace --trace
- 1.8.8.10 --trace --trace --trace --trace
- 1.8.8.11 --trace--
- 1.8.8.12 --trace-arg
- 1.8.8.13 --trace-cmd
- 1.8.8.14 --trace@
- 1.8.8.15 --trace-key
- 1.8.8.16 --trace=VALUE
- 1.8.8.17 --trace=FILE
- 1.8.8.18 --trace-sub +traceSUB
- 1.8.9 --trace vs. --v
- 1.8.10 Options vs. Commands
- 1.8.1 General options
- 1.9 LAZY SYNOPSIS
- 1.10 CHECKS
NAME
- o-saft.pl - OWASP SSL audit for testers
- OWASP SSL advanced forensic tool
DESCRIPTION
- This tools lists information about remote target's SSL certificate
- and tests the remote target according given list of ciphers.
- Note: Throughout this description
$0is used as an alias for the - program name
o-saft.pl.
SYNOPSIS
- o-saft.pl [COMMANDS ..] [OPTIONS ..] target [target target ...]
- Where [COMMANDS] and [OPTIONS] are described below and
target - is a hostname either as full qualified domain name or as IP address.
- Multiple commands and targets may be combined.
- All commands and options can also be specified in a rc-file, see
- RC-FILE below.
QUICKSTART
- Before going into a detailed description of the purpose and usage,
- here are some examples of the most common use cases:
- Show supported (enabled) ciphers of target:
o-saft.pl +cipher --enabled example.tld
- Show details of certificate and connection of target:
o-saft.pl +info example.tld
- Check certificate, ciphers and SSL connection of target:
o-saft.pl +check example.tld
- List all available commands:
o-saft.pl --help=commands
- If no command is given, +cipher is used.
WHY?
- Why a new tool for checking SSL security and configuration when there
- are already a dozen or more such tools in existence (circa 2012)?
- Currently available tools suffer from some or all of following issues:
- * lack of tests of unusual ciphers
- * lack of tests of unusual SSL certificate configurations
- * may return different results for the same checks on a given target
- * missing tests for modern SSL/TLS functionality
- * missing tests for specific, known SSL/TLS vulnerabilities
- * no support for newer, advanced, features e.g. CRL, OCSP, EV
- * limited capability to create your own customised tests
- Other reasons or problems are that they are either binary and hence
- not portable to other (newer) platforms.
- In contrast to (all?) most other tools, including openssl, it can be
- used to `ask simple questions' like `does target support STS' just by
- calling:
o-saft.pl +cipher +hsts_sts example.tld
- For more, please see EXAMPLES section below.
RESULTS
- For the results, we have to distinguish those returned by +cipher
- command and those from all other tests and checks like +check or
- +info command.
+cipher
- The cipher checks will return one line for each tested cipher. It
- contains at least the cipher name,
yesornowhether it's - supported or not, and a security qualification. It may look like:
AES256-SHA yes HIGH
NULL-SHA no weak
- Depending on the used --legacy=* option the format may differ
- and also contain more information. For details see --legacy=*
- option below.
- The text for security qualifications are mainly those returned by
- openssl (version 1.0.1): LOW, MEDIUM, HIGH and WEAK.
- The same texts but with all lower case characters are used if the
- qualification was adapted herein.
+check
- These tests return a line with a label describing the test and a
- test result for it. The idea is to report
yesif the result - is considered "secure" and report the reason why it is considered
- insecure otherwise. Example of a check considered secure:
Label of the performed check: yes
- Example of a check considered insecure:
Label of the performed check: no (reason why)
- Note that there are tests where the results appear confusing when
- first viewed, like for www.wi.ld:
Certificate is valid according given hostname: no (*.wi.ld)
Certificate's wildcard does not match hostname: yes
- This can for example occur with:
Certificate Common Name: *.wi.ld
Certificate Subject's Alternate Names: DNS:www.wi.ld
- Please check the result with the +info command also to verify
- if the check sounds reasonable.
+info
- The test result contains detailed information. The labels there
- are mainly the same as for the "+check" command.
- ll output is designed to make it easily parsable by postprocessors.
- lease see OUTPUT section below for details.
COMMANDS
- There are commands for various tests according the SSL connection to
- the target, the targets certificate and the used ciphers.
- All commands are preceded by a
+to easily distinguish from other - arguments and options. However, some --OPT options are treated as
- commands for historical reason or compatibility to other programs.
- The most important commands are (in alphabetical order):
+check +cipher +info +http +list +quick +sni +sni_check +version
- A list of all available commands will be printed with
o-saft.pl --help=cmd
- The summary and internal commands return requested information or the
- results of checks. These are described below.
- The description of all other commands will be printed with
o-saft.pl --help=commands
Commands for information about this tool
- All these commands will exit after execution (cannot be used together
- with other commands).
+ciphers
- Show ciphers offerd by local SSL implementation.
+list
- Show all ciphers known by this tool. This includes cryptogrphic
- details of the cipher and some internal details about the rating.
- Use --v option to show more details.
+abbr +abk
- Show common abbreviation used in the world of security.
+version
- Show version information for both the program and the Perl modules
- that it uses, then exit.
- Use --v option to show more details.
+libversion
- Show version of openssl.
+todo
- Show known problems and bugs.
Commands to check SSL details
- Following (summary, internal) commands are simply a shortcut for
- a list of other commands. For details of the list use:
o-saft.pl --help=intern
+check
- Check the SSL connection for security issues. This is the same as
- +info +cipher +sizes --sslv2 --sslv3 --tls1
- but also gives some kind of scoring for security issues if any.
+http
- Perform HTTP checks (like STS, redirects etc.).
+info
- Overview of most important details of the SSL connection.
- Use --v option to show details also, which span multiple lines.
+info--v
- Overview of all details of the SSL connection. This is a shortcut
- for all commands listed below but not including +cipher.
- This command is intended for debugging as it prints some details
- from the used Net::SSLinfo module.
+quick
- Quick overview of checks. Implies --enabled and --short.
+sts +hsts
- Various checks according STS HTTP header.
- This option implies --http, means that --no-http is ignored.
+sni
- Check for Server Name Indication (SNI) usage.
+sni_check +check_sni
- Check for Server Name Indication (SNI) usage and validity of all
- names (CN, subjectAltName, FQDN, etc.).
+bsi
- Various checks according BSI TR-02102-2 compliance.
+ev
- Various checks according certificate's extended Validation (EV).
- Hint: use option --v --v to get information about failed checks.
+sizes
- Check length, size and count of some values in the certificate.
+s_client
- Dump data retrieved from
openssl s_client ...call. Should be - used for debugging only.
- It can be used just like openssl itself, for example:
openssl s_client -connect host:443 -no_sslv2
+dump
- Dumps internal data for SSL connection and target certificate.
- This is mainly for debugging and should not be used together with
- other commands (except +cipher).
- Each key-value pair is enclosed in
#{and#}.
- Using --trace --trace dumps data of Net::SSLinfo too.
+exec
- Command used internally when requested to use other libraries.
- This command should not be used directly.
Commands to test target's ciphers
+cipher
- Check target for ciphers, either all ciphers or ciphers specified
- with --cipher=* option.
- Note that ciphers not supported by the local SSL implementation
- are not checked by default, use --local option for that.
+cipherall
- Check target for all possible ciphers.
- Does not depend on local SSL implementation.
- WARNING: needs to be extensively tested (04/2014)
Commands to test SSL connection to target
- Please see:
o-saft.pl --help=commands
Commands to show details of the target's certificate
- Please see:
o-saft.pl --help=commands
OPTIONS
- All options are written in lowercase. Words written in all capital in
- the description here is text provided by the user.
General options
--h
--help
- WYSIWYG
- Note: The documentation is written with perl's POD format and uses
- perl's POD module to print it. Unfortunately the first line
- written by POD is:
'User Contributed Perl Documentation'
- which may be a bit misleading because all descriptions of the
- documentation belong to this tool itself.
--help=cmd
- Show available commands.
--help=commands
- Show available commands with short description.
--help=checks
- Show available checks.
--help=legacy
- Show possible legacy formats (used as value in --legacy=KEY).
--help=compliance
- Show available compliance checks.
--help=intern
- Show internal commands.
--help=score
- Show score value for each check.
- Value is printed in format to be used for --cfg_score=KEY=SCORE.
- Note that the sequence of options is important. Use the options
- --trace and/or --cfg_score=KEY=SCORE before --help=score.
--help=text
- Show texts used in various messages.
--help=text-cfg
- Show texts used in various messages ready for use in in RC-FILE or
- as option.
--help=regex
- Show regular expressions used internally.
--dns
- Do DNS lookups to map given hostname to IP, do a reverse lookup.
--no-dns
- Do not make DNS lookups.
- Note that the corresponding IP and reverse hostname may be missing
- in some messages then.
--host=HOST
- Specify HOST as target to be checked. Legacy option.
--port=PORT
- Specify target's PORT to be used. Legacy option.
--host=HOST and --port=PORT and HOST:PORT and HOST
- When giving more than one HOST argument, the sequence of the given
- HOST argument and the given --port=PORT and the given --host=HOST
- options are important.
- The rule how ports and hosts are mapped is as follows:
- HOST:PORT arguments are uses as is (connection to HOST on PORT)
- only HOST is given, then previous specified --port=PORT is used
- Note that URLs are treated as HOST:PORT, if they contain a port.
- Example:
o-saft.pl +cmd host-1 --port 23 host-2 host-3:42 host-4
- will connect to:
host-1:443
host-2:23
host-3:42
host-4:23
--proxyhost=PROXYHOST --proxy=PROXYHOST:PROXYPORT
- Make all connection to target using PROXYHOST.
--proxyuser=PROXYUSER
- Specify username for proxy authentication.
--proxypass=PROXYPASS
- Specify password for proxy authentication.
- --proxy=PROXYUSER:PROXYPASS@PROXYHOST:PROXYPORT is also possible.
--proxyport=PROXYPORT
- Make all connection to target using PROXYHOST:PROXYPORT.
Options for SSL tool
--s_client
- Use
openssl s_slient ...call to retrieve more informations from - the SSL connection. This is disabled by default on Windows because
- of performance problems. Without this option following informations
- are missing on Windows:
compression, expansion, renegotiation, resumption,
selfsigned, verify, chain, protocols
- See
Net::SSLinfofor details.
- If used together with --trace, s_client data will also be printed
- in debug output of
Net::SSLinfo.
--no-openssl
- Do not use external
openssltool to retrieve informations. Use of -
opensslis disabled by default on Windows. - Note that this results in some missing informations.
--openssl=TOOL
- TOOL can be a path to openssl executable; default: openssl
--force-openssl
- Use openssl to check for supported ciphers; default: IO::Socket
- This option forces to use
openssl s_slient -connect CIPHER ..to - check if a cipher is supported by the remote target. This is useful
- if the --lib=PATH option doesn't work (for example due to changes
- of the API or other incompatibilities).
--exe-path=PATH --exe=PATH
- PATH is a full path where to find openssl.
--lib-path=PATH --lib=PATH
- PATH is a full path where to find libssl.so and libcrypto.so
- See HACKER's INFO below for a detailed description how it works.
--envlibvar=NAME
- NAME is the name of the environment variable containing additional
- paths for searching dynamic shared libraries.
- Default is LD_LIBRARY_PATH .
- Check your system for the proper name, i.e.:
- DYLD_LIBRARY_PATH, LIBPATH, RPATH, SHLIB_PATH .
--ssl-lazy
- if the --lib=PATH option doesn't work (for example due to changes
- I.g. this tools tries to identify available functionality according
- SSL versions from the underlaying libraries. Unsupported versions
- are then disables and a warning is shown.
- Unfortunately some libraries have not implemented all functions to
- check availability of a specific SSL version, which then results in
- a compile error.
- This option disables the strict check of availability.
- If the underlaying library doesn't support the required SSL version
- at all, following error may occour:
Can't locate auto/Net/SSLeay/CTX_v2_new.al in @INC ...
Options for SSL connection to target
--cipher=CIPHER
- CIPHER can be any string accepeted by openssl or following:
- yeast use all ciphers from list defined herein, see +list
- Beside the cipher names accepted by openssl, CIPHER can be the name
- of the constant or the (hex) value as defined in openssl's files.
- Currently supported are the names and constants of openssl 1.0.1c .
- Example:
--cipher=DHE_DSS_WITH_RC4_128_SHA
--cipher=0x03000066
--cipher=66
- will be mapped to DHE-DSS-RC4-SHA
- Note: if more than one cipher matches, just one will be selected.
- Default is
ALL:NULL:eNULL:aNULL:LOWas specified in Net::SSLinfo
--no-md5-cipher
- Do not use *-MD5 ciphers for other protocols than SSLv2.
- This option is only effective with +cipher command.
- The purpose is to avoid warnings from IO::Socket::SSL like:
Use of uninitialized value in subroutine entry at lib/IO/Socket/SSL.pm line 430.
- which occours with some versions of IO::Socket::SSL when a *-MD5
- ciphers will be used with other protocols than SSLv2.
- Note that these ciphers will be checked for SSLv2 only.
--SSL, -protocol SSL
--no-SSL
- SSL can be any of: ssl, ssl2, ssl3, sslv2, sslv3, tls1,
- tls1, tls11, tls1.1, tls1-1, tlsv1, tlsv11, tlsv1.1, tlsv1-1
- (and similar variants for tlsv1.2).
- For example --tls1 --tlsv1 --tlsv1_1 are all the same.
- (--SSL variants): Test ciphers for this SSL/TLS version.
- (--no-SSL variants): Don't test ciphers for this SSL/TLS version.
--nullsslv2
- This option forces to assume that SSLv2 is enabled even if the
- target does not accept any ciphers.
- The target server may accept connections with SSLv2 but not allow
- any cipher. Some checks verify if SSLv2 is enabled at all, which
- then would result in a failed test.
- The default behaviour is to assume that SSLv2 is not enabled if no
- ciphers are accepted.
--http
- Make a HTTP request if cipher is supported.
- If used twice debugging will be enabled using environment variable
- HTTPS_DEBUG .
--no-http
- Do not make HTTP request.
--sni
- Make SSL connection in SNI mode.
--no-sni
- Do not make SSL connection in SNI mode (default: SNI mode).
--force-sni
- Do not check if SNI seems to be supported by Net::SSLeay.
- Older versions of openssl and its libries do not support SNI or the
- SNI support is implemented buggy. By default it's checked if SNI is
- properly supported. With this option this check can be disabled.
- Be warned that this may result in improper results.
--no-cert
- Do not get data from target's certificate, return empty string.
--no-cert --no-cert
- Do not get data from target's certificate, return Net::SSLinfo.pm's
- default string (see --no-cert-text TEXT option).
--no-cert-text TEXT
- Set TEXT to be returned from
Net::SSLinfo.pmif no certificate - data is collected due to use of --no-cert.
--ca-depth INT
- Check certificate chain to depth INT (like openssl's -verify).
--ca-file FILE
- Use FILE with bundle of CAs to verify target's certificate chain.
--ca-path DIR
- Use DIR where to find CA certificates in PEM format.
--no-nextprotoneg
- Do not use
-nextprotonegoption for openssl.
--no-reconnect
- Do not use
-reconnectoption for openssl.
--no-tlsextdebug
- Do not use
-tlsextdebugoption for openssl.
--sclient-opt=VALUE
- Argument or option passed to openssl s_client command.
Options for checks and results
- Options used for +check command:
--enabled
- Only print result for ciphers accepted by target.
--disabled
- Only print result for ciphers not accepted by target.
--ignorecase
- Checks are done case insensitive.
--no-ignorecase
- Checks are done case sensitive. Default: case insensitive.
- Currently only checks according CN, alternate names in the target's
- certificate compared to the given hostname are effected.
Options for output format
--short
- Use short less descriptive text labels for +check and +info
- command.
--legacy=TOOL
- For compatibility with other tools, the output format used for the
- result of the +cipher command can be adjusted to mimic the format
- of other SSL testing tools.
- The argument to the --legacy=TOOL option is the name of the tool
- to be simulated.
- Following TOOLs are supported:
sslaudit: format of output similar to sslaudit sslcipher: format of output similar to ssl-cipher-check ssldiagnos: format of output similar to ssldiagnos sslscan: format of output similar to sslscan ssltest: format of output similar to ssltest ssltestg: format of output similar to ssltest -g ssltest-g: format of output similar to ssltest -g sslyze: format of output similar to sslyze ssl-cipher-check: same as sslcipher: ssl-cert-check: format of output similar to ssl-cert-check testsslserver:format of output similar to TestSSLServer.jar thcsslcHeck: format of output similar to THCSSLCheck
- Note that these legacy formats only apply to output of the checked
- ciphers. Other texts like headers and footers are adapted slightly.
- Please don't expect identical output as the TOOL, it's a best guess
- and should be parsable in a very similar way.
- TOOL may also be set to any of following internally defined values:
- compact: mainly avoid tabs and spaces
- format is as follows
- Some Label:<-- anything right of colon is data
- full: pretty print: each label in its own line, followed
- by data in next line prepended by tab character
- (useful for +info only)
- quick: use tab as separator; print ciphers with bit length
- (--tab not necessary)
- simple: default format
--format=FORM
- FORM may be one of follwoing:
- raw print raw data as passed from Net::SSLinfo
- Note: all data is printed as is, without additional
- label or formatting. It is recommended to use this
- option in conjunction with exactly one command.
- Otherwise the user needs to know how to `read' the
- printed data.
- hex convert some data to hex: 2 bytes separated by
:
--header
- Print formatting header. Default for +check, +info, +quick.
- and +cipher only.
--no-header
- Do not print formatting header.
- Usefull if raw output should be passed to other programs.
--score
- Print scoring results. Default for +check.
--no-score
- Do not print scoring results.
--separator=CHAR
--sep=CHAR
- CHAR will be used as separator between label and value of the
- printed results. Default is :
--tab
- TAB character (0x09, \t) will be used as separator between label
- and value of the printed results.
- As label and value are already separated by a TAB character, this
- options is only useful in conjunction with the --legacy=compact
- option.
--showhost
- Prefix each printed line with the given hostname (target).
- The hostname will be followed by the separator character.
--win-CR
- Print windows-Style with CR LF as end of line. Default is NL only.
Options for compatibility with other programs
- Please see other programs for detailed description (if not obvious:).
- Note that only the long form options are accepted as most short form
- options are ambiguous.
- --capath DIR (curl) same as --ca-path DIR
- --CApath=DIR (openssl) same as --ca-path DIR
- --ca-directory=DIR (wget) same as --ca-path DIR:
- --cacert FILE (curl) same as --ca-file DIR
- --CAfile=FILE (openssl) same as --ca-file DIR
- --ca-certificate=FILE (wget) same as --ca-path DIR
- -c PATH (ssldiagnos) same as --ca-path DIR
- --hide_rejected_ciphers (sslyze) same as --disabled
- --http_get (ssldiagnos) same as --http
- --printcert (ssldiagnos) same as +ciphers
- --protocol SSL (ssldiagnos) same as --SSL
- --no-failed (sslscan) same as --disabled
- --regular (sslyze) same as --http
- --reneg (sslyze) same as +renegotiation
- --resum (sslyze) same as +resumtion
- -h, -h=HOST (various tools) same as --host HOST
- -p, -p=PORT (various tools) same as --port PORT
- -t HOST (ssldiagnos) same as --host HOST
- -noSSL same as --no-SSL
- -no_SSL same as --no-SSL
- For definition of
SSLsee --SSL and --no-SSL above
.
- --insecure (cnark.pl) ignored
- --nopct --nocolor (ssldiagnos) ignored
- --ism, --pci -x (ssltest.pl) ignored
- --timeout, --grep (ssltest.pl) ignored
- -r, -s, -t (ssltest.pl) ignored
- -connect, --fips, -H, -u, -url, -U ignored
Options for customization
- For general descriptions please see CUSTOMIZATION section below.
--cfg_cmd=CMD=LIST
- Redefine list of commands. Sets %cfg{cmd-CMD} to LIST. Commands
- are written without the leading +.
- CMD can be any of: bsi, check, http, info, quick, sni, sizes
- Example:
- --cfg_cmd=sni=sni hostname
- To get a list of commands and their settings, use:
o-saft.pl --help=intern
- Main purpose is to reduce list of commands or print them sorted.
--cfg_score=KEY=SCORE
- Redefine value for scoring. Sets %checks{KEY}{score} to SCORE.
- Most score values are set to 10 by default. Values
0..10
0 are
- allowed.
- To get a list of current score settings, use:
o-saft.pl --help=score
- For deatils how scoring works, please see SCORING section.
- Use the --trace-key option for the +info and/or +check
- command to get the values for KEY.
--cfg_checks=KEY=TEXT --cfg_data=KEY=TEXT
- Redefine texts used for labels in output. Sets %data{KEY}{txt} or
- %checks{KEY}{txt} to TEXT.
- To get a list of preconfigured labels, use:
o-saft.pl --help=cfg_checks o-saft.pl --help=cfg_data
--cfg_text=KEY=TEXT
- Redefine general texts used in output. Sets %text{KEY} to TEXT.
- To get a list of preconfigured texts, use:
o-saft.pl --help=cfg_text
- Note that \n, \r and \t are replaced by the corresponding character
- when read from RC-FILE.
--call=METHOD
- See Options for SSL tool
--usr
- Execute functions defined in o-saft-usr.pm.
Options for tracing and debugging
--n
- Do not execute, just show commands (only useful in conjunction with
- using openssl).
--v
--verbose
- Print more information about checks.
- Note that this option should be first otherwise some debug messages
- are missing.
--v --v
- Print remotely checked ciphers.
--v --v --v
- Print remotely checked ciphers one per line.
--v --v --v --v
- Print processed ciphers (check, skip, etc.).
--trace
- Print debugging messages.
--trace --trace
- Print more debugging messages and pass
trace=2to Net::SSLeay and - Net::SSLinfo.
--trace --trace --trace
- Print more debugging messages and pass
trace=3to Net::SSLeay and - Net::SSLinfo.
--trace --trace --trace --trace
- Print processing of all command line arguments.
--trace--
--trace-arg
- Print command line argument processing.
--trace-cmd
- Trace execution of command processing (those given as +*).
--trace@
--trace-key
- Print some internal variable names in output texts (labels).
- Variable names are prefixed to printed line and enclosed in
#. - Example without --trace-key :
Certificate Serial Number: deadbeef
- Example with --trace-key :
#serial# Certificate Serial Number: deadbeef
--trace=VALUE
- --trace=1 same as --trace
- --trace=2 same as --trace --trace
- --trace=arg same as --trace-arg
- --trace=cmd same as --trace-cmd
- --trace=key same as --trace-key
--trace=FILE
- Use FILE instead of the default rc-file (.o-saft.pl, see RC-FILE).
--trace-sub +traceSUB
- Print formatted list of internal functions with their description.
- Not to be intended in conjunction with any target check.
--trace vs. --v
- While --v is used to print more data, --trace is used to print
- more information about internal data such as procedure names and/or
- variable names and program flow.
--no-warning
- Do not print warning messages (**WARNING:).
Options vs. Commands
- For compatibility with other programs and lazy users, some arguments
- looking like options are silently taken as commands. This means that
- --THIS becomes +THIS then. These options are:
- --help
- --abbr
- --todo
- --chain
- --default
- --fingerprint
- --list
- --version
- Take care that this behaviour may be removed in future versions as it
- conflicts with those options and commands which actually exist, like:
--sni vs. +sni
LAZY SYNOPSIS
- We support following options, which are all identical, for lazy users
- and for compatibility with other programs.
Option Variants
- --port PORT
- --port=PORT
- This applies to most such options, --port is just an example.
- When used in the RC-FILE, the --OPTION=VALUE variant must be used.
Option Names
- Dash
-and/or underscore_in option names are optional. - --no-dns
- --no_dns
- --nodns
- This applies to all such options, --no-dns is just an example.
Targets
- Following syntax is supported also:
o-saft.pl http://some.tld other.tld:3889/some/path?a=b
- Note that only the hostname and the port are used from an URL.
Options vs. Commands
- See Options vs. Commands in OPTIONS section above
CHECKS
Content of this wiki page generated with:
o-saft.pl --help=wiki