Maison > Java > javaDidacticiel > le corps du texte

Comment empêcher l'injection SQL en Java ?

藏色散人
Libérer: 2020-10-12 17:33:11
original
12348 Les gens l'ont consulté

L'injection SQL est l'une des méthodes d'attaque réseau les plus courantes. Elle n'utilise pas le BUG du système d'exploitation pour réaliser l'attaque, mais cible la négligence du programmeur lors de la programmation, elle peut se connecter sans compte ou. même falsifier la base de données.

Comment empêcher l'injection SQL en Java ?

Méthode d'arrière-plan Java pour empêcher l'injection SQL :

1. Utilisez un ensemble d'instructions précompilé, qui a la capacité intégrée de le faire. gérer l'injection SQL, utilisez simplement sa méthode setString pour transmettre la valeur :

String sql= "select * from users where username=? and password=?;
PreparedStatement preState = conn.prepareStatement(sql);
preState.setString(1, userName);
preState.setString(2, password);
ResultSet rs = preState.executeQuery();
Copier après la connexion

2. Utilisez des expressions régulières pour remplacer les instructions contenant des guillemets simples ('), des points-virgules (;) et des symboles de commentaire (--) Supprimer pour empêcher Injection SQL

public static String SQL(String str)
{
return str.replaceAll(".*([';]+|(--)+).*", " ");
}
userName=SQL(userName);
password=SQL(password);
String sql="select * from users where username='"+userName+"' and password='"+password+"' "
Statement sta = conn.createStatement();
ResultSet rs = sta.executeQuery(sql);
Copier après la connexion

Recommandations associées : "Tutoriel Java"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal