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、文件上传漏洞

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

随机推荐

  1. [转]解析UML建模语言中的UML图分类、 UML各种图形及作用

    本文向大家介绍一下UML图分类,作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分. UML图大致可分为五类,共有九种图形. AD: 本文和大家重点讨论一下UML图分类,标准建模语言U ...

  2. Ubantu Mark

    说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装.卸载和删除的方法. 一.U ...

  3. [转载]memcached 命令操作详解

    转载:http://www.cnblogs.com/azheng007/p/3159345.html 一.存储命令 存储命令的格式: <command name> <key> ...

  4. C#-java RSA加密解密

    using Org.BouncyCastle.Math; using Org.BouncyCastle.Crypto.Parameters; using Org.BouncyCastle.Securi ...

  5. Jquery 一次处理多个ajax请求的代码

    Jquery 一次处理多个ajax请求的代码,需要的朋友可以参考下.   复制代码代码如下: $(document).ready(function () { $('#getsetgo').click( ...

  6. linux UART串口驱动开发文档

    转:http://www.360doc.com/content/10/0417/18/829197_23519037.shtml linux UART串口驱动开发文档时间:2010-01-09 14: ...

  7. Dedecms会员中心注入漏洞

    详细说明: member/buy_action.php   require_once(dirname(__FILE__)."/config.php");   CheckRank(0 ...

  8. scrapy-splash抓取动态数据例子六

    一.介绍 本例子用scrapy-splash抓取中广互联网站给定关键字抓取咨询信息. 给定关键字:打通:融合:电视 抓取信息内如下: 1.资讯标题 2.资讯链接 3.资讯时间 4.资讯来源 二.网站信 ...

  9. phpcms v9自定义HTML文件名

    用过织梦.Wordpress.Zblog等程序的网友都知道,发布内容的时候可以自定义生成的HTML文件名,这个功能对于SEO来说非常有好 处,但是到了V9之后却很遗憾, 这个功能却没有了,现在你只要对 ...

  10. FreeMarker最简单的例子(2)

    二.通过String来创建模版对象,并执行插值处理 代码: package com.abc; import freemarker.template.Template; import java.io.O ...