Jump to content
php.lv forumi

Jautaajums par CHMOD


saimon_k
 Share

Recommended Posts

Haidi - hou.

Pašmācos PHP un esmu ticis līdz Storing Data txt failos.

 

Lieta tāda - ja es uz servera manuāli novietoju txt failu un uzlieku tam CHMOD 777, viss iet.

Funkcijai fopen ("$DOCUMENT_ROOT/php/orders/orders.txt", 'a'); direktorijā orders būtu jāizveido jauns fails gadījumā ja tāda nav. Tomēr tas nav iespējams, PHP bļauj, ka nav permišona.

Cik saprotu tad CHMOD var uzlikt arī direkorijai, bet SmartFTP, ko lietoju man to neļauj. Vai tam par iemeslu būtu manas jūzera neesošās privilēģijas vai settingi drošības apsvērumu dēļ no hostētāju puses?

 

Varbūt kāds var pastāstīt par CHMOD, flat failu (ne)drošību un reāliem draudiem, ko tie var izraisīt? Būtu ļoti pateicīgs

Edited by saimon_k
Link to comment
Share on other sites

Pamēģini no php chmod($dir,0777);

Varbūt, ka uzliki modu caur ftp jūzeri viņam pašam, bet php caur apachu vai tml iet ar citu lietotāju/grupu.

 

Nedrošības: ja hosķings iet vairākiem lietotājiem vienā grupā, viņiem varētu būt piekļuve taviem failiem - un varbūt varēs dzēst tos. Tāpatās ja haķieris idomā kā norādīt kādai kodā ierakstītai fopen() operācijai kauko citā failā, nekā tas kodā tas ir paredzēts, att. tiesības uz to failu varētu procesu atturēt. Dažādu manipulāciju veidā haķieris varētu uzaugšlādēt "parastu" failu, un ja tam pēc nokl. ies +x (execute), iespējams varēs izpildīt ts. mailicious kodu

Link to comment
Share on other sites

Pamēģini no php chmod($dir,0777);

12558[/snapback]

Īsti nesapratu. Vai nepaskaidrosi siikaak?

 

Dažādu manipulāciju veidā haķieris varētu uzaugšlādēt "parastu" failu, un ja tam pēc nokl. ies +x (execute), iespējams varēs izpildīt ts. mailicious kodu

12558[/snapback]

Vai šo nevar atturēt ar kaut ko liidziigu fgetss(), kas izsleedz jebkaadu PHP/HTML tagu ierakstiishanas iespeejamiibu?

 

UPD

unlink() arii nevaru piedabuut straadaat, lai gan sorce file CHMOD = 777!!!

Edited by saimon_k
Link to comment
Share on other sites

Va tik Tu netaisies mainīt tās saucamās public_html direktorijas tiesības?

Normāli hosteri tev to var neļaut. + var būt (jābūt) ieslēgta PHP safe mode.

PHP chmod atšķiras no FTP chmod. Direktorijām chmod vajag likt no FTP. A failiem var ar php vo:

<?php if(!file_exists('php/orders/orders.txt')){
touch('php/orders/orders.txt');
chmod('php/orders/orders.txt',0777);
}
?>

Ja tas kods iet, tad viss norm ;)

nevaig tur nekādu $DOCUMENT_ROOT ;)

Link to comment
Share on other sites

Va tik Tu netaisies mainīt tās saucamās public_html direktorijas tiesības?

 

Jaa, taa sasnaak. Tutorialii tiek mineets, ka jaaizmanto $DOCUMENT_ROOT/../orders/ folderis, taatad above public_html, bet FTP klients neļauj man shaadu direktoriju radiit. shajaa vietaa staav arii sub-domeina folderi kopaa ar taadaad direktorijaam kaa cgi-bin, interpreters, perl un html, kas ir $_SERVER['DOCUMENT_ROOT']. (ftp.domain.lv/var/www/html)

 

PHP chmod atšķiras no FTP chmod. Direktorijām chmod vajag likt no FTP.

 

chmod.gif

 

Kā redzam CHMOD nav iespeejams

Edited by saimon_k
Link to comment
Share on other sites

...

Izskatās, ka tas ir serveris.lv hostings ;)

Tas /var/www/html/ ir tas tavs lietotaja web roots :)

Izskatās, ka tā direktorija php Tev tomēr stāv /var/www/html/php

chmod.png

 

Es tik domāju priekškam ārpus /var/www/html jātur tas txt fails :/

Var tak ar .htaccess noliegt tiešo piekļuvi *txt failiem

+ uz serveris.lv nevar(es tā vismaz domāju) lasīt citu lietotāju failus ;)

Link to comment
Share on other sites

 Share

×
×
  • Create New...