PHP与SQL注入攻击[一]


Haohappy
http://blog.csdn.net/Haohappy2004

SQL注入攻击是黑客攻击网站最常用的手段。如果你的站点没有使用严格的用户输入检验,那么非常容易遭到SQL注入攻击。SQL注入攻击通常通过给站点数据库提交不良的数据或查询语句来实现,很可能使数据库中的纪录遭到暴露,更改或被删除。下面来谈谈SQL注入攻击是如何实现的,又如何防范。

看这个例子:

// supposed input
$name = “ilia'; DELETE FROM users;”;
mysql_query(“SELECT * FROM users WHERE name='{$name}'”);


很明显最后数据库执行的命令是:

SELECT * FROM users WHERE name=ilia; DELETE FROM users


这就给数据库带来了灾难性的后果--所有记录都被删除了。

不过如果你使用的数据库是MySQL,那么还好,mysql_query()函数不允许直接执行这样的操作(不能单行进行多个语句操作),所以你可以放心。如果你使用的数据库是SQLite或者PostgreSQL,支持这样的语句,那么就将面临灭顶之灾了。



相关阅读:
使用ADO.NET2.0提升数据交互性能(4)
纯JS转换Select为Combox,完美实现原select所有功能
Z-blog系统常量标签说明
ASP.NET AJAX 拖放功能6种实现方法总结
javascript表单域与json数据间的交互
用PHP 快速生成 Flash 动画的方法
屏蔽F1~F12的快捷键的js函数
VBS教程:方法-DriveExists 方法
SQL Server 2008 升级Reporting Services
Jsp&Servelet 学习笔记-对一个Servlet创建多个Mapping
Oracle 使用序列创建自增字段
SQL Server数据库对上亿表的操作经验总结
防范四种级别攻击确保Linux服务器安全
用MySQL内建复制功能来优化可用性
快速导航

Copyright © 2016 phpStudy |