Il s'agit de la vérification du durcissement de la commande qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
hardening-check - vérifie les binaires pour les fonctionnalités de renforcement de la sécurité
SYNOPSIS
durcissement-vérification [options] [ELF ...]
Examinez un ensemble donné de binaires ELF et vérifiez plusieurs fonctionnalités de renforcement de la sécurité,
échoue s'ils ne sont pas tous trouvés.
DESCRIPTION
Cet utilitaire vérifie une liste donnée de binaires ELF pour plusieurs fonctionnalités de renforcement de la sécurité
qui peut être compilé dans un exécutable. Ces fonctionnalités sont :
Position Fournisseur Exécutable
Cela indique que l'exécutable a été construit de telle manière (PIE) que le "texte"
section du programme peut être déplacée en mémoire. Pour profiter pleinement de cette
fonctionnalité, le noyau d'exécution doit prendre en charge la randomisation de la disposition de l'espace d'adressage du texte
(ASLR).
Stack Protégé
Cela indique qu'il existe des preuves que l'ELF a été compilé avec le gcc(1)
option -fstack-protecteur (par exemple, utilise __stack_chk_fail). Le programme sera
résistant au débordement de sa pile.
Lorsqu'un exécutable a été construit sans qu'aucun tableau de caractères n'ait été alloué sur le
pile, ce contrôle conduira à de fausses alarmes (puisqu'il n'y a pas d'utilisation de
__stack_chk_fail), même s'il a été compilé avec les bonnes options.
Fortifier Source fonctions
Cela indique que l'exécutable a été compilé avec -D_FORTIFY_SOURCE=2 et -O1
ou plus. Cela provoque certaines fonctions glibc dangereuses avec leur
homologues (par exemple strncpy au lieu de strcpy), ou remplace les appels qui sont
vérifiable à l'exécution avec la version runtime-check (par exemple __memcpy_chk à la place
of mémcpy).
Lorsqu'un exécutable a été construit de telle sorte que les versions fortifiées de la glibc
les fonctions ne sont pas utiles (par exemple, l'utilisation est vérifiée comme sûre au moment de la compilation, ou utilisez
ne peut pas être vérifié à l'exécution), cette vérification entraînera de fausses alarmes. Dans un
effort pour atténuer cela, le contrôle passera si une fonction fortifiée est trouvée,
et échouera si seules des fonctions non fortifiées sont trouvées. Conditions incontrôlables aussi
pass (par exemple, aucune fonction qui pourrait être renforcée n'est trouvée, ou non liée à
glibc).
Lecture seule déménagements
Cela indique que l'exécutable a été construit avec -Wl,-z,relro avoir ELF
marquages (RELRO) qui demandent à l'éditeur de liens d'exécution de marquer toutes les régions de la relocalisation
table en "lecture seule" s'ils ont été résolus avant le début de l'exécution. Cela réduit
les zones de mémoire possibles dans un programme qui peuvent être utilisées par un attaquant qui
effectue un exploit de corruption de mémoire réussi.
Immédiat propriétés de liant
Cela indique que l'exécutable a été construit avec -Wl,-z, maintenant avoir des marquages ELF
(BIND_NOW) qui demandent à l'éditeur de liens d'exécution de résoudre toutes les relocalisations avant de commencer
exécution du programme. Lorsqu'il est combiné avec RELRO ci-dessus, cela réduit encore le
régions de mémoire disponibles pour les attaques de corruption de mémoire.
OPTIONS
--nopie, -p
Pas besoin que les binaires vérifiés soient construits en tant que PIE.
--nostackprotector, -s
Pas besoin que les binaires vérifiés soient construits avec le protecteur de pile.
--nofortifier, -f
Pas besoin que les binaires vérifiés soient construits avec Fority Source.
--norelro, -r
Pas besoin que les binaires vérifiés soient construits avec RELRO.
--nobindnow, -b
Non, pas besoin que les binaires vérifiés soient construits avec BIND_NOW.
--silencieux, -q
Ne signaler que les échecs.
--verbeux, -v
Signalez en détail les échecs.
--report-fonctions, -R
Après le rapport, affichez toutes les fonctions externes nécessaires à l'ELF.
--find-libc-fonctions, -F
Au lieu du rapport régulier, localisez la libc pour le premier ELF sur la commande
et rapporter toutes les fonctions "fortifiées" connues exportées par la libc.
--Couleur, -c
Activer la sortie d'état colorisée.
--lintien, -l
Basculez les rapports sur la sortie lintian-check-parsable.
--déboguer Signaler un débogage pendant le traitement.
--Aidez-moi, -h, -?
Imprimez un bref message d'aide et quittez.
--homme, -H
Imprimez la page de manuel et quittez.
RETOUR VALEURE
Lorsque tous les binaires vérifiés ont toutes les fonctionnalités de renforcement vérifiables détectées, ce programme
se terminera avec un code de sortie de 0. Si une vérification échoue, le code de sortie sera 1.
Les contrôles individuels peuvent être désactivés via les options de la ligne de commande.
Utilisez le contrôle de renforcement en ligne à l'aide des services onworks.net