A saída de uname
não foi projetada para ser enigmática; O motivo pelo qual ele não mostra o que você considera informações úteis é que seu objetivo é exibir a identificação da máquina e do kernel, mas não a identificação do sistema operacional. Você ainda pode adivinhar geralmente a distribuição do Linux, porque as pessoas que compilam kernels tendem a incluir algumas informações no nome do lançamento do kernel ( uname -r
) ou versão ( uname -v
) para que as pessoas possam dizer se você está executando um kernel oficial , e qual. Por exemplo, aqui, .el
é usado pelo RHEL e a versão contém a data de compilação.
Não há identificação do sistema operacional POSIX , porque a maioria dos unices tem um mapeamento um-a-um entre o kernel versões e versões do sistema operacional. Este não é o caso do Linux, onde o mesmo kernel é compartilhado entre múltiplas distribuições, e até mesmo entre múltiplos sistemas operacionais ( GNU / X11 / Apache / Linux / TeX / Perl / Python / FreeCiv , comumente conhecido como" Linux ", mas também Android e outros sistemas menos conhecidos ).
A Base Padrão do Linux especificou um lsb_release
que retorna informações sobre a distribuição. lsb_release -ir
ou lsb_release -d
mostra as informações de distribuição que você procura.
A maioria das distribuições Linux tem o comando lsb_release
nos dias de hoje. Se o seu não, não é para fins de segurança: não faria sentido tentar esconder a distribuição; Se você pode ver arquivos no sistema, você pode dizer de todas as formas (examinando pacotes instalados, comparando arquivos de sistema com valores conhecidos e assim por diante). A única informação que seria especificamente útil para um invasor é saber quais buracos de segurança existem, e isso não é realmente uma função da distribuição, é uma função de quais atualizações de segurança foram ou não aplicadas (o que, novamente, pode ser visto em de todas as formas - incluindo o lançamento do exploit e esperamos que funcione, então não faria sentido tentar escondê-lo). A falta de lsb_release
seria devido à falta de padronização: cada distribuição armazena seu número de versão de uma maneira diferente.