Accueil Finances personnelles Comment éviter l'injection de code en C ++ - mannequins

Comment éviter l'injection de code en C ++ - mannequins

Vidéo: Comment éviter les problèmes de cache des fichiers JavaScript pendant votre développement 2024

Vidéo: Comment éviter les problèmes de cache des fichiers JavaScript pendant votre développement 2024
Anonim

La première règle d'éviter l'injection de code dans les programmes C ++ n'est jamais, jamais, permettre à l'entrée de l'utilisateur d'être traitée par un interpréteur de langage à usage général. Une erreur courante avec l'injection SQL est que le programme accepte l'entrée de l'utilisateur comme si elle était toujours acceptable et l'insère dans une requête SQL qu'elle expédie ensuite au moteur de base de données pour traitement.

A titre d'exemple, un programme demandant une entrée utilisateur sur une date peut être piraté. L'approche la plus sûre et la plus conviviale serait de fournir à l'utilisateur un graphique du calendrier à partir duquel il pourrait sélectionner les dates de début et de fin. Le programme créerait alors une date basée sur ce que l'utilisateur a cliqué.

Si cela n'est pas possible, le programme devrait vérifier soigneusement l'entrée pour s'assurer que l'entrée était dans le bon format pour une date, dans ce cas aaaa / mm / jj < - en d'autres termes, quatre chiffres suivis d'une barre oblique suivie de deux chiffres et d'une barre oblique et enfin de deux chiffres supplémentaires. Rien d'autre ne devrait être considéré comme une contribution acceptable. Parfois, vous ne pouvez pas être aussi précis sur le format. Si vous devez autoriser l'utilisateur à entrer du texte flexible, vous pouvez au moins éviter les caractères spéciaux. Par exemple, il est pratiquement impossible d'effectuer une injection de code SQL sans utiliser de guillemets simples ou doubles.

Vous ne pouvez pas insérer de balises HTML sans utiliser un signe inférieur à (). Ou vous pourriez juste prendre l'approche que tout autre texte que le texte ASCII ne sera pas toléré:

// vérifier une chaîne 's' pour s'assurer que c'est bien ASCII size_type off = s. find_first_not_of ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890_"); if (off! = chaîne:: npos) {cerr << "errorn";}

Ce code recherche dans la chaîne

s un caractère qui n'est pas l'un des caractères A à Z, a à z, De 0 à 9 ou de soulignement. S'il trouve un tel caractère, le programme rejette l'entrée.

Si vous n'acceptez que les caractères latins indiqués ici, votre application ne sera pas utilisable sur de nombreux marchés étrangers tels que ceux qui n'utilisent pas de jeux de caractères anglais (tels que l'arabe, le chinois, l'hébreu ou Russe, pour n'en nommer que quelques-uns). Vous devrez peut-être adopter l'approche inverse et simplement chercher les mauvais caractères.
Comment éviter l'injection de code en C ++ - mannequins

Le choix des éditeurs

Création de graphiques avec Fireworks CS5 Outils vectoriels - dummies

Création de graphiques avec Fireworks CS5 Outils vectoriels - dummies

Les outils Vector dans Adobe Fireworks Creative Suite 5 sont similaires à celles auxquelles vous êtes habitué dans Illustrator ou Photoshop. Vous devriez remarquer dès le départ dans Fireworks qu'à chaque fois que vous créez une nouvelle forme vectorielle avec l'un des outils vectoriels (comme Line, Pen, Shape ou Type), Fireworks crée ...

Comment exporter des tranches dans Fireworks CS5 - les nuls

Comment exporter des tranches dans Fireworks CS5 - les nuls

Découpage est une technique permettant de fractionner des fichiers volumineux en paquets plus petits ils téléchargent plus vite. Une fois que vous avez découpé votre illustration dans Adobe Fireworks Creative Suite 5, vous pouvez exporter les coupes finales pour les utiliser sur une page Web. Vous pouvez exporter des tranches Fireworks sous forme de tableaux html ou de feuilles de style en cascade (CSS). Pour exporter en tranches ...

Comment créer des images avec des outils Bitmap dans Adobe Fireworks CS6 - des mannequins

Comment créer des images avec des outils Bitmap dans Adobe Fireworks CS6 - des mannequins

Adobe Photoshop CS6 a certains outils qui fonctionnent différemment des outils similaires dans d'autres applications Adobe: les outils bitmap de Flou, Pinceau, Gomme, Lasso, Baguette magique, Marquee, Crayon et Rubber Stamp. Si vous ne voyez pas le panneau Outils, choisissez Fenêtre → Outils. Comment sélectionner des pixels avec des outils bitmap Les outils de sélection vous permettent de saisir ...

Le choix des éditeurs

ISO et Image Noise avec le Nikon D3300 - mannequins

ISO et Image Noise avec le Nikon D3300 - mannequins

Idéalement, vous devez toujours utiliser le réglage ISO le plus bas sur votre Nikon D3300 pour assurer une qualité d'image optimale. À mesure que l'ISO augmente, rendant le capteur d'image plus réactif à la lumière, vous augmentez le risque de produire du bruit. Le bruit est un défaut qui ressemble à des grains de sable et ressemble ...

Comment afficher les paramètres d'image sur le Nikon D3300 - dummies

Comment afficher les paramètres d'image sur le Nikon D3300 - dummies

Votre appareil photo Nikon D3300 conserve une trace de paramètres de prise de vue et vous permet de les voir pendant la prise de vue. Votre appareil photo vous propose les moyens suivants pour surveiller les paramètres de prise de vue les plus importants: Écran d'information (photographie du viseur): L'écran de gauche de la figure vous donne un aperçu de l'écran d'informations disponible pour la photographie du viseur. ...

Le choix des éditeurs

Où placer un numéro de page dans Word 2007 - mot de passe

Où placer un numéro de page dans Word 2007 - mot de passe

Mot 2007 peut numéroter automatiquement vos pages et vous permet de placer le numéro de page n'importe où sur la page (en haut, en bas ou sur les côtés) dans une variété de formats. Si vous supprimez ou renumérotez une page, Word les renumérote automatiquement pour vous.

En mode plein écran dans Word pour Mac 2011 - pour les nuls

En mode plein écran dans Word pour Mac 2011 - pour les nuls

, Il existe une nouvelle vue Plein écran dans Word pour Mac 2011 qui vous permet de modifier ou simplement de lire un document sans l'encombrement du ruban Office 2011 pour Mac, des règles et autres distractions. La vue Plein écran est en fait deux vues en une: Vous pouvez choisir le mode Lecture ou le mode Ecriture. Passage en plein écran ...

À L'aide de l'option Imprimer la mise en page dans Word pour Mac 2011 - dummies

À L'aide de l'option Imprimer la mise en page dans Word pour Mac 2011 - dummies

Mac est un bon point de départ pour les débutants car ce que vous voyez à l'écran est le plus proche de ce que vous obtenez lorsque vous imprimez. La vue Imprimer la mise en page est également utile à titre d'exemple pour expliquer la disposition générale de l'interface de Word. Les vues Brouillon et Contour dans ...