首页建站经验 打造更具安全性的ecshop

打造更具安全性的ecshop

1,修改init.php文件,@ini_set('display_errors', 1);改为@ini_set('display_errors', 0);2,修改cls_mysql.php文件的ErrorMsg函数,注释掉那些错误提示,或者把错误…

1,修改init.php文件,@ini_set('display_errors', 1);改为@ini_set('display_errors', 0);

2,修改cls_mysql.php文件的ErrorMsg函数,注释掉那些错误提示,或者把错误写入文件。

3,给所有$_COOKIE,$_POST,$_GET,$_REQUEST变量加sql关键字过滤。

4,修改后台地址,不要使用默认的admin

5,如有可能去掉后台的模板管理-》库项目管理功能

6, 去掉后台邮件编辑的权限,去掉订单编辑的权限

7,如有可能,更改后台cookies登录的方式

修改如:cls_mysql

function ErrorMsg($message = '', $sql = '')

{

echo "Some Errors....pls check log file.";

if(!file_exists(ROOT_PATH.'data/sql_log'))

{

mkdir(ROOT_PATH.'data/sql_log');

}

if ($message)

{

$msg="ECSHOP inforn: $message";

}

else

{

$msg="MySQL server error report:rn".print_r($this->error_message,true);

}

@file_put_contents(ROOT_PATH.'data/sql_log/'.date('Y-m-d-H-i-s',time()).'.txt',$msg);

exit;

}

修改addslashes_deep函数:

该函数对数组的值和key都进行了addslashes处理,并且根据需要,还可以进行htmlspecialchars过滤。

在init.php文件

$_GET = addslashes_deep($_GET,true);

$_POST = addslashes_deep($_POST,true);

$_COOKIE = addslashes_deep($_COOKIE,true);

$_REQUEST = addslashes_deep($_REQUEST,true);

function addslashes_deep($value,$htmlspecialchars=false)

{

if (empty($value))

{

return $value;

}

else

{

if(is_array($value))

{

foreach($value as $key => $v)

{

unset($value[$key]);

if($htmlspecialchars==true)

{

$key=get_magic_quotes_gpc()? addslashes(stripslashes(htmlspecialchars($key,ENT_NOQUOTES))) : addslashes(htmlspecialchars($key,ENT_NOQUOTES));

}

else{

$key=get_magic_quotes_gpc()? addslashes(stripslashes($key)) : addslashes($key);

}

if(is_array($v))

{

$value[$key]=addslashes_deep($v);

}

else{

if($htmlspecialchars==true)

{

$value[$key]=get_magic_quotes_gpc()? addslashes(stripslashes(htmlspecialchars($v,ENT_NOQUOTES))) : addslashes(htmlspecialchars($v,ENT_NOQUOTES));

}

else{

$value[$key]=get_magic_quotes_gpc()? addslashes(stripslashes($v)) : addslashes($v);

}

}

}

}

else{

if($htmlspecialchars==true)

{

$value=get_magic_quotes_gpc()? addslashes(stripslashes(htmlspecialchars($value,ENT_NOQUOTES))) : addslashes(htmlspecialchars($value,ENT_NOQUOTES));

}

else{

$value=get_magic_quotes_gpc()? addslashes(stripslashes($value)) : addslashes($value);

}

}

return $value;

}

}

本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/16005.html
上一篇网站备案不再关站 使用PHP代码24小时营业
下一篇 Java中的标识符
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部