
Ferramenta de enumeração Linux para pentest e CTFs com níveis de verbosidade
Primeiro, alguns one-liners úteis ;)
wget "https://github.com/diego-treitos/linux-smart-enumeration/releases/latest/download/lse.sh" -O lse.sh;chmod 700 lse.sh
curl "https://github.com/diego-treitos/linux-smart-enumeration/releases/latest/download/lse.sh" -Lo lse.sh;chmod 700 lse.sh
Note que desde a versão 2.10 você pode servir o script para outros hosts com a flag -S!
Ferramentas de enumeração Linux para pentest e CTFs
Este projeto foi inspirado por https://github.com/rebootuser/LinEnum e usa muitos de seus testes.
Ao contrário do LinEnum, o lse tenta expor gradualmente a informação dependendo da sua importância do ponto de vista de escalonamento de privilégios (privesc).
Este script shell mostrará informações relevantes sobre a segurança do sistema Linux local, ajudando a escalar privilégios.
A partir da versão 2.0 é majoritariamente compatível com POSIX e testado com shellcheck e posh.
Ele também pode monitorar processos para descobrir execuções recorrentes de programas. Ele monitora enquanto executa todos os outros testes, então você ganha tempo. Por padrão, ele monitora durante 1 minuto, mas você pode escolher o tempo de observação com o parâmetro -p.
Possui 3 níveis de verbosidade para que você possa controlar quanta informação vê.
No nível padrão, você deve ver as falhas de segurança altamente importantes no sistema. O nível 1 (./lse.sh -l1) mostra informações interessantes que devem ajudá-lo a escalar privilégios. O nível 2 (./lse.sh -l2) simplesmente exibirá todas as informações que coleta sobre o sistema.
Por padrão, ele fará algumas perguntas: principalmente a senha do usuário atual (se você a souber ;) para que possa realizar alguns testes adicionais.
A ideia é obter a informação gradualmente.
Primeiro, você deve executá-lo como ./lse.sh. Se você vir alguns sim! verdes, provavelmente já tem material bom para trabalhar.
Se não, tente a verbosidade nível 1 com ./lse.sh -l1 e verá mais informações que podem ser interessantes.
Se isso não ajudar, o nível 2 simplesmente exibirá tudo o que você pode coletar sobre o serviço usando ./lse.sh -l2. Nesse caso, pode ser útil usar ./lse.sh -l2 | less -r.
Você também pode selecionar quais testes executar passando o parâmetro -s. Com ele, você pode selecionar testes ou seções específicas para serem executados. Por exemplo, ./lse.sh -l2 -s usr010,net,pro executará o teste usr010 e todos os testes das seções net e pro.
Use: ./lse.sh [options]
OPTIONS
-c Disable color
-i Non interactive mode
-h This help
-l LEVEL Output verbosity level
0: Show highly important results. (default)
1: Show interesting results.
2: Show all gathered information.
-s SELECTION Comma separated list of sections or tests to run. Available
sections:
usr: User related tests.
sud: Sudo related tests.
fst: File system related tests.
sys: System related tests.
sec: Security measures related tests.
ret: Recurren tasks (cron, timers) related tests.
net: Network related tests.
srv: Services related tests.
pro: Processes related tests.
sof: Software related tests.
ctn: Container (docker, lxc) related tests.
cve: CVE related tests.
Specific tests can be used with their IDs (i.e.: usr020,sud)
-e PATHS Comma separated list of paths to exclude. This allows you
to do faster scans at the cost of completeness
-p SECONDS Time that the process monitor will spend watching for
processes. A value of 0 will disable any watch (default: 60)
-S Serve the lse.sh script in this host so it can be retrieved
from a remote host.
Também disponível em vídeo webm




One-liners de execução direta
bash <(wget -q -O - "https://github.com/diego-treitos/linux-smart-enumeration/releases/latest/download/lse.sh") -l2 -i
bash <(curl -s "https://github.com/diego-treitos/linux-smart-enumeration/releases/latest/download/lse.sh") -l1 -i
Sinta-se à vontade para me pagar uma cerveja se este script foi útil :)
₿: 1DNBZRAzP6WVnTeBPoYvnDtjxnS1S8Gnxk