Hoi,
mein Clan hat vor einiger Zeit ein wenig Geld in ein vermeindlich gutes CMS gesteckt. Wir hatten lange und gründlich gesucht und dachten das richtige gefunden zu haben.
Der Kontakt war und ist stets nett, Aufgaben wurden meist schnell abgearbeitet, neue Module immer gut umgesetzt.
Als das CMS dann aber fertig war, hab ich es mir ein wenig angeschaut und ich muss sagen, es gruselte mir.
So konnte man, wenn man eine Liste nach einem Faktor sortieren lassen wollte, einfach einen Button anklicken, wie das eben so üblich ist.
Schnell viel mir auf, dass in der GET Variable immer asc/desc auftauchte, was mich stuzig gemacht hat. Und tatsächlich, die Get Varibale wurde ungeprüft direkt ins SQL Statement übernommen, es war absolut kein Problem per SQL Injection an beliebige Daten zu kommen.
Als ich das dem Coder mitteilte, meinte er es sei ein Ausversehen, er korrigiere es sofort, was er auch tat.
Leider nur bei dieser einen Liste, in allen anderen Bereichen konnte man fröhlich weiter Unfug treiben.
Also wieder mal den Coder angeschrieben und ihm leicht zweifelnd den Tatbestand geschildert. Er versicherte mir abermals, dass er das sofort korriegen würde und wir in den nächsten Tagen eh ein komplettes Sicherheitsupdate bekommen würden.
Nun, ich habe schon viel in Eigenarbeit an dem CMS umgeschrieben, weil einige Dinge einfach nur idiotisch dumm, teilweise unüberlegt umgesetzt wurden.
Nun war es seit längerem Still, doch was ich heute vom Provider bekam, hat mich wieder mal bestätigt.
Über unsere Domain wurde Spam vertrieben, durch eine Sicherheitslücke in unserem CMS. Sowas darf man, wie ich finde, schon gar nicht mehr Sicherheitslücke nennen..
Jeder modulare Bereich ist über eine GET Varibale zu erreichen, zb index.php?bereich=news.
Nun, wie ich eben gesehen habe, werden die GET Variablen wieder einmal ungefiltert weiterverarbeitet, hinter jede Varibale einfach ein ".php" angehängt und gut.
So ist es tatsächlich möglich, über index.php?bereich=blubb die "blubb.php" anzusprechen, welche es natürlich garnicht gibt. Besonders prikär, da man auch externe Dateien und Scripte aufrufen kann.
Nun mal eine ehrliche Meinung, bin ich nur penibel, paranoisch und übervorsichtig, oder ist das einfach auf gut Deutsch gesagt, zusammengezimmerste Scheisse? Ich mein, sowas kann doch echt nicht sein. Selbst wenn ich ein Script für meinen privaten Gebrauch code, prüfe ich es auf alle Belange, was die Sicherheit angeht, sowas sollte man auch von einem CMS erwarten können/müssen.
Mir persönlich kommt es so langsam vor, als wisse der Coder teilweise garnicht, was Injections und Sicherheitslücken sind, kennt sich gar mit PHP nicht wirklich aus, anders können solche Fehler doch nun wirklich nicht auftreten. (?)
mein Clan hat vor einiger Zeit ein wenig Geld in ein vermeindlich gutes CMS gesteckt. Wir hatten lange und gründlich gesucht und dachten das richtige gefunden zu haben.
Der Kontakt war und ist stets nett, Aufgaben wurden meist schnell abgearbeitet, neue Module immer gut umgesetzt.
Als das CMS dann aber fertig war, hab ich es mir ein wenig angeschaut und ich muss sagen, es gruselte mir.
So konnte man, wenn man eine Liste nach einem Faktor sortieren lassen wollte, einfach einen Button anklicken, wie das eben so üblich ist.
Schnell viel mir auf, dass in der GET Variable immer asc/desc auftauchte, was mich stuzig gemacht hat. Und tatsächlich, die Get Varibale wurde ungeprüft direkt ins SQL Statement übernommen, es war absolut kein Problem per SQL Injection an beliebige Daten zu kommen.
Als ich das dem Coder mitteilte, meinte er es sei ein Ausversehen, er korrigiere es sofort, was er auch tat.
Leider nur bei dieser einen Liste, in allen anderen Bereichen konnte man fröhlich weiter Unfug treiben.
Also wieder mal den Coder angeschrieben und ihm leicht zweifelnd den Tatbestand geschildert. Er versicherte mir abermals, dass er das sofort korriegen würde und wir in den nächsten Tagen eh ein komplettes Sicherheitsupdate bekommen würden.
Nun, ich habe schon viel in Eigenarbeit an dem CMS umgeschrieben, weil einige Dinge einfach nur idiotisch dumm, teilweise unüberlegt umgesetzt wurden.
Nun war es seit längerem Still, doch was ich heute vom Provider bekam, hat mich wieder mal bestätigt.
Über unsere Domain wurde Spam vertrieben, durch eine Sicherheitslücke in unserem CMS. Sowas darf man, wie ich finde, schon gar nicht mehr Sicherheitslücke nennen..
Jeder modulare Bereich ist über eine GET Varibale zu erreichen, zb index.php?bereich=news.
Nun, wie ich eben gesehen habe, werden die GET Variablen wieder einmal ungefiltert weiterverarbeitet, hinter jede Varibale einfach ein ".php" angehängt und gut.
So ist es tatsächlich möglich, über index.php?bereich=blubb die "blubb.php" anzusprechen, welche es natürlich garnicht gibt. Besonders prikär, da man auch externe Dateien und Scripte aufrufen kann.
Nun mal eine ehrliche Meinung, bin ich nur penibel, paranoisch und übervorsichtig, oder ist das einfach auf gut Deutsch gesagt, zusammengezimmerste Scheisse? Ich mein, sowas kann doch echt nicht sein. Selbst wenn ich ein Script für meinen privaten Gebrauch code, prüfe ich es auf alle Belange, was die Sicherheit angeht, sowas sollte man auch von einem CMS erwarten können/müssen.
Mir persönlich kommt es so langsam vor, als wisse der Coder teilweise garnicht, was Injections und Sicherheitslücken sind, kennt sich gar mit PHP nicht wirklich aus, anders können solche Fehler doch nun wirklich nicht auftreten. (?)
Kommentar