IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

bloquer une option d'une commande


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 15
    Par défaut bloquer une option d'une commande
    s'il vous plait je veut savoir comment on peut bloqué une option d'une commande
    par exemple comment bloqué l'option -l pour la commande ls
    merci d'avance .

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    De manière simple, tu ne peux pas.

    De manière compliquée, tu peux :
    • réécrire la commande ls
    • patcher la commande ls de manière à ce qu'elle ne réagisse plus à cette option

    La 2eme option est carrément sale
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    tu peux aussi renomer ls en ls.original
    et utiliser un alias de ls qui contient par exemple "ls.original -rt"

    dans le .profile de l'utilisateur ou son .bashrc

    et ainsi cet utilisateur est limiter à ces options mais c'est pas infaillible surtout si l'utilisateur n'est pas chrooté, il lui suffit de faire un ls dans /bin pour trouver l'astuce...

  4. #4
    Membre très actif

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    Février 2003
    Messages
    980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2003
    Messages : 980
    Par défaut
    D'autant plus que ça ne va pas forcément résoudre le problème

    Pourquoi vouloir bloquer une option à une commande ?

    Dans ton exemple, il est ultra simple de contourner ce genre de blocage ! Par exemple, en utilisant un petit script perl. Ou encore, en téléchargeant les sources de ls et en les compilant

    Ci-dessous, j'ai modifié les droits de la commande "ls" pour qu'elle ne soit plus exécutable par les utilisateurs (c'est un peu plus violent que ton blocage, mais c'est pour l'exemple).
    J'ai ensuite codé un petit script perl "ls.pl" que je lance et qui m'affiche bien le contenu du répertoire...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    $ ls
    -bash: /bin/ls: Permission denied
    $ cat ls.pl
    #!/usr/bin/perl
     
    $rep=$#ARGV?".":$ARGV[0];
     
    opendir my $fh_rep, $rep or die "impossible d'ouvrir le répertoire $rep: $!\n";
     
    my @fic_rep = grep { !/^\.\.?$/ } readdir $fh_rep;
    foreach $fic (@fic_rep) {
            ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime,$blksize,$blocks) = stat($fic);
            printf "%04o\t%s:%s\t%s\t%s\n", $mode & 07777, $uid, $gid, scalar localtime $mtime, $fic;
    }
    $ perl ~/test/ls.pl
    0644    1003:100        Thu Apr  7 14:46:23 2011        A-large.in
    0644    1003:100        Thu Apr  7 16:39:05 2011        A-prog.pl
    0644    1003:100        Thu Apr  7 16:39:11 2011        A-large.pl.out
    0644    1003:100        Thu Apr  7 14:33:26 2011        A-small.in
    0644    1003:100        Thu Apr  7 14:45:35 2011        A-small.py.out
    0644    1003:100        Thu Apr  7 16:57:58 2011        B-sample.in
    0644    1003:100        Thu Apr  7 14:45:21 2011        A-small.pl.out
    0644    1003:100        Thu Apr  7 18:02:53 2011        B-small.out
    0644    1003:100        Thu Apr  7 18:08:53 2011        input.txt
    0644    1003:100        Thu Apr  7 18:04:39 2011        B.cpp
    0644    1003:100        Thu Apr  7 18:02:36 2011        B-small.in
    0644    1003:100        Thu Apr  7 14:37:36 2011        A-sample.in
    0644    1003:100        Thu Apr  7 14:43:00 2011        A-prog.py
    0644    1003:100        Thu Apr  7 14:47:40 2011        A-large.py.out
    0644    1003:100        Thu Apr  7 18:02:15 2011        B-prog.pl
    0644    1003:100        Thu Apr  7 18:09:01 2011        output.txt
    Bon, c'est minimaliste (je n'ai pas fait de conversion des uid/gid vers le vrai nom), mais c'était pour l'exemple...

    Seconde exemple en compilant ls :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    $ wget http://ftp.gnu.org/pub/gnu/coreutils/coreutils-8.9.tar.gz
    $ tar xvzf coreutils-8.9.tar.gz
    $ cd coreutils-8.9
    $ ./configure
    $ make
    $ cd ..
    $ cp coreutils-8.9/src/ls .
    $ ls
    -bash: /bin/ls: Permission denied
    $ ./ls -l
    total 428
    -rw-r--r-- 1 senga users   1353 Apr  7 14:46 A-large.in
    -rw-r--r-- 1 senga users   2018 Apr  7 16:39 A-large.pl.out
    -rw-r--r-- 1 senga users   2018 Apr  7 14:47 A-large.py.out
    -rw-r--r-- 1 senga users    461 Apr  7 16:39 A-prog.pl
    -rw-r--r-- 1 senga users    416 Apr  7 14:43 A-prog.py
    -rw-r--r-- 1 senga users     30 Apr  7 14:37 A-sample.in
    -rw-r--r-- 1 senga users    805 Apr  7 14:33 A-small.in
    -rw-r--r-- 1 senga users   1539 Apr  7 14:45 A-small.pl.out
    -rw-r--r-- 1 senga users   1539 Apr  7 14:45 A-small.py.out
    ...

  5. #5
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 15
    Par défaut
    merci a vous pour votre temps
    c'est résolut

  6. #6
    Membre très actif

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    Février 2003
    Messages
    980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2003
    Messages : 980
    Par défaut
    Ça serait bien de dire comment c'est résolu

    Et je me permets d'insister : mon message précédent est parfaitement légitime malgré le petit vote négatif qui est, comme bien souvent, super utile.

    Que tu modifies le ls de base de ta distribution, que tu fasses un alias, etc... tu ne pourras jamais empêcher quelqu'un qui veut accéder à ces infos d'y accéder, donc je pense qu'il faut revoir le problème... à savoir, pourquoi chercher à bloquer

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut tout le monde,

    Je remonte le sujet parce que je viens de tomber sur lshell, qui apparemment se prête bien à la demande initiale et plus si affinité...


  8. #8
    Membre très actif

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    Février 2003
    Messages
    980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2003
    Messages : 980
    Par défaut
    Intéressant comme projet, mais bon, si tu es obligé de bloquer perl, gcc, etc... ça peut devenir compliqué :p

    Je ne vois pas comment empêcher quelqu'un qui le veut d'avoir accès à une commande aussi basique que ls sur un système standard.

    Même si tout est bloqué, qu'est ce qui l'empêche de compiler ls sur un autre système et de le récupérer ?

    'fin bref, my 2 cents

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 25/03/2011, 10h52
  2. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  3. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  4. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo