JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Administration d'Oracle Solaris : services de sécurité     Oracle Solaris 11 Information Library (Français)
search filter icon
search icon

Informations document

Préface

Partie I Présentation de la sécurité

1.  Services de sécurité (présentation)

Partie II Sécurité du système, des fichiers et des périphériques

2.  Gestion de la sécurité de la machine (présentation)

3.  Contrôle de l'accès aux systèmes (tâches)

4.  Service d'analyse antivirus (tâches)

5.  Contrôle de l'accès aux périphériques (tâches)

6.  Utilisation de l'outil de génération de rapports d'audit de base (tâches)

7.  Contrôle de l'accès aux fichiers (tâches)

Utilisation des autorisations UNIX pour protéger les fichiers

Commandes d'affichage et de sécurisation des fichiers

Propriété des fichiers et des répertoires

Autorisations des fichiers UNIX

Autorisations de fichiers spéciales (setuid, setgid et sticky bit)

Autorisation setuid

Autorisation setgid

Sticky Bit

Valeur umask par défaut

Modes d'autorisation de fichier

Utilisation des ACL pour protéger les fichiers UFS

Protection contre les problèmes de sécurité causés par les fichiers exécutables

Protection des fichiers (tâches)

Protection des fichiers avec des autorisations UNIX (liste des tâches)

Procédure d'affichage des informations de fichier

Procédure de modification du propriétaire d'un fichier

Procédure de modification de la propriété de groupe d'un fichier

Procédure de modification des autorisations de fichier en mode symbolique

Procédure de modification des autorisations de fichier en mode absolu

Procédure de modification des autorisations de fichier spéciales en mode absolu

Protection contre les programmes présentant des risques de sécurité (liste des tâches)

Procédure de recherche de fichiers avec des autorisations de fichier spéciales

Procédure de désactivation de l'utilisation de piles exécutables par les programmes

Partie III Rôles, profils de droits et privilèges

8.  Utilisation des rôles et des privilèges (présentation)

9.  Utilisation du contrôle d'accès basé sur les rôles (tâches)

10.  Attributs de sécurité dans Oracle Solaris (référence)

Partie IV Services cryptographiques

11.  Structure cryptographique (présentation)

12.  Structure cryptographique (tâches)

13.  Structure de gestion des clés

Partie V Services d'authentification et communication sécurisée

14.  Authentification des services réseau (tâches)

15.  Utilisation de PAM

16.  Utilisation de SASL

17.  Utilisation de Secure Shell (tâches)

18.  Secure Shell (référence)

Partie VI Service Kerberos

19.  Introduction au service Kerberos

20.  Planification du service Kerberos

21.  Configuration du service Kerberos (tâches)

22.  Messages d'erreur et dépannage de Kerberos

23.  Administration des principaux et des stratégies Kerberos (tâches)

24.  Utilisation des applications Kerberos (tâches)

25.  Service Kerberos (référence)

Partie VII Audit dans Oracle Solaris

26.  Audit (présentation)

27.  Planification de l'audit

28.  Gestion de l'audit (tâches)

29.  Audit (référence)

Glossaire

Index

Protection contre les problèmes de sécurité causés par les fichiers exécutables

Programmes pour lire et écrire des données sur la pile. D'une manière générale, ils s'exécutent à partir de portions de mémoire en lecture seule qui sont spécifiquement désignées pour ce code. Certaines attaques provoquant des tampons sur la pile jusqu'au débordement tentent d'insérer un nouveau code sur la pile et forcent le programme à l'exécuter. Ces attaques peuvent être mises en échec en supprimant les autorisations d'exécution de la Suppression de droits d'exécution la mémoire de la pile. C'est-à-dire que la plupart de ces programmes peuvent fonctionner correctement sans utiliser les piles exécutables.

Les processus 64 bits ont toujours des piles non exécutables. La variable noexec_user_stack vous permet de spécifier si les piles des processus 32 bits sont exécutables. Pour se conformer à l'interface SPARC ABI 32 bits, la valeur par défaut est zéro, ce qui indique que la pile est exécutable.

Une fois que cette variable est définie, un signal SIGSEGV est envoyé aux programmes qui tentent d'exécuter du code sur leur pile. Ce signal résulte généralement en un arrêt du programme à l'aide d'un core dump. Ces programmes génèrent également un message d'avertissement qui inclut le nom du programme concerné, l'ID de processus, et l'UID réel de l'utilisateur à l'origine de l'exécution du programme. Par exemple :

a.out[347] attempt to execute code on stack by uid 555 

Le message est consigné par le démon syslog lorsque la fonctionnalité syslog kern est définie sur le niveau notice. Cet enregistrement est défini par défaut dans le fichier syslog.conf, ce qui signifie que le message est envoyé à la console et au fichier /var/adm/messages. Pour plus d'informations, reportez-vous aux pages de manuel syslogd(1M) et syslog.conf(4).

Le message syslog est utile pour l'observation de problèmes de sécurité potentiels. Le message identifie également les programmes valides qui dépendent des piles exécutables dont le bon fonctionnement est empêché par la définition de la variablenoexec_user_stack. Si vous ne voulez pas que les messages soient consignés, définissez la variable noexec_user_stack_log sur zéro dans le fichier /etc/system. Bien que les messages ne soient pas consignés, le signal SIGSEGV peut continuer d'entraîner l'arrêt du programme d'exécution à l'aide d'un core dump.

Vous pouvez utiliser la fonction mprotect() si vous souhaitez que les programmes marquent explicitement leur pile comme exécutable. Pour plus d'informations, reportez-vous à la page de manuel mprotect(2). Vous pouvez également compiler votre programme avec -M /usr/lib/ld/map.noexstk pour rendre la pile non exécutable indépendamment du paramètre à l'échelle du système.