| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> PHP知识库 -> 文件上传漏洞php相关函数 -> 正文阅读 |
|
[PHP知识库]文件上传漏洞php相关函数 |
1.file_exists(path) 检查文件或目录是否存在。
如果指定的文件或目录存在则返回 TRUE,否则返回 FALSE 2.move_uploaded_file(file,newloc) 把上传的文件移动到新位置。 如果成功该函数返回 TRUE,如果失败则返回 FALSE。
3.在服务端对数据包的MIME进行检查 $_FILES['upload_file']['type'] == 'image/jpeg‘ 4.trim(string,charlist) 移除字符串两侧的空白字符或其他预定义字符。
5.deldot(s) 为upload-lab中一个常见的函数,它实际为一个自定义函数,定义于common.php中
函数定义如下: function deldot($s){ for($i = strlen($s)-1;$i>0;$i--){ $c = substr($s,$i,1); if($i == strlen($s)-1 and $c != '.'){ return $s; } ? if($c != '.'){ return substr($s,0,$i+1); } } } 即从字符串的尾部开始,从后向前删除点.,直到该字符串的末尾字符不是.为止。 6.strrchr(string,char) 查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符。
7.strtolower(string) 把字符串转换为小写。
8.str_ireplace(find,replace,string,count) 替换字符串中的一些字符(不区分大小写)。
9.in_array(value,array,type) 搜索数组中是否存在指定的值。
11.strrpos(string,find,start) 查找字符串在另一字符串中最后一次出现的位置(区分大小写)。
返回字符串在另一字符串中最后一次出现的位置,如果没有找到字符串则返回 FALSE。字符串位置从 0 开始,不是从 1 开始。 12.fopen(filename,mode,include_path,context)打开一个文件或 URL。 如果 fopen() 失败,它将返回 FALSE 并附带错误信息。您可以通过在函数名前面添加一个 '@' 来隐藏错误输出。
13.string fread ( resource $handle , int $length )读取打开的文件。 函数会在到达指定长度或读到文件末尾(EOF)时(以先到者为准),停止运行。 该函数返回读取的字符串,如果失败则返回 FALSE。
14.fclose(file)函数关闭打开的文件。 该函数如果成功则返回 TRUE,如果失败则返回 FALSE。
15.unpack(format,data)函数从二进制字符串对数据进行解包。
如果成功则返回数组,如果失败则返回 FALSE。 16.int intval ( mixed $var [, int $base = 10 ] ) intval() 函数用于获取变量的整数值。 intval() 函数通过使用指定的进制 base 转换(默认是十进制),返回变量 var 的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE 错误并返回 1。 参数说明:
如果 base 是 0,通过检测 var 的格式来决定使用的进制:
17.getimagesize() 函数用于获取图像大小及相关信息,成功返回一个数组,失败则返回 FALSE 并产生一条 E_WARNING 级的错误信息。 getimagesize() 函数将测定任何 GIF,JPG,PNG,SWF,SWC,PSD,TIFF,BMP,IFF,JP2,JPX,JB2,JPC,XBM 或 WBMP 图像文件的大小并返回图像的尺寸以及文件类型及图片高度与宽度。 18.image_type_to_extension — 根据指定的图像类型返回对应的后缀名。 image_type_to_extension(IMAGETYPE_PNG) 根据给定的常量 IMAGETYPE_XXX 返回后缀名。 18.stripos(string,find,start)函数查找字符串在另一字符串中第一次出现的位置(不区分大小写)。
返回字符串在另一字符串中第一次出现的位置,如果没有找到字符串则返回 FALSE。注释:字符串位置从 0 开始,不是从 1 开始。 19.int exif_imagetype( string $filename ) 该函数接受单个参数$filename,该参数保存图像的名称或URL 返回值:此函数返回与IMAGETYPE常量之一相对应的整数,如下所示:
20.basename(path,suffix)函数返回路径中的文件名部分。
21.resource imagecreatefromjpeg( string $filename ) 参数:该函数接受单个参数$filename,该参数保存图像的名称。返回值:成功时此函数返回图像资源标识符,错误时返回FALSE 22.unlink(filename,context)函数删除文件。 如果成功,该函数返回 TRUE。如果失败,则返回 FALSE。
23.string strval ( mixed $var )函数用于获取变量的字符串值 参数说明:
24.bool imagejpeg( resource $image, int $to, int $quality ) 参数:此函数接受上述和以下所述的三个参数:
返回值:如果成功,此函数将返回TRUE,否则将返回FALSE。 第三个参数很重要,它决定了你重新生成的图片质量及大小。imagejpeg和imagegif,这个参数的范围是1-100,默认是100,数值越大,图片质量越高;imagepng是1-9 25.isUploadedFile() 如果文件尚未上载到web服务器上的/tmp,它将返回错误代码 26.pathinfo(path,options)返回的数组元素如下:
如果不是请求所有的元素,则 pathinfo() 函数返回字符串。 27.explode(separator,string,limit)函数使用一个字符串分割另一个字符串,并返回由字符串组成的数组。
28.reset() 函数将内部指针指向数组中的第一个元素,并输出。 |
|
PHP知识库 最新文章 |
Laravel 下实现 Google 2fa 验证 |
UUCTF WP |
DASCTF10月 web |
XAMPP任意命令执行提升权限漏洞(CVE-2020- |
[GYCTF2020]Easyphp |
iwebsec靶场 代码执行关卡通关笔记 |
多个线程同步执行,多个线程依次执行,多个 |
php 没事记录下常用方法 (TP5.1) |
php之jwt |
2021-09-18 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 13:49:32- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |