Problem med "Directory Traversal"

Trädvy Permalänk
Medlem
Registrerad
Mar 2003

Problem med "Directory Traversal"

Hejsan.
Jag har haft min hostingtjänst igång i ca ett halvår eller något sådant och det har funkat väldigt bra. Har varit medveten om Dir traversal problemet men inte kommit på något sätt att lösa det.
För inte så längesedan så var det en användare som uppmärksammade mig om detta och då kännde jag att det var dags att ta tag i det.

Lite info om Directory Traversal

Jag har alla användare i en mapp, /var/www/htdocs/ och mappnamnet anger också subdomänen så om någon surfar in på http://www.apakossa.org/ så kollar apache om det finns någon mapp under /var/www/htdocs/www.apakossa.org/ gör det det så visar den sidan annars så visas "You don't have permission to access / on this server."

Men, eftersom att jag har ftp-användarna i en mysql-databas så är det samma UID och GID på alla användare.

Problemet är att om jag skapar en användare som heter tex hack, så får jag en mapp som heter /var/www/htdocs/hack.apakossa.org och kan då ganska enkelt hoppa ur min mapp och gå in till tex www.apakossa.org med php.

jag har kikat lite på open_basedir men har inte kommit fram till någon bra lösning förutom att skriva följande i httpd.conf

<Directory /var/www/htdocs/hack.apakossa.org> php_admin_value open_basedir "/var/www/htdocs/hack.apakossa.org" </Directory>

Och det funkar finfint, bara det att det blir jobbigt att fylla i hela tiden någon lägger till en ny användare, även om man gör det med php så blir det ett extra steg som kan gå fel.

Är det någon som har några tips på hur man kan lösa problemet, kanske med rättigheter på mapparna osv? Hur gör alla professionella webhotell osv?

Tacksam för svar
mvh dean

Edit: kör med Slackware 10.1, php 4.3.10 och Apache 1.3.33 om det spelar någon roll

"With a rubberduck one's never alone"