JSON meilleures pratiques de sécurité?

Alors que des recherches sur la question de la JSON vs XML, je suis tombé sur cette question. Maintenant, l'une des raisons de préférer JSON a été répertorié comme la facilité de la conversion en Javascript, c'est à dire avec la eval(). Maintenant, cela m'a immédiatement frappé comme potentiellement problématique dans une perspective de sécurité.

J'ai donc commencé à faire quelques recherches sur les aspects de sécurité de JSON et à travers ce blog à propos de la façon dont JSON est pas aussi sûr que les gens pensent qu'il est. Cette partie a frappé:

Mise à jour: Si vous faites JSON 100%
correctement, alors vous aurez seulement
les objets au plus haut niveau. Des tableaux,
Chaînes de caractères, Nombres, etc seront tous
enveloppé. Un objet JSON va échouer
à eval() parce que le JavaScript
interprète pense que c'est en regardant
un bloc plutôt que d'un objet. Cette
va un long chemin pour la protection contre les
ces attaques, cependant, c'est encore meilleur
pour protéger vos données avec
onu-prévisible Url.

Ok, donc c'est une bonne règle pour commencer: objets JSON au plus haut niveau doit toujours être objets et de ne jamais les tableaux, les nombres ou de chaînes de caractères. Sonne comme une bonne règle pour moi.

Est-il autre chose à faire ou à éviter quand il s'agit de JSON et AJAX liées à la sécurité?

La dernière partie de la citation ci-dessus mentionne imprévisible Url. Quelqu'un aurait-il plus d'informations sur ce point, notamment, sur la façon de le faire en PHP? Je suis beaucoup plus d'expérience en Java qu'en PHP et en Java, il est facile (que vous pouvez mapper un ensemble d'Url à une seule servlet), tandis que tout le PHP, j'ai fait avez mappé à une URL unique pour le script PHP.

Aussi, comment utilisez-vous imprévisible Url d'augmenter la sécurité?

  • Je ne suis pas ce à tous les! Sûrement que toute demande formulée par le navigateur (à n'importe quelle URL imprévisibles ou non) peuvent être signalés à l'utilisateur, soit à l'aide d'une console ou d'un peu de fantaisie GM script...
  • "JSON n'est pas aussi sûr que les gens pensent qu'il est" est mort
InformationsquelleAutor cletus | 2008-12-27