Hallo zusammen,
während der Testphase eines Projekts ist uns aufgefallen, dass das integrierte <we:form type="object"> nicht verschickt wird, sobald Schadcode wie z. B. "<?php … ?>" enthalten ist.
Jedoch ist im gleichen Zug aufgefallen, dass Inputs mit <script></script> Inhalten scheinbar ungefiltert bzw. nicht escaped in der Datenbank landen. So könnte auf den Trigger/Detailseiten bzw. auch auf listing-seiten, welche die Felder auslesen, vermeintlich fremde JavaScripte ausgeführt werden.
Versuche die Variablen vor dem Schreiben des Objekts über <we:setVar from="post" namefrom="xyz" to="post" nameto="xyz" prepareSQL="true"… /> oder php zu bereinigen waren bisher erfolglos.
Workaround kurzfristig wäre nun, dass Objekt ggf. über we:write zu erzeugen und anschließend über ein mysql update in der Tabelle die jeweilige Zeile mit den bereinigten Werten zu aktualisieren - aber das geht doch sicher schlanker und mit boardmitteln?
Da der we:write Befehl keinerlei Attribute zur Aufbereitung in der Tag-Referenz bereitstellt und direkt das Formular referenziert, einmal die Frage in die Runde: Gibt es hier ein best-practice wie die $_POST variablen vorm schreiben des Objektes bereinigt werden können?
Oder haben wir schlichtweg etwas übersehen?
Viele Grüße aus Köln,
Sebastian