不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2016-11-30 19:25  分类:编程基础/Web安全  编辑

ASCII码大致可以分作三部分组成。

  1. ASCII非打印控制字符
  2. ASCII打印字符;
  3. 扩展ASCII打印字符
作者:php-note.com  发布于:2016-11-24 19:20  分类:编程基础/Web安全  编辑

我们都知道,只要合理正确使用PDO,可以基本上防止SQL注入的产生,本文主要回答以下几个问题:

  • 为什么要使用PDO而不是mysql_connect?
  • 为何PDO能防注入?
  • 使用PDO防注入的时候应该特别注意什么?
作者:php-note.com  发布于:2016-11-23 19:19  分类:编程基础/Web安全  编辑

首先:不要使用 mysql_escape_string(),它已被弃用,请使用 mysql_real_escape_string() 代替它。

mysql_real_escape_string() 和 addslashes() 的区别在于:

区别一:

addslashes() 不知道任何有关MySQL连接的字符集。如果你给所使用的MySQL连接传递一个包含字节编码之外的其他编码的字符串,它会很愉快地把所有值为字符'、"、\和\x00的字节进行转义。如果你正在使用不同于8位和UTF-8的其它字符,这些字节的值不一定全部都是表示字符'、"、\和\x00。可能造成的结果是,MySQL接收这些字符后出现错误。

作者:php-note.com  发布于:2016-11-22 19:18  分类:编程基础/Web安全  编辑

1. addslashes()

addslashes()对SQL语句中的特殊字符进行转义操作,包括(‘), (“), (), (NUL)四个字符,此函数在DBMS没有自己的转义函数时候使用,但是如果DBMS有自己的转义函数,那么推荐使用原装函数,比如MySQL有mysql_real_escape_string()函数用来转义SQL。 注意在PHP5.3之前,magic_quotes_gpc是默认开启的,其主要是在$GET, $POST, $COOKIE上执行addslashes()操作,所以不需要在这些变量上重复调用addslashes(),否则会double escaping的。不过magic_quotes_gpc在PHP5.3就已经被废弃,从PHP5.4开始就已经被移除了,如果使用PHP最新版本可以不用担心这个问题。stripslashes()为addslashes()的unescape()函数。

作者:php-note.com  发布于:2016-11-21 13:11  分类:编程基础/Web安全  编辑

(1) 打开php的安全模式

php的安全模式是个非常重要的内嵌的安全机制,能够控制一些php中的函数,比如system(),同时把很多文件操作函数进行了权限控制,也不允许对某些关键文件的文件,比如/etc/passwd,但是默认的php.ini是没有打开安全模式的,我们把它打开:

safe_mode = on

作者:php-note.com  发布于:2016-11-21 13:11  分类:编程基础/Web安全  编辑

1. PHP文件包含漏洞介绍

首先,我们来介绍下何为文件包含漏洞。严格来说,文件包含漏洞是“代码注入”的一种。其原理就是注入一段用户能控制的脚本或代码,并让服务端执行。“代码注入”的典型代表就是文件包含。文件包含漏洞可能出现在JSP、PHP、ASP等语言中,原理都是一样的,本文只介绍PHP文件包含漏洞。

作者:php-note.com  发布于:2015-09-04 00:18  分类:编程基础/Web安全  编辑

1、svn diff 的用法

1.1 对比当前本地的工作拷贝文件(working copy)和缓存在.svn下的版本库文件的区别

svn diff

1.2 对比当前本地的工作拷贝文件(working copy)和任意版本A的差异

作者:php-note.com  发布于:2015-06-08 15:28  分类:编程基础/Web安全  编辑
作者:php-note.com  发布于:2015-03-10 19:17  分类:编程基础/Web安全  编辑

什么是长连接、长轮询?

用通俗易懂的话来说,就是客户端不停的向服务器发送请求以获取最新的数据信息。这里的“不停”其实是有停止的,只是我们人眼无法分辨是否停止,它只是一种快速的停下然后又立即开始连接而已。

作者:php-note.com  发布于:2015-03-08 23:12  分类:编程基础/Web安全  编辑

PHP作为一门强大的脚本语言被越来越多的web应用程序采用,不规范的PHP安全配置可能会带来敏感信息泄漏、SQL注射、远程包含等问题,规范的安全配置可保障最基本的安全环境。下面我们分析几个会引发安全问题的PHP配置,并给出建议的选项。

1、register_globals = Off

PHP在进程启动时,会根据register_globals的设置,判断是否将$_GET、$_POST、$_COOKIE、$_ENV、$_SERVER、$REQUEST等数组变量里的内容自动注册为全局变量。