PHP ja Safe Mode

Mureakuha

Loikkaa: valikkoon, hakuun

Useimmiten www-sivutilalla ajetaan PHP-tulkkia ns. Safe mode on -tilassa. Safe mode on nimensä mukainen eräänlainen turvallisuustoimenpide, jolla pyritään turvaamaan se, että toinen käyttäjä ei koskisi toisen käyttäjän tiedostoihin. Toisaalta joskus tämä aiheuttaa ongelmia käyttäjille. Suurimmat ongelmat yleensä ovatkin tiedostonkäsittelyssä, kuvaup -palveluissa jne.

Sisällysluettelo

Rajoitukset

Safe modessa PHP-tulkki ei pysty käsittelemään toisen käyttäjätunnuksen tiedostoja. Ongelma onkin PHP-tulkin käyttäjätunnuksessa, koska sitä ajetaan yleensä www-data / www / httpd -tunnuksilla ja käyttäjä onkin joku mattimeikalainen. Tällöin tulkki ei voikaan koskea kyseisen henkilön tiedostoihin, ellei käyttäjä ole antanut todella laajoja kirjoitus- ja lukuoikeuksia. Myöskin tulkki joka kerta käynnistyessään ottaa uuden uid:n, jolloin tulkki luulee kuvaupissa ladattua kuvaa jonkun toisen käyttäjätunnuksen tiedostoksi.

Rajoituksien kiertäminen

Safe moden rajoituksien kiertäminen lienee helpointa ajamalla PHP-tulkkia CGI-modissa. Rajoituksen pystyy myös kiertämään omilla kirjastoilla (esimerkiksi dl()-funktiolla).

Safe mode -tilan tarkistaminen

<?PHP
if (ini_get('safe_mode')) { 
// safe mode  true 
}else {
// safe mode false 
}
?>

PHP6

Safe mode poistetaan PHP6-versiossa, koska se luo virheellisen kuvan turvallisuudesta.

Aiheesta muualla

Henkilökohtaiset työkalut