'RUID', 'EUID' e 'setuid bit'

0

Estou tentando entender RUID , EUID e setuid bit stuff. Aqui estão minhas perguntas no tópico:

  1. No Como para iniciar (ou encontrar) um processo com RUID diferente do EUID? questionar a resposta de Gilles:

    It's only setuid executables that start with the effective UID set to the owner of the executable while the real UID remains the real UID of the invoking process

    O que significa the invoking process ? Se estou certo de que, no caso de, e. comando passwd executado por dizer usuário Bill com id = 1000 the invoking process mencionado acima será apenas o usuário Bill?

  2. Estou certo de que quando tomamos alguma ação em um arquivo dentro de um executável (por exemplo, escrever para esse arquivo), o sistema verifica se é permitido fazer isso, verificando EUID desse executável com as permissões de arquivo?

    Por exemplo temos o executável abc ( setuid bit não definido) que grava alguns dados no arquivo 1.txt com -rw-r--r-- permissões. O usuário da conta (UID = 1000) executa abc . Agora porque abc EUID = 1000 (não setuid bit set) e 1.txt permissões são -rw-r--r-- a operação de gravação é recusada pelo sistema porque EUID = 1000! = 0?

por Mulligan 15.11.2016 / 12:47

1 resposta

0

1) Ele diz the invoking process porque o comando passwd no seu exemplo é iniciado por um shell (bash, csh, etc) ou um programa executando com seu ID.

2) Sim, você está certo. Arco de permissões verificado com o ID efetivo do processo.

    
por 15.11.2016 / 22:37