Liste blanche certains binarys et scripts à l'intérieur d'un assembly noexec / nosuid?

Juste comme la question. Est-il possible de listr en blanc certains exécutables d'un FS monté sur noexec?

Par exemple, le mien ressemble à ceci:

/dev/vg/lv on /tmp type ext4 (rw,noexec,nosuid) 

Non. Les options de assembly l'emportent toutes. C'est pour cela qu'ils veillent à ce que rien ne soit jamais exécuté directement à partir de ce système de files.

Pour contrer noexec , vous pouvez exécuter la plupart des programmes indirectement en appelant leur lanceur:

  • Si le programme est un script (en commençant par un shebang ), invoquez l'interpréteur et transmettez le script comme premier argument.
  • Si le programme est un exécutable lié dynamicment, /lib/ld-linux.so.2 chargeur dynamic (par exemple /lib/ld-linux.so.2 ou /lib64/ld-linux-x86-64.so.2 ) et transmettez le binary comme premier argument .

Si vous avez un système de files monté avec noexec , vous pouvez afficher un directory où tous les files sont exécutables avec bindfs . Bindfs ne permet cependant pas de définir des permissions par file.

Bien sûr, vous pouvez faire une copy du file ailleurs et rendre cet exécutable.

Si le système de files est monté sur nosuid , il n'y a aucun moyen de rendre les files setuid. Cela briserait la security. Pour créer un file setuid, vous devez avoir access au count d'user propriétaire. Faire une copy et faire ce setuid, ou remonter sans l'option nosuid , sont les seules solutions.