Skip to main content

Données de sabotage: Le complément Firefox

Serhat Durmus - La Câlin (CallmeArco Remix) / GTR and SRT Showtime (Avril 2024)

Serhat Durmus - La Câlin (CallmeArco Remix) / GTR and SRT Showtime (Avril 2024)
Anonim

Les développeurs d'applications Web croient souvent que la plupart des utilisateurs vont suivre les règles et utiliser une application telle qu'elle est censée être utilisée, mais qu'en est-il lorsque l'utilisateur (ou un pirate informatique) déroge aux règles? Que se passe-t-il si un utilisateur ignore l'interface Web sophistiquée et commence à déconner sous le capot sans les contraintes imposées par le navigateur?

Qu'en est-il de Firefox?

Firefox est le navigateur de choix pour la plupart des pirates informatiques en raison de sa conception conviviale pour les plug-ins. L'un des outils de piratage les plus populaires pour Firefox est un module complémentaire appelé Tamper Data. Tamper Data n'est pas un outil extrêmement compliqué, c'est simplement un proxy qui s'insère entre l'utilisateur et le site Web ou l'application Web sur lequel il navigue.

Tamper Data permet à un pirate de lever le rideau pour visualiser et déranger toute la "magie" HTTP qui se déroule dans les coulisses. Tous ces GET et POST peuvent être manipulés sans les contraintes imposées par l'interface utilisateur vue dans le navigateur.

Qu'est-ce qu'il faut aimer?

Alors, pourquoi les pirates informatiques aiment-ils tellement Tamper Data et pourquoi les développeurs d'applications Web devraient-ils s'en préoccuper? La raison principale en est qu’elle permet à une personne d’altérer les données échangées entre le client et le serveur (d’où le nom Tamper Data). Lorsque Tamper Data est démarré et qu'une application Web ou un site Web est lancé dans Firefox, Tamper Data affiche tous les champs permettant la saisie ou la manipulation par l'utilisateur. Un pirate informatique peut alors modifier un champ en une "valeur alternative" et envoyer les données au serveur pour voir comment il réagit.

Pourquoi cela pourrait être dangereux pour une application

Supposons qu'un pirate informatique visite un site d'achat en ligne et ajoute un article à son panier virtuel. Le développeur d’applications Web qui a créé le panier peut avoir codé le panier pour accepter une valeur de la part de l’utilisateur, telle que Quantité = "1" et restreint l'élément d'interface utilisateur à une liste déroulante contenant des sélections prédéterminées pour la quantité.

Un pirate pourrait essayer d'utiliser les données de sabotage pour contourner les restrictions de la liste déroulante, qui permettait uniquement aux utilisateurs de sélectionner un ensemble de valeurs telles que 1, 2, 3, 4 et 5. À l'aide de données de bourrage, le pirate pourrait pour entrer une valeur différente de dire "-1" ou peut-être ".000001".

Si le développeur n'a pas correctement codé sa routine de validation des entrées, cette valeur "-1" ou ".000001" pourrait éventuellement être transmise à la formule utilisée pour calculer le coût de l'élément (par exemple, Prix x Quantité). Cela pourrait entraîner des résultats inattendus, en fonction du nombre de vérifications d'erreurs effectuées et du degré de confiance du développeur dans les données provenant du côté client. Si le panier d’achat est mal codé, le pirate informatique risque d’obtenir un énorme rabais involontaire, un remboursement sur un produit qu’il n’a même pas acheté, un avoir en magasin ou qui sait quoi d’autre.

Les possibilités d'utilisation abusive d'une application Web à l'aide de Tamper Data sont infinies. Si j'étais un développeur de logiciels, le simple fait de savoir qu'il existe des outils tels que Tamper Data me garderait éveillé la nuit.

Du côté opposé, Tamper Data est un excellent outil à utiliser par les développeurs d’applications soucieux de la sécurité afin qu’ils puissent voir comment leurs applications réagissent aux attaques de manipulation de données côté client.

Les développeurs créent souvent des "cas d'utilisation" afin de se concentrer sur la manière dont un utilisateur utiliserait le logiciel pour atteindre un objectif. Malheureusement, ils ignorent souvent le facteur méchant. Les développeurs d'applications doivent mettre leur chapeau de gars et créer des «cas d'utilisation abusive» afin de tenir compte des pirates informatiques à l'aide d'outils tels que Tamper Data.

Les données de sabotage doivent faire partie de leur arsenal de tests de sécurité pour permettre de s'assurer que les entrées côté client sont validées et vérifiées avant qu'elles ne puissent affecter les transactions et les processus côté serveur. Si les développeurs ne jouent pas un rôle actif dans l'utilisation d'outils comme Tamper Data pour voir comment leurs applications réagissent aux attaques, ils ne sauront pas à quoi s'attendre et pourraient finir par payer la facture de téléviseur plasma 60 "que le pirate vient d'acheter. pour 99 cents en utilisant leur panier défectueux.