Como alterar a permissão do arquivo / proc / self / pagemap?

1

Eu quero alterar a permissão do arquivo de mapa de página para 755 ou 744 usando o sudo chmod. Mas o comando está jogando erro dizendo operação não permitida. A motivação é permitir que um usuário leia o arquivo do mapa de página (por conta própria) sem dar acesso ao sudo.

Quando o usuário tem acesso sudo está funcionando, ele permitiu ler o arquivo pagemap. Mas eu quero evitar que o usuário tenha acesso ao sudo, mas deve permitir que ele leia este arquivo pagemap sozinho.

    
por ANTHONY 18.02.2017 / 09:10

2 respostas

1

O kernel do Linux requer sudo para /proc/<pid>/pagemap desde 4.0

Isso está documentado em: link

   Since Linux 4.0 only users with the CAP_SYS_ADMIN capability can get PFNs.
   In 4.0 and 4.1 opens by unprivileged fail with -EPERM.  Starting from
   4.2 the PFN field is zeroed if the user does not have CAP_SYS_ADMIN.
   Reason: information about PFNs helps in exploiting Rowhammer vulnerability.

Em que CAP_SYS_ADMIN significa basicamente "executar como sudo " ou alternativamente:

sudo setcap cap_sys_admin+ep program_that_uses_pagemap
./program_that_uses_pagemap

Tenha em mente que /proc é um sistema de arquivos virtual e, portanto, o kernel do Linux pode impor permissões adicionais ou até mesmo alterar arbitrariamente os resultados para não-raiz, como acontece aqui por razões de segurança, definindo PFNs como zero.

    
por 04.08.2017 / 07:30
0

você pode tentar alterar as permissões no arquivo /etc/init/mounted-proc.conf :

script
    chmod 0444 "${MOUNTPOINT}"/self/pagemap
end script

proc é um sistema de arquivos virtual gerado pelo kernel. Se você não pode mudar a permissão, isso não é permitido pelo seu kernel e você só pode resolvê-lo alterando o kernel.

    
por 18.02.2017 / 09:33