Pular para o conteúdo principal

find

O comando find é uma ferramenta poderosa para busca e localização de arquivos e diretórios no sistema de arquivos Linux. Ele oferece uma variedade de opções para ajudar você a encontrar rapidamente os arquivos que deseja.


Procurando Arquivo por Nome Completo

Para procurar um arquivo com um nome completo, utilize o seguinte comando:

find /caminho/do/diretorio -name nome_do_arquivo

Exemplo:

find /root/ -name minhapesquisa
informação

Isso procurará por um arquivo chamado "minhapesquisa" dentro do diretório /root/ e em seus subdiretórios.

Procurando Arquivo por Parte do Nome

Se você deseja encontrar arquivos com parte do nome correspondente, use o caractere curinga * da seguinte forma:

find /caminho/do/diretorio -name parte_do_nome*

Exemplo:

find /root/ -name minhapesqui*
informação

Isso procurará arquivos cujo nome comece com "minhapesqui" dentro do diretório /root/ e seus subdiretórios.

Procurando Arquivos com Permissões Específicas

Você pode usar o find para encontrar arquivos com permissões específicas, como arquivos com permissão de edição para escalonar permissão. Aqui estão dois exemplos:

Procurando Arquivos com Permissão 0777

find / -type f -perm 0777 2>/dev/null
informação

Este comando procura por arquivos no sistema de arquivos raiz / com permissão 0777 (permissão de leitura, gravação e execução para todos os usuários) e redireciona quaisquer erros para /dev/null.

Procurando Arquivos com Bit de SUID Ativado

find / -perm -u=s -type f 2>/dev/null
informação

Este comando procura por arquivos no sistema de arquivos raiz / com o bit de setuid ativado (SUID), o que geralmente indica que esses arquivos têm permissões especiais de execução.

Procurando Arquivos de um Usuário Específico

Se você deseja encontrar arquivos pertencentes a um usuário específico, use o seguinte formato:

find /caminho/do/diretorio -user nome_do_usuario

Exemplo:

find / -user adm
informação

Isso procurará por arquivos no sistema de arquivos raiz / que pertencem ao usuário "adm".

Procurando Arquivos de um Grupo Específico

Para localizar arquivos que pertencem a um grupo específico, use o formato a seguir:

find /caminho/do/diretorio -group nome_do_grupo

Exemplo:

find / -group root
informação

Isso procurará por arquivos no sistema de arquivos raiz / que pertencem ao grupo "root".

Procurando Arquivos Modificados e/ou Acessados

Modificados nos últimos 7 dias:

find . -mtime -7

Acessados nos últimos 10 minutos:

find . -amin -10

Modificados exatamente à 10 minutos atrás:

find . -mmin 10

Modificados à mais de 10 minutos:

find . -mmin +10
informação

-amin (access minute): Tempo de acesso em minutos.
-atime (access time): Tempo de acesso em dias.
-cmin (change minute): Tempo de alteração em minutos.
-ctime (change time): Tempo de alteração em dias.
-mmin (modify minute): Tempo de modificação em minutos.
-mtime (modify time): Tempo de modificação em dias.

Access Time (atime, amin): Refere-se ao último momento em que o arquivo foi lido ou acessado.
Change Time (ctime, cmin): Refere-se à última vez que o inode do arquivo foi alterado, que pode incluir mudanças nas permissões ou no proprietário do arquivo, além de modificações no próprio conteúdo.
Modify Time (mtime, mmin): Refere-se à última vez que o conteúdo do arquivo foi modificado.

-mtime n: Encontra arquivos modificados exatamente n dias atrás.
-mtime +n: Encontra arquivos modificados há mais de n dias.
-mtime -n: Encontra arquivos modificados nos últimos n dias.

Procurando Diretórios com Permissão de Escrita

Procurar um diretório com permissão de escrita é muito útil para carregar executáveis para fazer troubleshooting ou no caso de um teste de segurança pode ser útil para baixar ferramentas e/ou fazer o upload de shells.

find / -writable -type d 2>/dev/null