首页 > Web开发 > 详细

php安全处理

时间:2017-03-20 16:44:29      阅读:304      评论:0      收藏:0      [点我收藏+]

1、php.ini 修改 open_basedir=‘d:\wwwroot‘ //配置只能访问指定的网站目录

2、php.ini 修改 disable_funcitons=system,passthru,exec,shellexec,popen,phpinfo //禁止执行一些函数

3、php.ini 修改display_errors =On 为display_errors =Off  //禁止显示一些错误

4、跨站脚本攻击(XSS)
防御方法:写函数或者用htmlentities来进行对html或者javascript标签进行过滤
5、sql注入漏洞

防御方法:写函数或者addslashes()来过滤SQL关键字即可

6、跨站请求伪造攻击(CSRF-防盗链)
如要删除一个条记录,没有判断来源信息,任何人都能删除

防御方法:在请求页加上
session_statrt();
$token=md5(uniqid(rand(),TRUE));
$_SESSION[‘token‘]=$token;
在表单中加入
<input type="hidden" name="token" value="<?=$token?>"/>

在接收页中验证如:

if(isset($_SESSION[‘token‘]) && $_POST[‘token‘]==$_SESSION[‘token‘])

{

  验证成功则执行语句

}

7、表单是否重复提交

解决方法:

在提交页处理如下:

session_statrt();

$_SESSION[‘conn‘]=time();
$_SESSION[‘connid‘]=time();

<input type="hidden" name="connid" value="<?=$_SESSION[‘connid‘]?>"/>

接收页如下

if($_SESSION[‘conn‘] != $_POST[‘connid‘])

{

  echo ‘重复提交‘;

}else

{

  echo ‘验证通过处理内容‘;

}

8、文件上传漏洞

在上传的时候过滤图片类型,文件后缀,图片大小即可 

php安全处理

原文:http://www.cnblogs.com/bk7788/p/6589737.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!