Búsquedas a nivel de sistema
3/18/20253 min read


$ find / -name passwd 2>/dev/null - ¿Cómo buscamos lo que queremos en terminal? Pues con el comando $ find Es crucial a la hora de búsqueda de archivos o directorios, entonces vamos a explicar algunos de sus parámetros.
Donde $ find sería el comando para buscar, / la raíz indicamos desde donde queremos que busque, pues desde la raíz del sistema -name le indicamos que queremos buscar una palabra, passwd sería la palabra que queremos buscar 2>/dev/null como estamos como usuario no privilegiado queremos que los permisos denegados y/o errores no nos aparezcan.
Por lo tanto como output podemos ver diferentes archivos con nombre passwd.


$ find / -name passwd 2>/dev/null | xargs ls -l - Lo que logramos con este comando sería que a la hora de querer hacer un ls -l de cada archivo sería demasiado tedioso, entonces podemos hacer un xargs ls -l para poder hacer directamente un ls -l de todas las rutas que nos aparecen como output del comando find.


$ find / -perm -4000 2>/dev/null - Aquí como podemos comprobar lo que hacemos con el parámetro -perm es decirle que queremos buscar archivos o directorios con el -perm (permiso) -4000 (SUID).


$ find / -group video 2>/dev/null - Aquí utilizaremos el parámetro -group (Para buscar un grupo) , video (para buscar el grupo video) Entonces como podemos comprobar nos busca todos los archivos o directorios que como grupo asignado tengan video.


$ find / -group video -type f 2>/dev/null | xargs ls -l - Ahora con el parámetro -type f le indicamos que queremos buscar solo documentos de tipo archivo/file, si pusiéramos -type d le indicaríamos que solo queremos buscar directorios.


$ find / -user root -writable 2>/dev/null - Con el parámetro -user (Le indicamos que queremos filtar por un usuario) , root (Queremos buscar archivos o directorios donde root sea el propietario) , -writable (Queremos que el archivo o directorio tenga permisos de escritura) Por lo tanto ojo con estos archivos o directorios porque podrían ser vulnerables.


Como podemos comprobar el archivo /var/lock tiene permisos de escritura a nivel de otros.


$ find / -user root -executable -type f 2>/dev/null - Donde con el parámetro -executable le decimos que queremos buscar de tipo ejecutables y con el parámetro -type f de tipo archivo.


Vamos a coger este archivo /usr/lib/python3.11/plataform.py Y vamos a hacer lo siguiente...


$ find / -name platf\*.py 2>/dev/null - Donde el parámetro platf\*.py (Podemos buscar un archivo o directorio cualquiera, el cual no nos acordemos como se llama, y nos acordamos que empieza por platf no se qué mas... Entonces agregamos \* y por suerte nos acordamos que acaba en .py Pues lo podemos buscar de esa manera)


$ find / -name \*form.py 2>/dev/null - O por último con el parámetro \* Al inicio podemos buscar un archivo o directorio que acabe con form.py por ejemplo ) Tal y como vemos en la imagen.