Hallo liebe Community,
Mir fällt es sehr sehr oft auf, dass in sehr vielen, auch älteren Contents noch Lücken bestehen.
Hiermit zeige ich wie man diese fixiert.
Ich nehme mir als Beispiel die Housekeeping Lücke im unbearbeiteten reCMS.
Wir wissen, dass dort eine Housekeeping Lücke besteht.
Man findet sie heraus, indem man beim Anmelden ein Hochkomma in der Spalte "Secretcode" setzt.
Wenn man es dann absendet, sieht man folgenden Fehler:
Wenn dieser nicht erscheint, ist dort keine Lücke.
ZitatYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '69d6e97fc5f215a452ba8826322f8d7b' AND secretcode = ''' AND rank > 3 LIMIT 1' at line 1
Dies könnte man nun mit Havij, oder SQL Map ausnutzen. Wenn man den nötigen String, etc. hat.
Nun kommen wir zum schließen. Wir gehen in die login.php im Houskeeping Ordner. /manage/hotel/de/housekeeping
Und öffnen diese. Da hier die Spalte Secretcode betroffen ist, suchen wir nach irgendwas mit code, und finden oben folgende UNGESICHERTE Post Abfrage:
Jetzt müssen wir das ganze mit mysql_real_escape sichern/escapen.
Wir setzen es vor $_POST und schließen es bis hinter Codeword ab. Sieht dann so aus:
Nun erscheint der Fehler nicht mehr. Wenn wir nun ein "'" einfügen erscheint folgende Meldung
Nun haben wir die Lücke geschlossen. Wenn man sich noch einloggen kann, hat alles funktioniert.
Genauso wie die obere Methode solltet ihr alles im Content sichern was ungesichert ist.
Ein Danke wäre sehr nett, denn ich habe mir die Mühe gemacht, dieses Tutorial zu schreiben.
Mit freundlichen Grüßen
Snyx