打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
打造更具安全性的ecshop

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 info\r\n: $message";
}
else
{
$msg="MySQL server error report:\r\n".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);

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

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;

}

}

下一篇: 让ecshop商品选择品牌时按拼音排序 上一篇: ECSHOP常用后台SQL命令

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
php中stripslashes和addslashes的区别
php中addslashes(),htmlspecialchars
UChome 代码分析讲解:uc_client模块的client.php文件
php magic_quotes_gpc的一点认识与分析
正确理解PHP转义的真正含义
PHP教程 Magic quotes
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服