diff options
| author | jvoisin | 2019-01-05 15:41:02 +0100 |
|---|---|---|
| committer | jvoisin | 2019-01-05 15:41:02 +0100 |
| commit | fc82f09a109e2ba84d037804c43ad36b0e2d2774 (patch) | |
| tree | 8e4151a7f02938f3d862e2e8c3bcdad76c9b82a0 | |
| parent | 1d737e54adc436bc44a10a951dd3dee6a684f0b8 (diff) | |
Improve a bit the readme
| -rw-r--r-- | README.md | 62 |
1 files changed, 34 insertions, 28 deletions
| @@ -1,7 +1,7 @@ | |||
| 1 | <h1 align="center"> | 1 | <h1 align="center"> |
| 2 | <br> | 2 | <br> |
| 3 | <a href="https://snuffleupagus.readthedocs.io/"> | 3 | <a href="https://snuffleupagus.readthedocs.io/"> |
| 4 | <img src="https://github.com/nbs-system/snuffleupagus/raw/master/doc/source/_static/sp.png" alt="Snuffleupagus' logo" width="200"></a> | 4 | <img src="https://github.com/nbs-system/snuffleupagus/raw/master/doc/source/_static/sp.png" alt="Snuffleupagus' logo" width="200"></a> |
| 5 | <br> | 5 | <br> |
| 6 | Snuffleupagus | 6 | Snuffleupagus |
| 7 | <br> | 7 | <br> |
| @@ -15,28 +15,28 @@ | |||
| 15 | alt="Travis-ci"> | 15 | alt="Travis-ci"> |
| 16 | </a> | 16 | </a> |
| 17 | <a href="https://gitlab.com/jvoisin/snuffleupagus/commits/master"> | 17 | <a href="https://gitlab.com/jvoisin/snuffleupagus/commits/master"> |
| 18 | <img src="https://gitlab.com/jvoisin/snuffleupagus/badges/master/pipeline.svg" | 18 | <img src="https://gitlab.com/jvoisin/snuffleupagus/badges/master/pipeline.svg" |
| 19 | alt="gitlab pipeline testing _all_ distributions" /> | 19 | alt="gitlab pipeline testing _all_ distributions" /> |
| 20 | </a> | 20 | </a> |
| 21 | <a href="https://scan.coverity.com/projects/nbs-system-snuffleupagus"> | 21 | <a href="https://scan.coverity.com/projects/nbs-system-snuffleupagus"> |
| 22 | <img src="https://scan.coverity.com/projects/13821/badge.svg?flat=1" | 22 | <img src="https://scan.coverity.com/projects/13821/badge.svg?flat=1" |
| 23 | alt="Coverity"> | 23 | alt="Coverity"> |
| 24 | </a> | 24 | </a> |
| 25 | <a href="https://bestpractices.coreinfrastructure.org/projects/1267"> | 25 | <a href="https://bestpractices.coreinfrastructure.org/projects/1267"> |
| 26 | <img src="https://bestpractices.coreinfrastructure.org/projects/1267/badge" | 26 | <img src="https://bestpractices.coreinfrastructure.org/projects/1267/badge" |
| 27 | alt="CII Best Practises"> | 27 | alt="CII Best Practises"> |
| 28 | </a> | 28 | </a> |
| 29 | <a href="http://snuffleupagus.readthedocs.io/?badge=latest"> | 29 | <a href="http://snuffleupagus.readthedocs.io/?badge=latest"> |
| 30 | <img src="https://readthedocs.org/projects/snuffleupagus/badge/?version=latest" | 30 | <img src="https://readthedocs.org/projects/snuffleupagus/badge/?version=latest" |
| 31 | alt="readthedocs.org"> | 31 | alt="readthedocs.org"> |
| 32 | </a> | 32 | </a> |
| 33 | <a href="https://coveralls.io/github/nbs-system/snuffleupagus?branch=master"> | 33 | <a href="https://coveralls.io/github/nbs-system/snuffleupagus?branch=master"> |
| 34 | <img src="https://coveralls.io/repos/github/nbs-system/snuffleupagus/badge.svg?branch=master" | 34 | <img src="https://coveralls.io/repos/github/nbs-system/snuffleupagus/badge.svg?branch=master" |
| 35 | alt="coveralls"> | 35 | alt="coveralls"> |
| 36 | </a> | 36 | </a> |
| 37 | <a href="https://twitter.com/sp_php"> | 37 | <a href="https://twitter.com/sp_php"> |
| 38 | <img src="https://img.shields.io/badge/twitter-follow-blue.svg" | 38 | <img src="https://img.shields.io/badge/twitter-follow-blue.svg" |
| 39 | alt="twitter"> | 39 | alt="twitter"> |
| 40 | </a> | 40 | </a> |
| 41 | </p> | 41 | </p> |
| 42 | 42 | ||
| @@ -44,9 +44,9 @@ | |||
| 44 | <a href="#key-features">Key Features</a> • | 44 | <a href="#key-features">Key Features</a> • |
| 45 | <a href="#download">Download</a> • | 45 | <a href="#download">Download</a> • |
| 46 | <a href="#examples">Examples</a> • | 46 | <a href="#examples">Examples</a> • |
| 47 | <a href="https://snuffleupagus.readthedocs.io/">Documentation</a> • | 47 | <a href="https://snuffleupagus.readthedocs.io/">Documentation</a> • |
| 48 | <a href="https://github.com/nbs-system/snuffleupagus/blob/master/LICENSE">License</a> • | 48 | <a href="https://github.com/nbs-system/snuffleupagus/blob/master/LICENSE">License</a> • |
| 49 | <a href="#thanks">Thanks</a> | 49 | <a href="#thanks">Thanks</a> |
| 50 | </p> | 50 | </p> |
| 51 | 51 | ||
| 52 | Snuffleupagus is a [PHP 7+](https://secure.php.net/) module designed to | 52 | Snuffleupagus is a [PHP 7+](https://secure.php.net/) module designed to |
| @@ -60,21 +60,27 @@ without having to touch the PHP code. | |||
| 60 | * Close to zero performance impact | 60 | * Close to zero performance impact |
| 61 | * Powerful yet simple to write virtual-patching rules | 61 | * Powerful yet simple to write virtual-patching rules |
| 62 | * Killing several classes of vulnerabilities | 62 | * Killing several classes of vulnerabilities |
| 63 | * [Unserialize-based](https://www.owasp.org/images/9/9e/Utilizing-Code-Reuse-Or-Return-Oriented-Programming-In-PHP-Application-Exploits.pdf) code execution | 63 | * [Unserialize-based](https://www.owasp.org/images/9/9e/Utilizing-Code-Reuse-Or-Return-Oriented-Programming-In-PHP-Application-Exploits.pdf) code execution |
| 64 | * [`mail`-based]( https://blog.ripstech.com/2016/roundcube-command-execution-via-email/ ) code execution | 64 | * [`mail`-based]( https://blog.ripstech.com/2016/roundcube-command-execution-via-email/ ) code execution |
| 65 | * Cookie-stealing [XSS]( https://en.wikipedia.org/wiki/Cross-site_scripting ) | 65 | * Cookie-stealing [XSS]( https://en.wikipedia.org/wiki/Cross-site_scripting ) |
| 66 | * File-upload based code execution | 66 | * File-upload based code execution |
| 67 | * Weak PRNG | 67 | * Weak PRNG |
| 68 | * [XXE]( https://en.wikipedia.org/wiki/XML_external_entity_attack ) | 68 | * [XXE]( https://en.wikipedia.org/wiki/XML_external_entity_attack ) |
| 69 | * Hardening features | 69 | * Several hardening features |
| 70 | * Automatic `secure` and `samesite` flag for cookies | 70 | * Automatic `secure` and `samesite` flag for cookies |
| 71 | * Bundled set of rules to detect post-compromissions behaviours | 71 | * Bundled set of rules to detect post-compromissions behaviours |
| 72 | * Global [strict mode]( https://secure.php.net/manual/en/migration70.new-features.php#migration70.new-features.scalar-type-declarations) and type-juggling prevention | 72 | * Global [strict mode]( https://secure.php.net/manual/en/migration70.new-features.php#migration70.new-features.scalar-type-declarations) and type-juggling prevention |
| 73 | * Whitelisting of [stream wrappers](https://secure.php.net/manual/en/intro.stream.php) | 73 | * Whitelisting of [stream wrappers](https://secure.php.net/manual/en/intro.stream.php) |
| 74 | * Preventing writeable files execution | 74 | * Preventing writeable files execution |
| 75 | * Whitelist/blacklist for `eval` | 75 | * Whitelist/blacklist for `eval` |
| 76 | * Enforcing TLS certificate validation when using [curl](https://secure.php.net/manual/en/book.curl.php) | 76 | * Enforcing TLS certificate validation when using [curl](https://secure.php.net/manual/en/book.curl.php) |
| 77 | * Request dumping capability | 77 | * Request dumping capability |
| 78 | * A relatively sane codebase: | ||
| 79 | * A [comprehensive](https://coveralls.io/github/nbs-system/snuffleupagus?branch=master) testsuite | ||
| 80 | * Every commit is tested on [several distributions](https://gitlab.com/jvoisin/snuffleupagus/pipelines) | ||
| 81 | * An `clang-format`-enfored code style | ||
| 82 | * A [comprehensive documentation](https://snuffleupagus.rtfd.io) | ||
| 83 | * Usage of [coverity](https://scan.coverity.com/projects/nbs-system-snuffleupagus) | ||
| 78 | 84 | ||
| 79 | ## Download | 85 | ## Download |
| 80 | 86 | ||
