webForumDet fria alternativet

spärra inkludering

9 svar · 439 visningar · startad av Picklezz

PicklezzMedlem sedan jan. 2002414 inlägg
#1

Finns det nått sätt att spärra PHP så att man inte kan inkludera filer över /usr/home/wwwroot...
så om en fil ligger i /usr/home/wwwroot/user1 så skall man bara komma åt filer i /usr/home/wwwroot/user1 och under ( /usr/home/wwwroot/user1/folder1, /usr/home/wwwroot/user1/folder2) och så vidare
Me om du försöker komma åt /usr/home eller /usr/home/gabriel eller /root eller / eller /etc eller någon anna så skall det inte funka...`???

BatboyMedlem sedan jan. 20001 006 inlägg
#2

Om du kan ändra i php.ini själv (din egen server) så är det inlude_path som gäller.

Om inte så kan du alltid prova med ini_set.
ini_set("include_path", ".");

PicklezzMedlem sedan jan. 2002414 inlägg
#3

men om jag ändrar den så går det fortfarande att komma åt filer i andra mappar...såsom /etc m.f.l ...

PicklezzMedlem sedan jan. 2002414 inlägg
#4

ingen som vet?

BatboyMedlem sedan jan. 20001 006 inlägg
#5

F'låt.. det är jag som ljuger för dig :r

Det är open_basedir du ska använda, inget annat.

PicklezzMedlem sedan jan. 2002414 inlägg
#6

fungerar inte särskilt bra....

<VirtualHost *>
    DocumentRoot /www/192.168.0.1
    ServerName 192.168.0.1
    ErrorLog /var/log/httpd/192.168.0.1-error_log
    CustomLog /var/log/httpd/192.168.0.1-access_log common
    php_value open_basedir /home/wwwroot/192.168.0.1/
</VirtualHost>

har jag lagt till i httpd.conf

sen har jag denna fil (/home/wwwroot/192.168.0.1/):
<?
include("/usr/local/etc/php.ini");
?>
och då tillåter den att öppnas...

BatboyMedlem sedan jan. 20001 006 inlägg
#7

Du måste använda:
php_admin_value open_basedir /home/wwwroot/192.168.0.1/

PicklezzMedlem sedan jan. 2002414 inlägg
#8

går fortfarande att komma åt andra filer...

PicklezzMedlem sedan jan. 2002414 inlägg
#9

använde php_admin_flag så funka det men nu har jag följande fel:

Warning: open_basedir restriction in effect. File is in wrong directory in Unknown on line 0  

Warning: Failed opening '/www/192.168.0.1/index.php' for inclusion (include_path='.:/usr/local/lib/php') in Unknown on line 0

och då har jag ändrat index.php till:

<?
echo "HEJ";
?>
PicklezzMedlem sedan jan. 2002414 inlägg
#10

har sökt lite och sett att det är fler som har samma problem...men inte hittat nån lösning??

130 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)