Jump to content
php.lv forumi

Recommended Posts

Posted (edited)

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
Posted

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

Posted (edited)
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
Posted

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 ;)

Posted (edited)

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
Posted
...

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 ;)

Posted
tai /php/ direktorijai jābūt chmod 777

un tai apakšdirektorijai php/orders arī chmod 777

×
×
  • Create New...