Há um servidor ao qual tenho acesso (login e senha). Ao fazer login como este usuário neste servidor, é descoberto que meu usuário não está logado em sudoers
. Nenhuma informação adicional está disponÃvel, eu só tenho um usuário.
Preciso ler /tmp/somefolder/file
neste servidor.
/tmp/somefolder
tem permissões drwxr-xr-x
e /tmp/somefolder/file
tem permissões -rw-r-----
.
Estou em algum lugar no sistema, não está claro qual diretório.
Eu não possuo /tmp/somefolder
e não estou no grupo que o possui, da mesma forma eu não possuo /tmp/somefolder/file
e não estou no grupo que o possui. Como posso visualizar o conteúdo de /tmp/somefolder/file
?
Neste caso, como você não é nem proprietário nem parte do grupo, seus direitos de acesso são determinados pelo conjunto final de permissões (
d......r-x
). Elas permitem que você acesse o diretório.As mesmas regras se aplicam: como você não é nem proprietário nem parte do grupo, seus direitos de acesso são determinados pelo conjunto final de permissões (
-......---
). Nesse caso, eles não lhe concedem acesso ao arquivo. Você não pode lê-lo, copiá-lo, executá-lo ou de qualquer forma fazer qualquer coisa com o arquivo.Como bônus, se o diretório pai (
/tmp/somefolder
) tivesse concedido permissão de escrita , você poderia ter deletado o arquivo, ou movido/renomeado dentro do mesmo sistema de arquivos. Mas você ainda não conseguiria lê-lo.Como outro bônus, pode haver uma Lista de Controle de Acesso (ACL) no diretório ou no arquivo, e isso pode lhe conceder permissões não mostradas na máscara de permissões padrão usuário-grupo-outro.
Você pode tentar consultar o arquivo /etc/passwd para usuários locais e /etc/group para descobrir quais usuários têm quais direitos. E usuários de aplicativos talvez.
Exemplo 1: Se você tiver o grupo "docker" no seu usuário, você pode fazer uma elevação de direitos com este comando:
Então você pode visualizar seu arquivo em /host/tmp/somefolder/file
Fonte: https://book.hacktricks.xyz/linux-hardening/privilege-escalation/docker-security/docker-breakout-privilege-escalation
Exemplo 2 : você pode verificar o comando com NOPASSWD (sem prompt de senha) nas pastas sudoers:
Com algo assim no arquivo sudoers:
Você pode executar chmod como quiser. Ou outro exemplo:
Você pode abrir um terminal através deste comando: sudo apt-get update -o APT::Update::Pre-Invoke::= /bin/bash
Fonte: https://www.hackingarticles.in/linux-for-pentester-apt-privilege-escalation/