千家信息网

代码审计中常用导致漏洞函数有哪些

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,小编给大家分享一下代码审计中常用导致漏洞函数有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.文件包含A、本地文件包
千家信息网最后更新 2025年02月23日代码审计中常用导致漏洞函数有哪些

小编给大家分享一下代码审计中常用导致漏洞函数有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

1.文件包含

A、本地文件包含

include() 向上包含,向下包含,如果包含出错继续向下执行

include_once() 同上,只进行包含一次

require() 向上包含,向下包含,如果包含出错不下向下执行

require_once() 同上,只进行包含一次

B、远程文件包含:

在php.ini文件中

allow_url_include = on

C、文件包含截断

a、截断(php版本小于5.3)

b、问号截断(问号后面相当于请求的参数,伪截断)

c、英文(.) 反斜杠(/) 截断

2、文件读取(下载)漏洞:

搜索关键函数:

file_get_contents()highlight_file()fopen() 打开文件read file() 读取文件fread()fgetss()fgets()parse_ini_file()show_source()file()

3.文件上传漏洞:

搜索关键函数:

move_uploaded_file() 接着看调用这个函数的代码是否存在为限制上传格式或者可以绕过

(1) 未过滤或本地过滤:

服务器端未过滤,直接上传PHP格式的文件即可利用

(2) 黑名单扩展名过滤:

限制不够全面:IIS默认支持解析.asp,.cdx, .asa,.cer等

扩展名可绕过:

(3)空格绕过

不被允许的文件格式.php,但是我们可以上传文件名为1.php(注意后面有一个空格)

(4)文件头 content-type验证绕过:

getimagesize()函数:验证文件头只要为GIF89a,就会返回真

限制$_FILES["file"]["type"]的值 就是人为限制content-type为可控变量。

防范:

使用in_array()或 利用三等于===对比扩展名

保存上传文件是重命名,规则采用时间戳拼接随机数:md5(time() + rand(1,1000))

4.文件删除漏洞(不常见)

搜索关键函数:

unlink()利用回溯变量的方式

老版本下的session_destroy(),可以删除文件,现已基本被修复

Metinfo的任意文件删除漏洞$action = delete即可删除.sql的文件,如果文件不是sql直接删除提交的文件名

target.com/recovery.php?&action=delete&filename=../../index.php

5、代码执行

常规函数:

eval()assert()preg_replace(), call_user_func(), call_user_func_array(), array_map()

array_filter 依次将array数组中的每个值传递到callbach函数。如果callback函数返回true,则array数组的当前值会被包含

create_function

usort:使用自定一函数对数组进行排序

${}:中间的php代码将会被解析

执行函数:

preg_replace()函数:

mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

当$pattern处存在e修饰符时,$replacement 会被当做php代码执行

6.命令执行

搜索关键函数:

system()exec()shell_exec()passthru()pcntl_exec()popen()proc_open()

以上是"代码审计中常用导致漏洞函数有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

文件 函数 代码 漏洞 关键 搜索 限制 扩展名 数组 格式 篇文章 常用 审计 内容 变量 版本 空格 问号 验证 不够 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 jsoup设置代理服务器 重庆政府软件开发软件 服务器哪家便宜 服务器建议配置 网络技术与应用和计算机网络 广州软件学院网络技术系 彭水县新华软件开发培训 服务器的磁盘管理器怎么打开 qt界面选择已连接的数据库表 第一次使用云服务器体验 我国的网络安全问题现状分析 北京访客管理软件开发中心 大连锦程网络技术有限公司电话 网络安全应该怎样防护 云数据库kvstore是什么 2000数据库脱机怎么解决 网络安全管理体系证书认证哪家好 服务器含不含锂电池 智能科学与网络安全研究所 计算机系软件开发最难吗 路由器是小服务器吗 征集网络安全宣传周短视频 交大图书馆数据库外网 黄陂区标准网络安全维护报价表 2016年国家网络安全宣传周主题 平台化软件开发 第一次使用云服务器体验 西安软件开发好难找啊 飞科网络技术 软件开发起名规则
0