+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 16

Thema: configuration.php verstecken, wie richtig?

  1. #1
    Neu an Board
    Registriert seit
    14.02.2007
    Beiträge
    24
    Bedankte sich
    9
    1 Danksagung in 1 Beitrag

    Standard configuration.php verstecken, wie richtig?

    Wenn ich es richtig sehe, gelingen manche Hackversuche durch Ausspähen der configuration.php
    Jetzt dachte ich daran (so wie es manchmal empfohlen wird) die config außerhalb des webservers zu verstecken. Muss ich dazu eigentlich nur die index.php , die index2.php und im Adminbereich zusätzlich die index3.php anpassen - oder ist da noch mehr zu tun?

  2. #2
    a.h.
    Gast

    Standard

    Hallo,

    sobald jemand im PHP Context etwas tut, dann kann er die Datei immer lesen, da Joomla ja sie lesen können muss und irgendwo muss in Joomla auch hinterlegt sein, wo die Datei liegt.

    Wenn Du auf einem gut konfigurierten Server (suPHP oder PHP per CGI) bist, dann kannst du die Datei per chmod 400 insofern schützen, dass sie keiner im Kontext des Webservers lesen kann.

    Warum ist das so?

    Auf einem mod_php Server muss sowieso der Webserver Alles lesen dürfen, denn PHP rennt im Kontext des Webservers -> sowas kann man sicherheitstechnisch voll vergessen.

    Bei suPHP oder PHP als CGI sollte der PHP Childprozess unter einem bestimmten User geforkt werden.

    Angenommen das verzeichnis und die Dateien gehören dem User web1 und der gruppe web1, PHP rennt als Web1, dann müssen Verzeichnisse so konfiguriert sein, dass der Apache reinwechsels darf und die Inhalte lesen darf, chmod xx5 wäre das, da der Apache als User wwwrun der WORLD angehört. PHP selber muss er nicht lesen können, denn er forkt PHP als User Web1 und da genügt ein 4xx. Angenommen die Rechte wären: User: web1, gruppe: irgendwas, dann ist es wichtig, auch in der Mitte eine 0 stehen zu haben, also x00.

    Das schützt nämlich vor anderen Usern, die das verzeichnis im Falle einer Fehlkonfig betreten können und ebenso vor einer Kompromitierung des Webserver-Users.

    Wenn jemand im Kontext Deines PHP agieren kann, kannst Du machen was Du willst, er wird die Datei immer lesen können, sofern sie für den User lesbar ist (und ohne könnte Joomla die Datei ja nicht lesen)

  3. Erhielt Danksagungen von:


  4. #3
    Neu an Board
    Registriert seit
    14.02.2007
    Beiträge
    24
    Bedankte sich
    9
    1 Danksagung in 1 Beitrag

    Daumen hoch

    Vielen Dank für deine ausführliche Erläuterung. Ich hab dadurch wieder mal was dazugelernt.
    100 prozentige Sicherheit gibt es ja nicht, dass wusste ich auch schon vorher, aber das die alten Tipps und Tricks so einfach auszuhebeln sind, bzw. keinen sicherheitstechnischen Wert mehr haben ist schon erschreckend.

    Dir Alles Gute und ein großes Danke!

  5. #4
    a.h.
    Gast

    Standard

    Bitte, gern ;-)

  6. #5
    Neu an Board Avatar von enforcer31
    Registriert seit
    24.04.2007
    Ort
    München
    Alter
    38
    Beiträge
    82
    Bedankte sich
    30
    1 Danksagung in 1 Beitrag

    Standard

    Moin,

    erstelle eine configuration.php mit folgendem Inhalt:

    Code:
    <?php include("diesisteinanderesVerzeichnisfürdiecfg/configuration.php"); ?>
    Diese "Umleitungs-Datei" legst Du dann ins normale Joomla Verzeichnis ab.

    Die richtige configuration.php legst Du dann in das Verzeichnis, dass Du auf
    Deinem Webspace angelegt hast. (z.B.diesisteinanderesVerzeichnisfürdiecfg)

    Gruss
    Wer seine Meinung nie zurückzieht, liebt sich selbst mehr als die Wahrheit.
    Joseph Joubert

  7. #6
    Neu an Board
    Registriert seit
    27.02.2008
    Beiträge
    80
    Bedankte sich
    0
    Erhielt 4 Danksagungen
    in 4 Beiträgen

    Standard

    Die alte configuration.php am besten noch in "snakeoil.php" umbenennen!

    Denn wie a.h. bereits ganz richtig sagte:
    Wenn jemand im Kontext Deines PHP agieren kann, kannst Du machen was Du willst, er wird die Datei immer lesen können, sofern sie für den User lesbar ist (und ohne könnte Joomla die Datei ja nicht lesen)

  8. #7
    Neu an Board Avatar von enforcer31
    Registriert seit
    24.04.2007
    Ort
    München
    Alter
    38
    Beiträge
    82
    Bedankte sich
    30
    1 Danksagung in 1 Beitrag

    Standard

    Klar.
    Aber gegen eine Echo-Abfrage (wird sehr gerne mal gemacht) kann man sich damit schonmal schützen.
    Wer seine Meinung nie zurückzieht, liebt sich selbst mehr als die Wahrheit.
    Joseph Joubert

  9. #8
    Neu an Board
    Registriert seit
    27.02.2008
    Beiträge
    80
    Bedankte sich
    0
    Erhielt 4 Danksagungen
    in 4 Beiträgen

    Standard

    Echo-Abfrage
    Klingt interessant. Leider wirft google nix zu dem Thema aus, inwieweit man das für nen exploit nutzen kann. Kannst du kurz anreißen, wie das funzt?

  10. #9
    Neu an Board Avatar von enforcer31
    Registriert seit
    24.04.2007
    Ort
    München
    Alter
    38
    Beiträge
    82
    Bedankte sich
    30
    1 Danksagung in 1 Beitrag

    Standard

    Nah.
    Besser nicht ^^

    Aber man kann mittels eines PHP-Dokuments einige Abfragen starten.
    Z.B:
    Code:
    echo $dbhost.", ".$dbname.", ".$dbuser.", "dbpasswd;
    Ein paar Freunde hatten damals darauf hingewiesen, dass mein phpBB Board nicht sicher sei.
    Die haben so eine Abfrage gemacht.
    Dürfte dann auch wohl mit Joomla gehen.
    Wer seine Meinung nie zurückzieht, liebt sich selbst mehr als die Wahrheit.
    Joseph Joubert

  11. #10
    Neu an Board
    Registriert seit
    27.02.2008
    Beiträge
    80
    Bedankte sich
    0
    Erhielt 4 Danksagungen
    in 4 Beiträgen

    Standard

    Aber man kann mittels eines PHP-Dokuments einige Abfragen starten
    ömmm?
    Und wie kommt das "böse" php script auf den Server? Wenn ich als Hacker ein beliebiges php script auf nem Server installieren darf, ist hacken irgendwie gar nicht mehr so schwer ...

    Und wenn ich ein php script auf dem Server habe, gilt ja wieder das von a.h. gesagte.
    Wäre also für Aufklärung dankbar welche spezielle Sicherheitslücke sich auftut, wenn die configuration.php im DocRoot liegt.

+ Antworten
Seite 1 von 2 1 2 LetzteLetzte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein