Christoph Zurnieden: White-Label-Script mit Remote Files

Beitrag lesen

Hi,

Der Kunde verfährt also einfach so, als ob er die Datenbank selber abfragt, jedoch stattdessen eine einfach zu bedienende API bekommt. Gibt der Kunde euch ein Template, schmeißt ihr halt einfach alle Daten da rein.

Okay, das ist ein Ansatz für eine Lösung. Letztendlich ist es ja wurscht, ob der Kunde nun eine einzige Sctiprzeile oder einen ganzen Code in seine Page einbettet. Wesentlich sind genannte Vorraussetzungen, wie die dass die Files und die Datenbank auf Host-Seite liegen und die Ergebnisse nicht als Frames oder andersartig fremde Seiten integriert sind,

Einfachste Abwehr ist dafür natürlich, das man erst gar keine vollständigen Seiten anbietet, sodern einfach nur Pfade (ohne Kundentemplate) oder auch Codeschnippsel verschiedener Größe (mit Kundentemplate).

sondern Teil des Kunden-Webauftritts. Ich bin da nich so fit drin, aber hat es was Socket-Verbindungen zu tun? Sollte man an einer Art API bauen wie sie z.B. PayPal anbietet?

Das könntest Du natürlich tun, aber das ist kompliziert und somit teuer. Der einzige Vorteil ist auch nur der gesparte Overhead gegenüber irgendwelchen übergeordneten Protokollen wie HTTP o.ä.
Für meinen Vorschlag reicht ein HTTP-Server und eine Skriptsprache Deiner Wahl. Mit Perl kannst Du z.B. beides; aber auch nur auf Guru-Level ;-)
Aber da Du Dich wohl eher auf PHP verstehst: Apache + PHP. Der Apache kann auch bequem die Authentifizierung für Dich übernehmen, schonmal ein Kopfschmerz weniger.

Ob man denen sagen soll, das das ein Sicherheitsloch, groß wie ein Braunkohlentagebau ist?

Ich muss allerdings gestehen, dass Du zwar dankenswerterweise auf die immensen Sicherheitsrisiken aufmerksam machst, aber bisher kein einziges Beispiel oder keine konkrete Gefahr formuliert hast. Da muss ich Dir dann wohl einfach glauben ;-)

Nein, natürlich nicht. Ich dachte zwar, das wäre rausgekommen, aber da wohl doch nicht bitte ich um Entschuldigung und gelobe Besserung:

Wenn Du einfach Scripte andere Leute benutzt ohne sie sorgfältig zu prüfen ist das nicht gesund, soweit sollte das schonmal klar sein, oder?
Normalerweise wird entweder durch technische/gesetzliche Mittel ein evt Schaden begrenzt (Sandbox/Haftung) oder das Script händisch/automatisch überprüft.
Beim einfachem include() über unverschlüsseltem Weg funktioniert beides nicht. Du kannst das Script nicht vor der Ausführung prüfen, weder händisch noch automatisch. PHP läuft nicht in einer Sandbox. Da nicht verschlüsselt o.ä. entfällt auch die Haftung, da sich irgendjemand dazwischen geschummelt haben könnte und so den Scriptcode unauffällig(!) verändern kann.
Dazu kommt natürlich noch, das der Anbieter "gerooted" sein kannt, Du dem Sysadmin des Anbieters die Frau ausgespannt hast o.ä. dann ist auch SSL nicht mehr ausreichend. (Allerdings bleibt dann theoretisch die Haftung bestehen)

Es gibt also viel mehr Möglichkeiten, das es nicht funktioniert, als das es klappt.
Deswegen auch meine Hochkantfrisur ;-)

so short

Christoph Zurnieden