Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Curso de Inglês Online

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Permissões de arquivos e diretórios em Sistemas Unix (setgid, setuid, sticky)

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 06 de Maio de 1997

A última linha de defesa contra invasores do sistema são as permissões oferecidas pelo sistema. Cada arquivo ou diretório possui três grupos de bits de permissão a ele associados: um grupo para o usuário ao qual o arquivo pertence, um grupo para os usuários do grupo ao qual o arquivo está associado e um grupo para todos os demais usuários. Cada grupo contém três grupos de bits idênticos que controlam:

Acesso de leitura(read)

Se este bit estiver ligado, o arquivo ou diretório possui acesso de leitura. Em se tratando de um diretório, esta permissão permite a um usuário ver o conteúdo de um diretório mas não lhe permite acessá-lo.

Acesso de gravação (write)

Se este bit estiver ligado, o arquivo ou diretório pode ser modificado. Em se tratando de um diretório, a permissão de escrita implica a capacidade de criar, apagar ou renomear arquivos. Note que a permissão para remover um arquivo não é determinada pelas permissões do arquivo mas sim pelas permissões do diretório que o contém.

Acesso de execução (execute)

Se este bit estiver ligado, o arquivo ou diretório pode ser executado (pesquisado). No caso de um diretório, a permissão de execução implica que os arquivos nele contidos podem ser acessados

Além destas permissões, existe um quarto bit que se ligado atribui as seguintes propriedades aos arquivos e diretórios:

setuid

Este bit, se ativado no grupo de permissções do dono do arquivo, indica que todos os que executarem este programa o estarão fazendo com os privilégios do proprietário do arquivo. Por exemplo, o programa sendmail é setuid root, o que lhe permite gravar arquivos na fila de mensagens do sistema, o que é vedado a usuários normais. Este bit não possui significado em arquivos não executáveis

setgid

Este bit atua da mesma forma que o setuid bit, com a diferença que o programa será executado com as permissões do grupo ao qual pertence

sticky

O sticky bit informa ao sistema operacional a atuar diferentemente com relação à imagem executável do arquivo. É remanescente de versões antigas do Unix e possui pouco uso hoje. Diretórios que possuem modo 777 que têm este bit ligado não podem ser removidos (/tmp por exemplo).

Shell scripts que possuem os bits setuid ou setgid ligados não são seguros, não importa quantas precauções tenham sido tomadas ao escrevê-los. Tais scripts nunca devem ser permitidos em qualquer sistema Unix.

Nas versões mais recentes de sistemas Unix foi acrescentado um novo significado ao sticky bit quando aplicado a diretórios. Quando este bit é ativado em um diretório, usuários não podem apagar ou renomear arquivos pertencentes a outros usuários. Isto é tipicamente útil no caso de diretórios como /tmp. Normalmente o diretório /tmp possui acesso universal para gravação, permitindo que qualquer usuário remova arquivos pertencentes a qualquer outro usuário. Ativando o sticky bit no diretório /tmp, os usuários podem remover apenas seus próprios arquivos. Para ativar o sticky bit em um diretório, use o comando:

  # chmod o+t /tmp

ou

  # chmod 1777 /tmp

Ao emitirmos o comando:

  # ls -ld /tmp
  drwxrwxrwt   4 bin      bin         3584 May  5 14:17 /tmp

O caracter "t" em drwxrwxrwt indica que o sticky bit deste diretório está ligado.

Ao se criar um arquivo normalmente todas as permissões são ativadas. Como isto raramente é o desejado, o valor do umask é usado para modificar o grupo de permissões com as quais um arquivo é criado. Ou seja, da mesma forma com que o comando chmod especifica quais bits devem ser ligados, o comando umask especifica quais bits devem ser desligados.

  umask 022

Para impedir a criação acidental de arquivos pertencentes ao superusuário com permissão 777.

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.90/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 2.9 /5 (1359 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script

Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Asterisk na Prática 2ª Edição