PHP语法过于灵活,给安全工作带来了一些困扰,同时有很多历史遗留问题。
一、文件包含漏洞
1、本地文件包含
2、远程文件包含
3、本地文件包含的利用技巧
二、变量覆盖漏洞
1、全局变量覆盖
2、extract()变量覆盖
3、遍历初始化变量
4、import_request_variables变量覆盖
5、parse_str()变量覆盖
三、代码执行漏洞
1、“危险函数"执行代码
1)phpMyAdmin 3.4.3.1 远程代码执行漏洞
2)MyBB 1.4 远程代码执行漏洞:挖掘漏洞的过程,通常需要先找到危险函数,然后回溯函数的调用过程,最终看在整个调用的过程中用户是否有可能控制输入。
2、”文件写入“执行代码
3、其他执行代码方式
1)直接执行代码的函数:eval()、assert()、system()、exec()、shell_exec()、passthru()、escapeshellcmd()、pcntl_exec()等.
2)文件包含:include(),include_once(),require(),require_once()
3)本地文件写入:
4)preg_replace()代码执行:
5)动态函数执行:
6)Curly Syntax
7)回调函数执行代码
8)unserialize()导致代码执行
四、定制安全的PHP环境
1、register_globals
2、open_basedir
3、allow_url_include
4、display_errors
5、log_errors
6、magic_quotes_gpc
7、cgi.fix_pathinfo
8、session.cookie_httponly
9、session.cookie_secure
10、safe_mode
11、disable_functions
一、文件包含漏洞
1、本地文件包含
2、远程文件包含
3、本地文件包含的利用技巧
二、变量覆盖漏洞
1、全局变量覆盖
2、extract()变量覆盖
3、遍历初始化变量
4、import_request_variables变量覆盖
5、parse_str()变量覆盖
三、代码执行漏洞
1、“危险函数"执行代码
1)phpMyAdmin 3.4.3.1 远程代码执行漏洞
2)MyBB 1.4 远程代码执行漏洞:挖掘漏洞的过程,通常需要先找到危险函数,然后回溯函数的调用过程,最终看在整个调用的过程中用户是否有可能控制输入。
2、”文件写入“执行代码
3、其他执行代码方式
1)直接执行代码的函数:eval()、assert()、system()、exec()、shell_exec()、passthru()、escapeshellcmd()、pcntl_exec()等.
2)文件包含:include(),include_once(),require(),require_once()
3)本地文件写入:
4)preg_replace()代码执行:
5)动态函数执行:
6)Curly Syntax
7)回调函数执行代码
8)unserialize()导致代码执行
四、定制安全的PHP环境
1、register_globals
2、open_basedir
3、allow_url_include
4、display_errors
5、log_errors
6、magic_quotes_gpc
7、cgi.fix_pathinfo
8、session.cookie_httponly
9、session.cookie_secure
10、safe_mode
11、disable_functions
没有评论:
发表评论