PHP 安全检查表(注入(inject)、 session 等)

标签 php mysql security sql-injection

那么使用 PHP 和 MySql 的人应该关注哪些事情才能最大限度地提高安全性。

我做过的事情:
-mysql_real_escape_string 所有输入
-转义em后验证所有输入
-在我的表名之前放置随机字母数字
-50字符盐+ Ripemd密码

这是我认为我偷懒的地方:
-我对 session 和保护 session 一无所知。如果您所做的只是:

session_start(); 
$_SESSION['login']= $login;

并检查它:

session_start();
if(isset($_SESSION['login'])){

-我听说过一些有关其他形式的注入(inject)的信息,例如跨站注入(inject)等等…… -可能还有很多我不知道的其他事情。

是否有关于确保 php 安全的“ list ”/Quicktut?我什至不知道我应该担心什么。我现在有点后悔没有构建 cakephp,因为我不是专业人士。

最佳答案

您可以尝试通过测试用户代理来避免劫持。

类似的事情:

if (isset($_SESSION['userAgent'])) {
    if ($_SESSION['userAgent'] != md5($_SERVER['HTTP_USER_AGENT'])) {
       // HACK !!!
       // Kill the process or ask for authenticating
    }
}
else {
    $_SESSION['userAgent'] = md5($_SERVER['HTTP_USER_AGENT']);
}

关于PHP 安全检查表(注入(inject)、 session 等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4561249/

相关文章:

php - 如何从在不同域上传的单个数据库连接两个网站

php - 如何实现服务器一次推送更多值?

mysql - SQL INSERT INTO 语句..错误,我对 SQL 很陌生

security - 无休止的 session : any security risk?

java - 从 Spring 在 LDAP 中设置 SSHA 密码

php - MySQL-排序后插入行

php - CSV 文件中值的奇怪二进制字符串(在 Laravel 中导入包含丹麦语 æ、ø 和 å 字母)

mysql - 将 ISAM 表文件(ISD、ISM)从一个 mysql 导入到另一个

php - 循环数组以在数据库中查找结果

security - 将自定义上下文信息添加到 EJB 方法调用