Neuigkeiten:

still alive...

Hauptmenü

Sicherheitslücke in pSys 0.3.0 alpha

Begonnen von imara, 06. Juni 2008, 16:44:13

Vorheriges Thema - Nächstes Thema

imara

Laut Google-Statistik wurde an diesem Tag nach verschiedenen Varianten hierfür gesucht:
inurl:index.php?shownews
inurl:/news/index.php?shownews=
news/index.php?shownews=
etc. etc.

Translation is more than transfering words from one language into another...


Ich interpretiere die Logs so, dass der Angreifer so gezielt nach Powie-Installationen gesucht hat.
Interessant finde ich, dass der Angreifer seine Sicherheitslücke verkaufen wollte. Was genau hat er denn geschrieben?

imara

Ich vermute eher, dass er sich die url-gestaltung angesehen hat und dann nach einer Session (bzw. Informationen daraus) in Google gesucht hat.
Er hat ja auch eine themenrelevante gehackt obwohl die eine ganz andere Platform benutzen.
In seiner letzten PM schrieb er:
 

you is very cleaver))) i think  you must change you platform, because it\\\'s very bad site. you must install Joomla - it\\\'s good platform for your site. i must leave now... i think you don\\\'t hear about me... you must change password for this account (Nico = carsten) and i know all other passwords from your database.
it will very good if you change your platform, i did SQL INJ when i know all passwords and accounts from your site.
 
[/quote]
Verkaufen wollte er nix, und auch seine anfängliche Geldforderung halte ich für eine Ausrede. Ich denke er hat sich einen schlechten Scherz gemacht, oder aber, hat es gezielt auf Webseiten mit solchem Content abgesehen (Wildtierschutz in Afrika).

Translation is more than transfering words from one language into another...


Ich vermute eher, dass er sich die url-gestaltung angesehen hat und dann nach einer Session (bzw. Informationen daraus) in Google gesucht hat.[/quote]
Er hat einerseits nach einer bestimmten Kombination aus Ressource und Parameter gesucht, andererseits hat er an mehreren Stellen SQL Injections getestet und war an einer Stelle auch erfolgreich.
Er hat ja auch eine themenrelevante gehackt obwohl die eine ganz andere Platform benutzen.[/quote]
Welche denn?

imara

ups, ich muss das korrigieren. Habe eben mit dem Web-master der anderen Website Kontakt aufgenommen und der hat nur aus Sicherheitsgründen seine Benutzer gebeten Ihre Passwörter zu ändern weil er mitbekommen hat, dass meine Site gehackt wurde.
Bleibt also Alles offen ...

Translation is more than transfering words from one language into another...


Powie

Danke für das LOG Carsten. Der Angreifer hat eine alte Lücke in der /user/showprofil.php benutzt, die schon seid der 0.5.0 alpha geschlossen ist, um einfach Daten ausspähen zu können. Dies kannst du gut im Log nachvollziehen, er hat da hundete Zugriffe drauf gemacht, da das im Sekundenraster passiert kann man davon ausgehen das er ein Script benutzt und dies nicht händisch tut. Er ist dadurch nicht an Passwörter gekommen wie er dir weiss machen will, das geht ja garnicht da diese nur als Hash in der DB stehen, aber er konnte die Hash Daten lesen. Dann hat er vermutlich irgendwo eine Hash Datenbank genutzt und schon konnte er sich einloggen, auch das kannst du noch nachvollziehen, er hatte einige Versuche nötig, er hat sich vorher mindestens 50 mal erfolglos versucht einzuloggen.

k00ni

Bitte auch mal in Erwägung ziehen, das Skript zu aktualisieren. Zwischen der 0.3 und 0.7 liegen Äonen. Das hat hier zwar jetzt nur noch bedingt was mit zu tun, aber wenn man eine veraltete Version einsetzt, dann kann dies schon vorkommen.
Die PScripte sind seit langem als unsicher bekannt und werden gerne zu Trainingszwecken benutzt.[/quote]
Wo steht sowas? Ich weiß nur, dass die Skripte ohne die automatische Maskierung offen wären wie ein Scheuentor, da keine Typprüfung der Parameter etc. .

Auf unseren Webseiten benutzen wir grundsätzlich zwei voneinander unabhängige Log-Scripte. Dadurch haben wir schon so manchen Eindringling erkannt bevor der richtig zuschlagen konnte.[/quote]
Das interessiert mich: Wie genau macht ihr das? Habt ihr ein IDS?
[/quote]
Interessiert mich auch.
 
Grüße

Wo steht sowas?[/quote]
Naja, es ist ja u.A. hier im Forum dokumentiert.
Ich weiß nur, dass die Skripte ohne die automatische Maskierung offen wären wie ein Scheuentor, da keine Typprüfung der Parameter etc.[/quote]
PSys ist außerdem massiv von CSRF-Sicherheitsproblemen betroffen. Diese sind prinzipiell auch ohne automatisches Escaping relevant. Übrigens wird es in PHP6 die magic_quotes_*-Funktionalität überhaupt nicht mehr geben.

imara

Schön, dass es eine Lücke ist, die bereits geschlossen ist da ich pSys ja noch anderweitig einsetze /uploads/emoticons/icon_e_wink.gif.3167d127940f44558fbf1ccd9b6d60a9.gif\" alt=\";-)\" />
Auf dieser Website nutze ich noch die alte Version weil ich dort sooo viele Änderungen gemacht habe (inkl. Übersetzung ins Englische), dass es ein immenser Zeitaufwand wäre diese zu aktualisieren.
Wie bereits geschrieben, habe ich von der Website tatsächlich kein Einkommen und kann es mir leider im Moment nicht leisten, Wochen damit zu verbringen diese zu aktualisieren.
Wäre es möglich nur diesen Teil zu beheben? Liegt es ausschließlich an der showprofil.php?

Translation is more than transfering words from one language into another...


imara


Original von Powie Er ist dadurch nicht an Passwörter gekommen wie er dir weiss machen will, das geht ja garnicht da diese nur als Hash in der DB stehen, aber er konnte die Hash Daten lesen.
[/quote]
Er kann sehr wohl die Passwörter einsehen, er hat mir ja als Beweis das Passwort für den Benutzer mitgeteilt und mich gebeten dies zu ändern.

Translation is more than transfering words from one language into another...


Powie

Wie soll das gehen? Das Passwort steht nirgendwo im Klartext.

imara

das weis ich auch, aber warum weis er dann das Passwort?
Was weis ich, vielleicht war SQL Inj. ja nur die Spitze des Eisberges. Könnte ja sein, dass er sich per SQL Injection Zugang verschafft hat und dann ein trojanisches Skript hinterlegt hat.
Ich würde ihn ja gerne fragen oder hier zu unserer Diskussion einladen, aber ich stehe leider nicht mehr in Kontakt mit ihm.
Wenn ich das im Log richtig gesehen habe, sitzt er in Russland, jemand aus meinem Bekanntenkreis schließt daher aus.

Translation is more than transfering words from one language into another...


imara

hab mich da mal schlau gemacht. Es gibt Webseiten wo man die Hash-Keys online entschlüsseln kann  /uploads/emoticons/icon_e_surprised.gif.a8707b3f35a569cb4cfe563fc72ef78d.gif\" alt=\":-o\" />

Translation is more than transfering words from one language into another...


Powie

Richtig, dann benötigt man den Hash Key aus deiner Datenbank, und man muss noch das Glück haben das das selbe Passwort in der Datenbank ist....
Bsp: http://md5.rednoize.com\" rel=\"external nofollow\">http://md5.rednoize.com

hab mich da mal schlau gemacht. Es gibt Webseiten wo man die Hash-Keys online entschlüsseln kann[/quote]
Aus diesem Grund http://en.wikipedia.org/wiki/Salt_%28cryptography%29\" rel=\"external nofollow\">salzt man Hashes auch. Dann funktionieren vorberechnete Rainbow-Tables nämlich nicht.

all your base are belong to us