BatboyMedlem sedan jan. 20001 006 inlägg Förhoppningsvis någorlunda rätt forum..
Om exempelvis ett PHP-script är skrivet lite "oförsiktigt" skulle man kunna skriva visa.php?sida=../../../../etc/passwd (där sida var tänkt att innehålla lite webbsaker), vilket resulterar i att filen passwd visas i webbläsaren.
Hur förhindras detta?
Httpd körs som root, är det vettigt? Om inte, hur ändrar man det?
/j
På de flesta (alla?) Linuxsystem används "shadow passwords". Lösenorden lagras inte i /etc/passwd, utan i /etc/shadow. Fast om httpd körs som root spelar det ju ingen roll... Och nej, det är inte vettigt att köra httpd som root. Ta en titt i httpd.conf, det finns något direktiv som gör att man kan ändra vilken användare och grupp som httpd körs som (vanligtvis använder man användare: nobody och grupp: noboby).
------------------
<[MK]> "bönderna kämpar för bredband"
BatboyMedlem sedan jan. 20001 006 inlägg I httpd.conf står User httpd och Group httpd.
Om jag tittar vilka processer som körs finns några httpd under användare httpd, men även ett par under användare root. Hur kan det komma sig?
/j
JoakimEMedlem sedan feb. 20003 257 inlägg på min redhat burk körs Apache med användaren apache, gruppen apache enligt httpd.conf
------------------
Maximalt skydd för privatlivet - minimalt skydd åt offentligheten
BatboyMedlem sedan jan. 20001 006 inlägg För att köra httpd på port <1024 krävs tydligen att demonen startas som root, därav den processen.
Det förklarar dock inte varför jag kan skriva visa.php?sida=../../../../etc/httpd/conf/httpd.conf och få upp hela rubbet i min webbläsare.
/j
BatboyMedlem sedan jan. 20001 006 inlägg Löste det genom att lägga till "open_basedir = ." i php.ini, script kan numera inte inkludera filer från andra mappar än den scriptet ligger i.
/j