Maison > développement back-end > C++ > Dans quelle mesure votre désérialisation JSON est-elle sécurisée avec TypeNameHandling de Json.Net ?

Dans quelle mesure votre désérialisation JSON est-elle sécurisée avec TypeNameHandling de Json.Net ?

Patricia Arquette
Libérer: 2025-01-07 14:23:42
original
623 Les gens l'ont consulté

How Secure is Your JSON Deserialization with Json.Net's TypeNameHandling?

Exposition JSON externe : comprendre les risques liés à la gestion des noms de types avec Json.Net

La désérialisation JSON avec gestion automatique des types peut constituer des menaces de sécurité. Cet article vise à clarifier les vulnérabilités potentielles lors de l'utilisation de TypeNameHandling avec des paramètres définis sur Auto dans Json.Net.

Comprendre TypeNameHandling dans Json.Net

TypeNameHandling contrôle la façon dont JSON. Net désérialise les types avec les propriétés « $type », qui spécifient le nom complet du type à instancier. Lorsqu'il est défini sur Auto, Json.Net tente de résoudre le type spécifié et de construire une instance.

Dangers potentiels

Sans objet immédiat ou membres dynamiques dans votre modèle de données, vous pouvez assumer une protection contre les attaques de désérialisation. Cependant, certains scénarios peuvent encore présenter des risques :