Ainda bem que isso nao funciona... setuid, setgid sao por binarios, um shell script nao eh um binario, é soh uma lista de instruçoes a serem executadas. As instruçoes normalmente sao binarios ou funcoes...
Imagina nesse teu caso, se o suid funcionasse e fizessemos: $ alias echo="cat /etc/shadow #" $ ./teste.sh Pronto, transformamos o teu simples echo Ola em um cat /etc/shadow. E se isso fosse executado como root, teriamos o hash da senha de todos usuarios locais, inclusive o root. Ou pior, alias echo="echo root:novasenha | chpasswd", pronto, redefinimos a senha de root. Se quer criar um setuid, faça um simples programa em C que chame um exec* dos comandos, mas setuid's sao sempre complicados e requerem muita atençao no codigo. Mesmo em um codigo em C fazendo uso do system (e se nao me engano das exec's()), a manipulaçao do PATH (ordem de pesquisa), quando se cuida do PATH absoluto ainda é possivel manipular o IFS (me lembra aquele desafio chines). Espero ter mantido "on-topic". -- Flávio do Carmo Júnior aka waKKu 2009/7/17 andredeo <[email protected]> > > > Pessoal Boa Tarde, > > Depois de quebrar a cabeça, googlar, ver o histórico da lista... (Enfim fiz > a lição de casa), peço ajuda.... > > To tentando montar um exemplo de uso do setuid. Vejam a lógica da coisa: > * - Criei um arquivo teste.txt (touch /teste.txt) > * - Um script tosco: > #!/bin/bash > > echo "Ola" >> /teste.txt > > * - Como root executo o script blza; > * - Como usuario ele diz que o teste.txt não pode ser escrito, perfeito; > * - chmod u+s teste.sh > * - ls -lasF teste.sh > 4 -rwsr-xr-x 1 root root 38 Jul 17 15:10 teste.sh* > * - Ficou a permissão perfeita; > * - Em tese quando eu chamar este script logado com usuario, ele sera > executado como root e eu vou conseguir escrever no arquivo; MAS: > # su - linux > $ cd / > $ ./teste.sh > ./teste.sh: line 3: /teste.txt: Permissão negada > > Idéias de como usar Shell Script + bit setuid??? > Algum outro exemplo para que eu possa testar??? > > Detalhe que, imagino que tenha reproduzido o mesmo caso que consta aqui: > http://www.dicas-l.com.br/dicas-l/19970419.php > > Abraço, > Déo > > > [As partes desta mensagem que não continham texto foram removidas]
