细谈php中SQL注入攻击与XSS攻击_PHP
例如: SQL注入攻击
XSS攻击
复制代码 代码如下:
任意执行代码
文件包含以及CSRF.
}
关于SQL攻击有很多文章还有各种防注入脚本,但是都不能解决SQL注入的根本问题
见代码:
复制代码 代码如下:
mysql_connect("localhost","root","123456")or die("数据库连接失败!");
mysql_select_db("test1");
$user=$_post['uid'];
$pwd=$_POST['pass'];
if(mysql_query("SELECT * from where
admin
= `username`='$user' or `password`='$pwd'"){
echo "用户成功登陆..";
} eles {
echo "用户名或密码出错";
}
?>
很简单的一段代码,功能是用于检测用户名或密码是否正确,可是在一些恶意攻击者中提交一些敏感代码.后果可想而知.. post判断注入的方式有2种。
1.在form表单的文本框输入 "or‘1'=1"或者"and 1=1"
在查询数据库的语句就应该是:
SELECT admin from where login = `user`=''or‘1'=1' or `pass`=‘xxxx'
当然也不会出现什么错误,因为or在sql的语句中代表和,或的意思。当然也会提示错误。
当时我们已经发现了可以执行SQL语句之后就可以查询当前表的所有信息。例如:正确的管理员账户和密码进行登录入侵。。
修复方式1:
使用javascript脚本过滤特殊字符(不推荐,指标不治本)
如果攻击者禁用了javascript还是可以进行SQL注入攻击。。
修复方式2:
使用mysql的自带函数进行过滤。
见代码:
复制代码 代码如下:
// 省略连接数据库等操作。。
$user=mysql_real_escape_string($_POST['user']);
mysql_query("select * from admin whrer `username`='$user'");
?>
既然前面说道了xss攻击,我们再来说说XSS攻击以及防范吧。。
提交表单:
复制代码 代码如下:
接收文件:
复制代码 代码如下:
if(empty($_POST['sub'])){
echo $_POST['test'];
}
很简单的一段代码,在这里只是模拟了下使用场景..
加入攻击者提交
<script>alert(document.cookie);</script>
在返回的页面就应该显示当前页面的cookie信息。
我们可以运用到某些留言板上(提前是没过滤的),然后当管理员审核改条信息时盗取COOKIE信息,并发送到攻击者的空间或者邮箱。。攻击者可以使用cookie修改器进行登陆入侵了。。
当然解决方案也有很多。。下面就介绍一个最常用的方式吧。
修复方案1:使用javascript进行转义
修复方案2:使用php内置函数进行转义
代码如下:
[code]
if(empty($_POST['sub'])){
$str=$_POST['test'];
htmlentities($srt);
echo $srt;
}
[html]
好了,关于SQL注入攻击和XSS攻击的案例与修复方法就讲的差不多了。
当然还有其他的解决方法:
例如:使用php框架
还有其他的一些方法。。当然了,XSS的运用范围与攻击方式很多也很广。本文只针对php的提交方式进行过滤,还有其他的需要自己去研究 ^_^~
此文出此:Aey uhost team(team.hake.cc),转载请带上版权。
y0umer
2012/6/7

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Comment utiliser PHP pour défendre les attaques Cross-Site Scripting (XSS) Avec le développement rapide d'Internet, les attaques Cross-SiteScripting (XSS) sont l'une des menaces de sécurité réseau les plus courantes. Les attaques XSS visent principalement à obtenir des informations sensibles sur les utilisateurs et à voler des comptes d'utilisateurs en injectant des scripts malveillants dans des pages Web. Pour protéger la sécurité des données des utilisateurs, les développeurs doivent prendre les mesures appropriées pour se défendre contre les attaques XSS. Cet article présentera quelques techniques PHP couramment utilisées pour se défendre contre les attaques XSS.

Comment utiliser le prétraitement PDO pour empêcher les attaques par injection SQL Introduction : Lors du développement Web, nous devons souvent interagir avec la base de données. Cependant, des opérations de requête de base de données incorrectes peuvent entraîner de graves risques de sécurité, et l'une des méthodes d'attaque les plus largement exploitées est celle par injection SQL. Afin d'éviter les attaques par injection SQL, PDO fournit un mécanisme de prétraitement. Cet article explique comment utiliser correctement le prétraitement PDO. Qu'est-ce qu'une attaque par injection SQL : L'injection SQL est une technique d'attaque contre la base de données utilisée par l'attaquant.

Avec la popularité d’Internet et l’expansion continue des scénarios d’application, nous utilisons de plus en plus souvent des bases de données dans notre vie quotidienne. Cependant, les problèmes de sécurité des bases de données font également l’objet d’une attention croissante. Parmi eux, l’attaque par injection SQL est une méthode d’attaque courante et dangereuse. Cet article présentera les principes, les inconvénients et comment prévenir les attaques par injection SQL. 1. Principes des attaques par injection SQL Les attaques par injection SQL font généralement référence au comportement de pirates informatiques exécutant des instructions SQL malveillantes dans des applications en construisant des entrées malveillantes spécifiques. Ces comportements conduisent parfois à

Quel est le principe de l'attaque XSS ? Des exemples de codes spécifiques sont nécessaires Avec la popularité et le développement d'Internet, la sécurité des applications Web est progressivement devenue le centre d'attention. Parmi eux, Cross-SiteScripting (XSS en abrégé) est une vulnérabilité de sécurité courante à laquelle les développeurs Web doivent prêter attention. Les attaques XSS sont effectuées en injectant du code de script malveillant dans une page Web et en l'exécutant dans le navigateur de l'utilisateur. Cela permet à l'attaquant de contrôler le navigateur de l'utilisateur et d'obtenir les informations sensibles de l'utilisateur.

Sécurité des bases de données : stratégies pour protéger les applications Java contre les attaques par injection SQL Résumé : Avec le développement d'Internet, les applications Java jouent un rôle de plus en plus important dans nos vies et notre travail. Cependant, dans le même temps, les problèmes de sécurité des bases de données sont devenus de plus en plus importants. Les attaques par injection SQL constituent l’une des vulnérabilités de sécurité des bases de données les plus courantes et les plus dévastatrices. Cet article présentera quelques stratégies et mesures pour protéger les applications Java contre la menace d'attaques par injection SQL. Partie 1 : Qu'est-ce qu'une attaque par injection SQL ? Injection SQL

Filtrage des données PHP : prévention des attaques XSS et CSRF Avec le développement d'Internet, la sécurité des réseaux est devenue l'un des centres d'attention des gens. Lors du développement de sites Web, il est très important de filtrer et de vérifier les données soumises par les utilisateurs, en particulier pour prévenir les attaques XSS (cross-site scripting attaques) et CSRF (cross-site request forgery attaques). Cet article explique comment utiliser PHP pour éviter ces deux vulnérabilités de sécurité courantes et fournit un exemple de code pour référence. Prévention des attaques XSS Les attaques XSS font référence à des attaquants malveillants qui injectent des scripts ou des codes malveillants pour les falsifier.

Sécurité de connexion à la base de données PHP : méthodes pour prévenir les attaques par injection SQL Introduction : Dans le processus de développement d'applications Web, la base de données est l'un des composants très importants. Cependant, des connexions incorrectes ou non sécurisées aux bases de données peuvent permettre à des utilisateurs malveillants de mener des attaques par injection SQL, ce qui menacera sérieusement la sécurité de nos applications. Afin de protéger l'application contre les attaques par injection SQL, nous devons prendre certaines mesures de sécurité. Cet article présentera certaines méthodes de sécurité de connexion à la base de données PHP couramment utilisées et donnera des exemples de code correspondants. 1. faire

Avec le développement rapide d’Internet, les problèmes de sécurité des sites Web sont devenus un problème majeur dans le monde en ligne. L'attaque de script intersite (XSS) est une vulnérabilité de sécurité courante qui exploite les faiblesses des sites Web pour injecter des scripts malveillants dans les pages Web afin de voler et de falsifier les informations des utilisateurs. En tant que langage de programmation efficace et sûr, le langage Go nous fournit des outils et techniques puissants pour prévenir les attaques XSS. Cet article présentera quelques bonnes pratiques et techniques pour aider les développeurs du langage Go à prévenir et à résoudre efficacement les attaques XSS. pour toutes les entrées
