PDA

Visualizza la versione completa : Problema con suid


jann
16-04-2004, 12:09
Sto realizzando uno script che scrive nella directory cron.

drwx------ 2 root root /var/spool/cron

Questo script non viene lanciato da root ma da un altro utente che non ha i permessi necessari per scrivere in cron. Pensavo di risolvere assegnando permessi particolari allo script, con un suid nello specifico.

-rwsr-sr-x jann sviluppo script.sh

Però anche in questo modo quando tento di scrivere in cron ricevo questo errore:

touch: creating `/var/spool/cron/nomefile': Permission denied

Qualche suggerimento?

Grazie!

Ikitt
16-04-2004, 12:17
Originariamente inviato da jann
permessi particolari allo script, con un suid nello specifico.

-rwsr-sr-x jann sviluppo script.sh

Però anche in questo modo quando tento di scrivere in cron ricevo questo errore:

touch: creating `/var/spool/cron/nomefile': Permission denied

Qualche suggerimento?



Usa sudo, gli shell script non onorano il bit suid.

jann
16-04-2004, 12:53
Il problema è che se utilizzo sudo viene richiesta la password e io non vorrei scriverla da nessuna parte.

Infatti non sono io a lanciare lo script, questo viene lanciato da un'altra applicazione che non gira come root.


Ps. Ho provato anche con uno script perl ma questo è il risultato

Can't do setuid


Come potrei aggirare il problema? sto esaurendo le idee....
pensavo di modificare i permessi di /var/spool/cron ma non vorrei farla tanto sporca :dhò:

wierzbowsky
16-04-2004, 12:55
Guarda che puoi settare sudo in modo che non ti chieda la password.

jann
16-04-2004, 13:01
Crerei però un problema di sicurezza sul sistema perché chiunque lanciasse sudo si ritroverebbe con i diritti di root.
Sarebbe un po come mettere la password in chiaro sullo script a questo punto.

Ikitt
16-04-2004, 13:06
Originariamente inviato da jann
Crerei però un problema di sicurezza sul sistema perché chiunque lanciasse sudo si ritroverebbe con i diritti di root.


Nada. Puoi limitare l'esecuzione senza pwd con privilegi di root ad un ben preciso set di comandi.

osiryx
16-04-2004, 13:29
man sudoers

jann
16-04-2004, 13:36
Una volta che faccio leggere e scrivere però posso fare tutto... anche cambiare la configurazione di sudo.

Se non si era capito io devo schedulare, attraverso un altro applicativo, delle procedure sul server. (credo di non essere stato proprio chiarissimo :quipy: )

Ho risolto evitando di scrivere direttamente nella cartella

/var/spool/cron/

Mi creo il file in una directory temporanea e passo il file in input al crontab che poi per cavoli suoi si riscrive il file, lui il suid lo può fare :)


grazie :)

jann
16-04-2004, 13:37
Originariamente inviato da osiryx
man sudoers

grazie :)

b00malek
16-04-2004, 13:39
Lo script appartiene a root?(Senno' il suid non ti serve a un cazzo)

Loading