gulli:board Logo

Anzeige


  Antwort
big.teejay
Master of Kataster
 
Registrierungsdatum: Mar 2001
Ort: Hamburg
Beiträge: 222
Unhappy Verzeichnisse auf einem Webserver scannen ?

Hallo alle zusammen,

es geht um eine Sicherheitsfrage, die wohl jeden Webmaster hier betrifft:

Ist es möglich, Verzeichnisse auf einem Webserver zu scannen - obwohl eine gültige Defaultseite - also eine index.htm (oder vergleichbares) - existiert ?
Mich interessiert dies speziell bzgl. Apache 2.0.x auf Linux.
Kann ein Angreifer so die Inhalte von Dateien lesen, die sich im Dokumentenverzeichnis meines Werbservers (oder in Unterverzeichnissen) befinden, die ich aber über den "normalen" Weg über die index.htm (oder index.php etc.) und die darin angegeben Links nicht zur Verfügung stelle ?

Klar - zurstmal gibt es in der httpd.conf einen Schalter, der Directory Scans unterbindet, oder ? Aber der kommt doch eh erst zum Tragen, wenn keine Default-Seite wie index.htm etc. vorhanden wäre ?

Worum es mir geht:
Ich habe einen Apachen laufen, auf dem ich PHP-Scripte ablege. In den Scripten befinden sich SQL-Statements etc. die unter keinen Umständen von Dritten ausgelesen werden dürfen.

Beim normalen Aufruf ist das ja auch kein Problem. Die phps generieren HTML Code ohne die SQL Statements etc.

ABER: Ich frage mich nun: Kann man das hacken ? Mit welchen Mitteln kann jemand an meine "Quelltexte" rankommen - und was muss ich tun, um das zu unterbinden ?

Danke für Eure Antworten
teejay
Alt 03. 02. 2004, 10:40 big.teejay is offline Mit Zitat antworten #1
Roger Wilco
Klugsh1c3r
 
Registrierungsdatum: Aug 2001
Ort: Deutschland
Beiträge: 379
Kurze und knappe Antwort: Nein, es kommt niemand an den Quellcode deiner PHP-Skripte ran, wenn diese interpretiert werden und nur die Ausgabe gesendet wird. Genausowenig kann jemand in ein Verzeichnis schauen, wenn DirectoryListings abgeschaltet sind (und du nicht selbst einen Index erstellst).
Alt 03. 02. 2004, 11:27 Roger Wilco is offline Mit Zitat antworten #2
onkelchen Spender
Retreat
 
Registrierungsdatum: Aug 2000
Beiträge: 11.530
Trotzdem kann es bei einer Fehlfunktion Angreifern erlaubt werden, Verzeichnisse aufzulisten, oder gar PHP Dateien im Quellcode anzuzeigen (es gibt zwar aktuell keine derartigen Lecks, es kann aber theoretisch immer der Fall sein).
Sensible Daten sollten daher möglichst immer außerhalb des DOCUMENT_ROOT gelagert sein.
Alt 03. 02. 2004, 12:33 onkelchen is offline Mit Zitat antworten #3
maxtheone
ILLUMINATUS PRIMUS!
 
Registrierungsdatum: Apr 2001
Beiträge: 17
und PW-Files zb von einer DB immer per require(); einbinden.
Dann sind die Zugangsdaten auch nicht sichtbar wenn der Sever down ist..
Alt 18. 02. 2004, 20:05 maxtheone is offline Mit Zitat antworten #4
cic
Mitglied
 
Registrierungsdatum: Aug 2000
Ort: HU
Beiträge: 654
"Dann sind die Zugangsdaten auch nicht sichtbar wenn der Sever down ist.."

a) Wenn der Server down ist, ist gar nichts sichtbar.
b) Wenn der Apache noch rennt und dummerweise mod_php ausfällt (aus welchen Gründen auch immer), sieht man dann auch die require()-Aufrufe und kann - solange die damit aufgerufenen Dateien innerhalb von DocumentRoot liegen - die so eingebunden Konfigurationsdateien natürlich ebenfalls im Browser aufrufen und angucken.

In 99,9% aller Fälle tritt aber Fall a) auf...
Alt 18. 02. 2004, 21:45 cic is offline Mit Zitat antworten #5
mip
The M.I.P.
 
Benutzerbild von mip
 
Registrierungsdatum: Apr 2002
Ort: 127.0.0.1
Beiträge: 3.715
Man kann auch zu inkludierende Dateien in einem Verzeichnis innerhalb des DOCUMENT_ROOTs ablegen und dies dann per deny from all schützen.
Alt 19. 02. 2004, 14:07 mip is offline Mit Zitat antworten #6
Niflheim
Mitglied
 
Registrierungsdatum: Jul 2003
Ort: http://localhost
Beiträge: 1.080
Zitat:
... Genausowenig kann jemand in ein Verzeichnis schauen, wenn DirectoryListings abgeschaltet sind (und du nicht selbst einen Index erstellst).



das stimmt so nicht ... denn es gibt programme mit denen man je nach server OS vers. & einstellungen (unabhängig davon ob DL an oder aus ist) die verzeichnisse auslesen kann.
Alt 19. 02. 2004, 15:59 Niflheim is offline Mit Zitat antworten #7
Roger Wilco
Klugsh1c3r
 
Registrierungsdatum: Aug 2001
Ort: Deutschland
Beiträge: 379
Zitat:
Original geschrieben von JOat
das stimmt so nicht ... denn es gibt programme mit denen man je nach server OS vers. & einstellungen (unabhängig davon ob DL an oder aus ist) die verzeichnisse auslesen kann.
I. d. R. funktionieren diese Programme aber nicht, ausser der Server-Admin ist total hirnverbrannt. Wenn alte und fehlerhafte Versionen eingesetzt werden ist das sicherlich möglich (wenn die Versionen auch sehr alt sein müssen), aber sonst gibt es keine Möglichkeit, an den Verzeichnisinhalt zu kommen, wenn DirectoyListings deaktiviert sind.
Alt 19. 02. 2004, 16:08 Roger Wilco is offline Mit Zitat antworten #8
Niflheim
Mitglied
 
Registrierungsdatum: Jul 2003
Ort: http://localhost
Beiträge: 1.080
naja..... man kann aber davon ausgehen das 50% der server bei solchen programmen ansprechen... wobei den 50% natürlich auch die dabei sind bei denen DL an ist
Alt 19. 02. 2004, 16:37 Niflheim is offline Mit Zitat antworten #9
onkelchen Spender
Retreat
 
Registrierungsdatum: Aug 2000
Beiträge: 11.530
Naja, wir wollen mal nicht übertreiben
Alt 19. 02. 2004, 17:05 onkelchen is offline Mit Zitat antworten #10
big.teejay
Master of Kataster
(Threadstarter)
 
Registrierungsdatum: Mar 2001
Ort: Hamburg
Beiträge: 222
Nungut,

Danke für Eure Hilfe. Meine Erkenntnis, die ich aus Euren Antworten ziehe:
- Sensible "includes" nicht ind ie Document Root
- Solange mein Apache halbwegs aktuell ist, kommt mit derzeitigen Mitteln auch keiner an meine PHP-Scripte und hidden Files

---------------------------------

Nun meine nächste Frage - zum ähnlichen Thema:

Mittels .htaccess und mod_rewrite kann ich den Zugriff auf bestimmte Verzeichnisse so beschränken, daß man nur reinkommt, wenn man von einer bestimmten seite kommt (Referrer).
Beispiel:
Zugriff auf http://<server>/wichtig/
nur, wenn man von http://<server>/login.php kommt.
Alle anderen Zugriffe auf http://<server>/wichtig/ werden nach http://<server> umgeleitet.

Nun die Sicherheitsfrage:
der Referrer ist doch auch nur ein Datensatz, der von meinem Browser an den Webserver weitergegeben wird.
Ist diese Methode dann überhaupt sicher ?
Es gibt doch sicher Webbrowser, mit denen man den referrer faken kann, oder ?

Gruß big.teejay
Alt 22. 07. 2004, 00:35 big.teejay is offline Mit Zitat antworten #11
mip
The M.I.P.
 
Benutzerbild von mip
 
Registrierungsdatum: Apr 2002
Ort: 127.0.0.1
Beiträge: 3.715
Zitat:
Original geschrieben von big.teejay
Ist diese Methode dann überhaupt sicher ?
Es gibt doch sicher Webbrowser, mit denen man den referrer faken kann, oder ?
Das Checken des Referrers ist nicht sicher, da man den Referer-Header nur allzu leicht fälschen kann. Hinzu kommt, dass der Header optional ist, also nicht unbedingt vom Client gesendet wird.
Gängige Webseitendownloader (HTTrack, Getright, etc.) beherrschen das Fälschen dieses Headers ("Spoofen") sogar von Hause aus. Beim Einsatz von Webbrowsern kann man z.B. einen filternden Proxy-Server (z.B. Proxomitron) zum Spoofen verwenden oder auf Tools wie ZSpoof zurückgreifen.
Meist reicht es aus, den angefragten URL gleichsam als Referrer zu senden, um die Referrer-Überprüfung zu "überlisten".

Der Einsatz von Referrer-Checks macht nur Sinn, wenn Du die ganze Sache statistisch betrachtest, es Dir also z.B. reicht, einen gewissen Prozentsatz Deiner Besucher mit gewisser Wahrscheinlichkeit von irgendwelchen Aktionen (z.B. Direktverlinkung von Dateien) abzuhalten.
Alt 22. 07. 2004, 03:20 mip is offline Mit Zitat antworten #12
big.teejay
Master of Kataster
(Threadstarter)
 
Registrierungsdatum: Mar 2001
Ort: Hamburg
Beiträge: 222
Cool !

Eine wirklich umfassende Antwort, die alle meine Fragen beantwortet !

Danke !
Alt 22. 07. 2004, 07:58 big.teejay is offline Mit Zitat antworten #13
onkelchen Spender
Retreat
 
Registrierungsdatum: Aug 2000
Beiträge: 11.530
Man brauch übrigens keine Spezialprogramme Referer zu faken, wget kann das und jedes 3 Zeilen Perl Script auch
Alt 22. 07. 2004, 08:07 onkelchen is offline Mit Zitat antworten #14
Themen-Optionen Antwort


Themen-Optionen

Gehe zu



Alle Zeitangaben in UTC +1. Es ist jetzt 21:08 Uhr.
Angetrieben von vBulletin
Copyright ©2000 - 2006, Jelsoft Enterprises Ltd.
borderline.gullisys.net

Anmelden

Benutzername
Kennwort
© Copyright 1998-2008 gulli.com home | regeln | sitemap | kontakt | impressum | partner | downloads | disclaimer |
Message Boards and Forums Directory