Zum Hauptinhalt springen

12. Security Considerations (Sicherheitsüberlegungen)

Im Allgemeinen gibt es Sicherheitsprobleme mit Skriptsprachen. JSON ist eine Teilmenge von JavaScript, schließt jedoch Zuweisung und Aufruf aus.

Da die Syntax von JSON von JavaScript übernommen wurde, ist es möglich, die eval()-Funktion dieser Sprache zu verwenden, um die meisten JSON-Texte zu analysieren (aber nicht alle; bestimmte Zeichen wie U+2028 LINE SEPARATOR und U+2029 PARAGRAPH SEPARATOR sind in JSON legal, aber nicht in JavaScript). Dies stellt im Allgemeinen ein inakzeptables Sicherheitsrisiko dar, da der Text ausführbaren Code zusammen mit Datendeklarationen enthalten könnte. Die gleiche Überlegung gilt für die Verwendung von eval()-ähnlichen Funktionen in jeder anderen Programmiersprache, in der JSON-Texte der Syntax dieser Sprache entsprechen.