Ensemble de scripts Ruby pour vérifier le comportement d'un frontal web (headers, redirections, certificat SSL/TLS, ...)
Go to file
2016-04-28 18:11:22 +02:00
test Commit initial 2016-04-28 18:11:22 +02:00
vendor Commit initial 2016-04-28 18:11:22 +02:00
gems.locked Commit initial 2016-04-28 18:11:22 +02:00
gems.rb Commit initial 2016-04-28 18:11:22 +02:00
README.md Commit initial 2016-04-28 18:11:22 +02:00

Il s'agit d'un ensemble de scripts, de type "tests unitaires" permettant de valider le comportement d'un service web, du point de vue d'un client web.

Installation

Au minimum il faut Ruby pour l'exécution des scripts.

Il faut également :

  • OpenSSL
  • Python 2
  • Bash (>= 4)
  • coreutils

Une fois Ruby installé, depuis le dossier du projet :

bundle install

Ça va installer localement des paquets Ruby nécessaires.

Exécution

Partie "sécurité" :

bundle exec ruby -Itest test/secrity_test.rb

Il est possible d'utiliser un certificat SSL racine stocké en local (test/certs/_my_cert.pem) et paramétré dans la méthode root_certificate.

Il est possible d'utiliser un binaire open_ssl personnalisé, géré dans la méthode openssl_path.

test_certificate_level

Permet de vérifier la conformité avec un des niveaux normalisés proposés par Mozilla (https://wiki.mozilla.org/Security/Server_Side_TLS)

test_certificate

Vérifie la validité du certificat

test_accepts_tls_v1

Vérifie que le serveur accepte bien des connexions TLS v1

test_refuse_ssl_v3

Vérifie que le serveur refuse bien des connexions SSL v3

test_hsts_header

Vérifie la présence de l'en-tête HTTP HTTP-Strict-Transport-Security.

Partie "redirections" :

bundle exec ruby -Itest test/domain_redirects_test.rb

test_redirections

Vérifie que les redirections attendues aient bien lieu.

test_http_codes

Vérifie que les codes HTTP attendus soient bien reçus.