Estoy de acuerdo con Gilles en que deshabilitar Perl no es una seguridad efectiva; ya que hay muchas otras formas en que podría ser atacado (por ejemplo, un script de python; un script de bash; un script de php; un ejecutable) y que restringir /usr/bin/perl
a ciertos grupos de usuarios puede tener efectos secundarios (por ejemplo, ese programa que llama a script perl como usuario ordinario).
Sin embargo, como punto de partida, de manera sencilla si tiene una aplicación en Linux que desea restringir a ciertos usuarios, primero cree un grupo y luego agregue usuarios a ese grupo. Los siguientes comandos logran esto en ubuntu (creando el grupo perl y agregando user1, user2, user3 a él:
sudo addgroup perl
sudo adduser user1 perl
sudo adduser user2 perl
sudo adduser user3 perl
Ahora encuentre dónde está perl actualmente ( which perl
, que en mi sistema era /usr/bin/perl
) encuentre lo que es la propiedad y los permisos de perl actualmente ( ls -l /usr/bin/perl
en ubuntu está configurado de forma predeterminada como propiedad del usuario root y en la raíz del grupo) con todas las personas que tengan permisos de lectura / ejecución, que debe deshabilitar para otros usuarios a menos que estén en el grupo perl:
sudo chgrp perl /usr/bin/perl
sudo chmod o-rx /usr/bin/perl
Tenga en cuenta que un atacante en su sistema que no sea miembro del grupo perl, si puede llegar a un terminal podría cargar su propia versión del ejecutable de perl (o si no eliminó el acceso de lectura a otros usuarios). ; podrían haberlo copiado) a algún directorio local / tmp, establecer el bit ejecutable en él (si pueden ejecutar chmod
), y luego usar ese script perl de ejecución fuera de su propio ejecutable.