Newsgroup: it.comp.www.php
Titolo: chmod failed: Operation not permitted

Ciao a tutti,
Il mio problema è quello del subject:
chmod failed: Operation not permitted
Ho provato anche con exec e shell_execute ma nulla da fare.
Il php.ini ha tutte le configurazioni del caso safe_mode=off, non blocco
nessun comando, sono tutti eseguibili ma nulla da fare.
La directory ha 777 nn capisco da dove arrivare questo warning?!?!?
Grazie in anticipo a tutti..

quoto quello che dice ConsDev, perché quotare è divertente!!

non puoi fare chmod di un file non tuo!
it.comp.os.linux.iniziare
e se sei in hosting, probabilmente hai anche delle restrizioni a livello di 
mask. (non puoi settare come eseguibile un file arbitrario su una macchina 
altrui!)
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/philosophy/free-sw.it.html

 ciao
Grazie x la velocità :)
Devo modificare i permessi dei file che "arrivano" tramite ftp. Quando
vengono uplodati nn hanno i permessi e da php nn posso aprirli e
lavorarci,questo è il mio problema...
Ho pensato di usare chmod per settere i permessi neccessari allo script per
"lavorarci"..quale potrebbe essere la soluzione?
Grazie punkarusso...

 per "lavorarci"..quale potrebbe essere la soluzione?
lavorarci in che senso??
se intendi 'solo' rw, puoi leggerli in php e riscriverli con un altro nome.
sempre che l'hoster ti lasci creare files nuovi...
ciao!
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/press/2002-04-11-ms-patent.html

 ciao!
Scusami x nn averti spiegato la situazione...:)
Nella dir ftp hanno settato i permessi 4xx una volta uplodati (file xml).
Dal mio script vengono "lavorati" da metodi di una classe java che valida e
trasforma in html tramite un template html e l'xls.
I file sono miei e ho bisogno di settare i permessi a 755 per eventuali
"correzzioni" dei file nn validati..
Questa č la mia situazione...quello che nn capisco č come faccio a settare
questi permessi, modificanfo i settaggi dell'ftpd (nn vorrei) o č possibile
da script?
Grazie per l'aiuto...:)

 "correzzioni" dei file nn validati..
chi e' il proprietario del file che ti arriva con 4xx? se non se tu, 
c'e' poco da fare...
p.s. comunque per leggere e scrivere basta un chmod 644.
p.p.s. correzioni, con una *z* sola :)
-- 
Fox Mulder
...the truth is out there

 possibile da script?
chmod 644
se non va, leggilo con PHP e riscrivilo sotto falso nome...
se non va, non puoi scrivere e basta!
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://php.dopoil.com/faq.php


Risolto tutto modificando questa riga nel file inetd.conf e facendo
restartare inetd
ftp  stream tcp nowait root /usr/sbin/tcpd  in.ftpd -l -u000
I file vengono uplodati con i permessi corretti bisognava lavorare sulla
umask

 

occhio: 000 -> 777
meglio 022 -> 644
o 077 -> 600
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/philosophy/gif.html

 altrui!)
Mi spieghi meglio come si fa ad impostare la mask?
Sapevo che erano i permessi di default del file quando viene creato, ma se
il file lo crea l'utente può cambiarseli (basta avere accesso in scrittura
del proprietario)... o no?
LAMASE

 umask
sconsigliatissimo. in questo modo crei file con permessi di rwx per 
tutto il mondo, molto pericoloso.
poi, cos'e' questa mania di fare chmod 777 quando non funziona qualcosa? 
a volte basta semplicemente capire chi scrive cosa e settare 
opportunamente un 644 o al massimo un 664.


 del proprietario)... o no?
è vero che l'utente può modificare un file che ha creato, se ha i permessi.
se il file è suo, 'potrebbe' modificare i permessi, solo che in questo 
caso, il chmod non è permesso a livello di sistema (hoster preveniente).
allora, basta settare l'umask a 0xx per creare il file con permesso di 
scrittura (a livello di inet).
come si nota, mettere la mask a 022 fa creare i files a 644, questo perché 
il bit di esecuzione, per motivi di sicurezza, va impostato 'dopo'.
se ci pensi, un file non è dannoso finché non è eseguibile!
a questo punto, l'hoster è sicuro che tu non possa eseguire una shell 
facendo un upload ftp e poi un exec da PHP (salvo smentite).
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/press/2002-04-11-ms-patent.html


umask sono, come dici giustamente, i permessi che ogni file possiede 
quando viene creato da un utente. la umask *ragiona* inversamente, 
ovvero umask 000 significa chmod 777.
se sei il proprietario del file, puoi farci quello che ti pare (purche' 
non sia in una directory dove non hai permessi di scrittura).


quoto quello che dice Fox Mulder, perché quotare è divertente!!

se setti umask 000 e poi fai
$ > pippo.txt
vedrai che questo ha permessi 666, non 777. per una dir è diverso.
(è sbagliato comunque, 666. in questi casi sarbbe meglio 600. ma se la dir 
in cui ti trovi non ha x per others e group, è uguale.)
ciao! :-)
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.efluxa.it/netiquette/dis.html

 facendo un upload ftp e poi un exec da PHP (salvo smentite).
la shell verrebbe comunque eseguita con i permessi di php 
(presumibilmente nobody), quindi farebbe pochi danni. o forse intendi altro?


 punkarruso wrote:

altro. se fai un upload di un compilato C (metti che conosci bene 
l'architettura del server) e lo metti eseguibile a 777, il PHP (purtroppo) 
lo esegue.
se questo eseguibile contiene codice malizioso, son cazzi!
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://php.dopoil.com/faq.php

 in cui ti trovi non ha x per others e group, è uguale.)
esatto. un 644 di partenza andrebbe comunque bene se non si tratta di 
file *sensibili* :)


 se questo eseguibile contiene codice malizioso, son cazzi!
ok, anche se il compilato in C viene comunque eseguito con i permessi 
dell'utente che fa upload, e quindi PHP anche se esegue non crea troppi 
pasticci...


 se questo eseguibile contiene codice malizioso, son cazzi!
anche con il safe_mode?
<TASTIERA_COLLEGATA_AL_CERVELLO>
beh, il safe mode agisce sul php, limita al massimo l'esecuzione di comandi
di sistema, la lettura/scrittura di files, ma qui si esegue un file che non
rientra nelle restrizioni...
si potrebbe sorpassare il limite dell'esecuzione di alcuni comandi caricando
i binari con l'FTP (tipo cat, rm...)... a meno che non sia impostata la
cartella nella quale trovare i comandi e che questa sia inaccessibile in
scrittura...
oppure sto dicendo una manica di caxxate?
</TASTIERA_COLLEGATA_AL_CERVELLO>
LAMASE

 pasticci...
pensa solo a un attacco DoS. bastano un paio di loopponi ben 
studiati e ti frulli tutto il carico macchina, se non è stato fatto un buon
shaping delle risorse di sistema (difficile ma possibile).
+ chissà quante cose che non vengono in mente subito!
:-)
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://groups.google.com

 shaping delle risorse di sistema (difficile ma possibile).
mmhmm, non male! effettivamente un DoS lo ottieni piu' facilmente. 
ebbravoilnostrocracker :))))
