phpids

Status
Für weitere Antworten geschlossen.

Mister At

Benutzer
Mitglied seit
21. Jul 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo Community,
ich habe in der aktuellen C´t Webdesign einen interessanten Artikel über phpids gelesen und versucht, phpids auf meiner 107+ zum laufen zu bringen, - leider ohne Erfolg.
Ich habe mich an diesem Tutorial orientiert, auf das von der Homepage verlinkt wird.

Was ich gemacht habe:

wie ich schon schrieb, habe ich mich an das Tutorial gehalten. Lediglich die Pfadangaben habe ich entsprechend angepasst, da ich kein Debian System nutze, sonder die DS.

  • im Webverzeichnis habe ich einen Ordner angelegt, den ich IDS genannt habe

  • dort habe ich per ftp das lib-Verzeichnis incl. allen Unterverzeichnissen kopiert

  • in der config.ini habe ich dann die Pfade /volume1/web/IDS eingetragen

  • dann die beschrieben phpids.php direkt im web-verzeichnis erstellt (immer mit wie oben beschriebenen, angepassten Pfadangaben)

Wenn ich nun im Browser ip_der_ds/phpids.php aufrufe, bekomme ich nicht wie beschrieben eine "blank page" sondern folgende Meldung:


Warning: require_once(/volume1/web/IDS/lib/IDS/Init.php) [function.require-once]: failed to open stream: Permission denied in /volume1/web/phpids.php on line 8

Fatal error: require_once() [function.require]: Failed opening required '/volume1/web/IDS/lib/IDS/Init.php' (include_path='.:/usr/syno/php/lib/php:/volume1/web/IDS/lib') in /volume1/web/phpids.php on line 8​

In "line 8" steht: require_once 'IDS/Init.php';

Eine html-Seite auf meiner DS baut sich ohne Probleme auf. Am Webserver sollte es nicht liegen.

Ich habe auch schon an der php.ini gemäß Anleitung aus dem Tutorial rumgespielt (auto_prepend_file), die Änderungen aber verworfen, da keine Besserung eintrat. Die obige Meldung deutet ja auch auf fehlende Berechtigung hin -> Permission denied. Habe zu Testzwecken der phpids.php schon Lesen, Schreiben, Ausführen gegeben ...

Ich hoffe, dass sich jetzt einer denkt: "Ist doch ganz klar! ... Mister At hat einfach keine Ahnung von php ...", womit er dann ganz recht hat :confused:

Ich würde aber mit einem Intrusion Detection System viel ruhiger schlafen, wohl wissend, dass es erstmal nur "detectet", mir aber eine Mail schickt, sollte jemand übles wollen.

Vielen Dank schon Mal für eventuelle Hilfen.

Die Artikel auf Heise gibt es im Übrigen hier.
 
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Wem gehören die neuangelegten Ordner und wie sehen deren Rechte aus? Unter welchem User hast du DS/lib/IDS erstellt?
 

Mister At

Benutzer
Mitglied seit
21. Jul 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Alles als admin angelegt. Der hat auch RW auf den Web-Ordner.
Die phpids.php sowie den IDS-Ordner habe ich gerade noch mal auf 777 gesetzt und siehe da:

Fatal error: Uncaught exception 'Exception' with message 'Configuration file could not be found at /volume1/web/IDS/lib/IDS/Config/Config.ini' in /volume1/web/IDS/lib/IDS/Init.php:137 Stack trace: #0 /volume1/web/IDS/lib/IDS/Init.php(91): IDS_Init->setConfigPath('/volume1/web/ID...') #1 /volume1/web/IDS/lib/IDS/Init.php(118): IDS_Init->__construct('/volume1/web/ID...') #2 /volume1/web/phpids.php(15): IDS_Init::init('/volume1/web/ID...') #3 {main} thrown in /volume1/web/IDS/lib/IDS/Init.php on line 137

Die entsprechenden Zeilen habe ich mir schon mal angeschaut, aber das ist eine Sprache, die ich nicht spreche. Hast Du eine bestimmte Idee, woran es liegen könnte / brauchst Du bestimmte Infos?
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Der scheint ein Configfile unter
/volume1/web/IDS/lib/IDS/Config/Config.ini
zu suchen und nicht zu finden. Ehrlich gesagt schaut der Pfad für mich ned korrekt aus.
Die Sache mit dem Admin ist, dass der Webserver unter nobody läuft und damit keine Rechte auf die neuangelegten Ordner hatte. Ein chmod 0777 ist aber eine sehr "hässliche" Lösung ;). Denn der Webserver braucht kaum Schreibrechte auf die Verzeichnisse. Er hat sich wohl beschwert weil er keine Leserechte hatte (besser 0755 als 0777)
 

Mister At

Benutzer
Mitglied seit
21. Jul 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Danke

Der Pfad /volume1/web/IDS/lib/IDS/Config/Config.ini war schon richtig, die Datei hieß allerdings Config.ini.php. Nachdem ich sie umbenannt habe, funktioniert schon mal die Haelfte.

Ich habe mich zuaechst einmal für die Lösung via .htaccess entschieden, um zu testen.

Wenn ich im web-Verzeichnis eine info.php mit folgendem Inhalt anlege,

<?php
phpinfo();
?>
bekomme ich die erwarteten Infos.

Dann die .htaccess mit Inhalt

php_value auto_prepend_file /volume1/web/phpids.php​

angelegt und schon bekomme ich die ersten Impacts angezeigt, die sich auf Requests und Cookies beziehen, - ich denke von Kamils Jukebox, die ich zu meiner vollsten zufriedenheit nutze:

Total impact: 16
Affected tags: xss, csrf, id, rfe

Variable: REQUEST.ys-playlistID | Value: o:columns=a%3Ao%253Aid%253Dn%25253A0%255Ewidth%253Dn%25253A49%5Eo%253Aid%253Dn%25253A1%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A2%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A3%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A4%255Ewidth%253Dn%25253A108%5Eo%253Aid%253Dn%25253A5%255Ewidth%253Dn%25253A108%5Eo%253Aid%253Dn%25253A6%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A7%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A8%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A9%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A10%255Ewidth%253Dn%25253A40%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A11%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A12%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A13%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A14%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A15%255Ewidth%253Dn%25253A80%5Eo%253Aid%253Dn%25253A16%255Ewidth%253Dn%25253A46^sort=o%3Afield%3Ds%253Asort_order%5Edirection%3Ds%253AASC
Impact: 4 | Tags: xss, csrf, id, rfe
Description: Detects JavaScript array properties and methods | Tags: xss, csrf, id, rfe | ID: 18

Variable: REQUEST.ys-mp3_list | Value: o:columns=a%3Ao%253Aid%253Dn%25253A0%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A1%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A2%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A3%255Ewidth%253Dn%25253A147%5Eo%253Aid%253Dn%25253A4%255Ewidth%253Dn%25253A101%5Eo%253Aid%253Dn%25253A5%255Ewidth%253Dn%25253A101%5Eo%253Aid%253Dn%25253A6%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A7%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A8%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A9%255Ewidth%253Dn%25253A25%5Eo%253Aid%253Dn%25253A10%255Ewidth%253Dn%25253A40%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A11%255Ewidth%253Dn%25253A30%5Eo%253Aid%253Dn%25253A12%255Ewidth%253Dn%25253A101%5Eo%253Aid%253Dn%25253A13%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A14%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A15%255Ewidth%253Dn%25253A100%5Eo%253Aid%253Dn%25253A16%255Ewidth%253Dn%25253A46^sort=o%3Afield%3Ds%253Afull_path%5Edirection%3Ds%253AASC
Impact: 4 | Tags: xss, csrf, id, rfe
Description: Detects JavaScript array properties and methods | Tags: xss, csrf, id, rfe | ID: 18

Variable: COOKIE.ys-playlistID | Value: o:columns=a%3Ao%253Aid%253Dn%25253A0%255Ewidth%253Dn%25253A49%5Eo%253Aid%253Dn%25253A1%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A2%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A3%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A4%255Ewidth%253Dn%25253A108%5Eo%253Aid%253Dn%25253A5%255Ewidth%253Dn%25253A108%5Eo%253Aid%253Dn%25253A6%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A7%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A8%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A9%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A10%255Ewidth%253Dn%25253A40%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A11%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A12%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A13%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A14%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A15%255Ewidth%253Dn%25253A80%5Eo%253Aid%253Dn%25253A16%255Ewidth%253Dn%25253A46^sort=o%3Afield%3Ds%253Asort_order%5Edirection%3Ds%253AASC
Impact: 4 | Tags: xss, csrf, id, rfe
Description: Detects JavaScript array properties and methods | Tags: xss, csrf, id, rfe | ID: 18

Variable: COOKIE.ys-mp3_list | Value: o:columns=a%3Ao%253Aid%253Dn%25253A0%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A1%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A2%255Ewidth%253Dn%25253A100%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A3%255Ewidth%253Dn%25253A147%5Eo%253Aid%253Dn%25253A4%255Ewidth%253Dn%25253A101%5Eo%253Aid%253Dn%25253A5%255Ewidth%253Dn%25253A101%5Eo%253Aid%253Dn%25253A6%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A7%255Ewidth%253Dn%25253A50%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A8%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A9%255Ewidth%253Dn%25253A25%5Eo%253Aid%253Dn%25253A10%255Ewidth%253Dn%25253A40%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A11%255Ewidth%253Dn%25253A30%5Eo%253Aid%253Dn%25253A12%255Ewidth%253Dn%25253A101%5Eo%253Aid%253Dn%25253A13%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A14%255Ewidth%253Dn%25253A30%255Ehidden%253Db%25253A1%5Eo%253Aid%253Dn%25253A15%255Ewidth%253Dn%25253A100%5Eo%253Aid%253Dn%25253A16%255Ewidth%253Dn%25253A46^sort=o%3Afield%3Ds%253Afull_path%5Edirection%3Ds%253AASC
Impact: 4 | Tags: xss, csrf, id, rfe
Description: Detects JavaScript array properties and methods | Tags: xss, csrf, id, rfe | ID: 18​

Zu den http_cookies habe ich hier im Forum schon ein wenig recherchiert und bin auf einige Einträge gestoßen, die mit der Absicherung von 3rd-party-apps in Zusammenhang stehen, - jahlives war auch rege beteiligt und weiß sicher, wovon ich schreibe. Die Kekse scheinen ungefährlich und so werde ich mal schauen, ob ich die Einträge als Ausnahme in der IDS aufnehmen kann.

Wenn das ganze dann läuft, werde ich die IDS aus dem web-Verzeichnis in ein anderes überführen, um es aus der www-Gefahrenzone zu nehmen. Momentan habe ich den Zugriff aber auf mein lan beschränkt und werde erstmal weiter spielen.

Vielen Dank für die Hilfe! :)
Wenn ich mich mit den exceptions auseinandergesetzt habe, werde ich berichten.

Grüße

At
 

Mister At

Benutzer
Mitglied seit
21. Jul 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Die Exceptions

Hatte regen Schriftwechsel mit jemandem aus dem phpids-Forum, der letztlich auch nicht verstehen konnte, warum die Exceptions nicht funktionierten.

Neben
exceptions[] = GET.__utmz
exceptions[] = GET.__utmc

habe ich noch Ausnahmen für Request und Cookie hinzugefügt

exceptions[] = REQUEST.__utmz
exceptions[] = REQUEST.__utmc
exceptions[] = COOKIE.__utmz
exceptions[] = COOKIE.__utmc

Seiner Meinung nach sollte die auch funktionieren.

Zuletzt hatte ich dann vor, Requests und Cookies per json auszuschliessen, da kam mir der DSM 3.0 dazwischen :) Damit bin ich voll zufrieden, nur funktionieren jetzt gar keine Seiten mehr, wenn ich die phpids nicht deaktiviere. Ich bekomme immer die Standardmeldung

"Es tut uns leid, die von Ihnen gesuchte Seite konnte nicht gefunden werden."

Da das ganze nicht von der IDS gelogged wird, nehme ich an, dass das Problem der Apache ist.
Habe schon in der neuen php-Konfigurationsoption im DSM alles angehakt,- ohne Erfolg. Apache restart blieb auch ohne Erfolg.
Kann mir da jemand einen Tipp geben? Wo wird denn sowas geloggt?

Beste Grüße

At
 

Mister At

Benutzer
Mitglied seit
21. Jul 2010
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Kann mir keiner helfen?
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat