展开

关键词

代码安全审计:当file_exists遇上eval

起因 昨晚有人在一QQ群上问lcms(一款网站CMS系统)的一个漏洞是怎么形成的,说了半天。他截图不完整,于是叫他传代码,下载回来找到router.php代码片...

35490

php ZipArchive实现多文件打包下载实例

$saveName..zip; if(file_exists($filename)){ unlink($filename); } $zip = new ZipArchive(); if ($zip- open DIRECTORY_SEPARATOR,$item); $filename = str_replace(,DIRECTORY_SEPARATOR,$filename); } var_dump($item); var_dump(file_exists ($item));die; if (file_exists($item)){ $zip- addFile($item,basename($item)); } } $zip- close(); if(! file_exists($filename)){ exit(无法找到文件); 即使创建,仍有可能失败 } header(Content-Type: applicationzip); header(Content-disposition

19931
  • 广告
    关闭

    50+款云产品免费体验

    提供包括云服务器,云数据库在内的50+款云计算产品。打造一站式的云产品试用服务,助力开发者和企业零门槛上云。

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    PHP笔记 | 文件系统

    PHP文件系统之判断文件是否存在一般情况下在对文件进行操作的时候需要先判断文件是否存在, PHP中常用来判断文件存在的函数有两个——is_file与file_exists.如果只是判断文件存在, 使用file_exists 就行, file_exists不仅可以判断文件是否存在, 同时也可以判断目录是否存在; 从函数名可以看出, is_file是确切的判断给定的路径是否是一个文件。 $filename = .test.txt;if (file_exists($filename)) { echo file_get_contents($filename);}$filename = .test.txt

    21340

    LaravelLumen 优化包 - 注解注入路由自动配置

    . ; if (file_exists($appConfigDir)) { return $appConfigDir; } else if (file_exists($path = __DIR__ . $name . .php; if (file_exists($appConfigPath)) { return $appConfigPath; } else if (file_exists($path

    59910

    PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法

    **function dirsize($path){ $size = 0; $stack = array(); if (file_exists($path)) { $path = realpath($ **function copydir($source, $dest){ $stack = array(); $target = ; if (file_exists($source)) { if (! file_exists($dest)) mkdir($dest); $source = realpath($source) . ; $dest = realpath($dest) . ; $target file_exists($dest . $dir)) mkdir($dest . $dir); while (($item = readdir($handle)) ! (file_exists($path));}查看执行时间这是一个查看代码执行时间(毫秒数)的函数,通过回调方式执行目标代码(或函数),最终计算出执行的时间(毫秒)。

    8760

    CI3.0 默认路由问题 解决办法

    in the routing file.解决办地,修改文件 systemcoreRouter.php_set_routing 函数内前面加 Load the routes.php file. if (file_exists (APPPATH.configroutes.php)) { include(APPPATH.configroutes.php); } if (file_exists(APPPATH.config.ENVIRONMENT.routes.php

    10130

    PHP自动加载类—__autoload()和spl_autoload_register()

    = new Test();2.使用__autoload()自动包含:classname) {     class_file = strtolower(classname)..php;     if (file_exists 语法:bool  spl_autoload_register ( )classname) {     class_file = strtolower(classname)..php;     if (file_exists );也可以使用类的方法来实现自定义的加载函数classname)     {         class_file = strtolower(classname)..php;         if (file_exists

    12220

    为什么Composer在生产环境要使用dumpautoload

    DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1); foreach ($this->prefixDirsPsr4 as $dir) { if (file_exists pathEnd)) { return $file; } } } } } PSR-4 fallback dirs foreach ($this->fallbackDirsPsr4 as $dir) { if (file_exists prefixesPsr0 as $prefix => $dirs) { if (0 === strpos($class, $prefix)) { foreach ($dirs as $dir) { if (file_exists logicalPathPsr0)) { return $file; } } } } } PSR-0 fallback dirs foreach ($this->fallbackDirsPsr0 as $dir) { if (file_exists

    45520

    PHP实现图片压缩

    file_exists($public_path. $attach_fileext, $sFile);判断是否已压缩图片,若是则返回压缩图片路径if(file_exists($public_path. file_exists($public_path.

    20440

    PHP实现图片压缩

    file_exists($public_path. $attach_fileext, $sFile); 判断是否已压缩图片,若是则返回压缩图片路径 if(file_exists($public_path. file_exists($public_path.

    7000

    PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法

    **文件夹大小@param $path@return int*function dirsize($path){ 初始条件 $size = 0;$stack = array();if (file_exists file_exists($dest)) mkdir($dest);$source = realpath($source) . ;$dest = realpath($dest) . file_exists($dest . $dir)) mkdir($dest . $dir); 执行过程 while (($item = readdir($handle)) ! file_exists($path)) return false;$path = realpath($path) . (file_exists($path));}查看执行时间这是一个查看代码执行时间(毫秒数)的函数,通过回调方式执行目标代码(或函数),最终计算出执行的时间(毫秒)。

    8720

    Thinkphp自定义生成缩略图尺寸的方法

    file_exists($name_thumb)) { if (file_exists($logo)) { $image = new ThinkImage(); $image- open($logo);

    11030

    php判断目录存在的简单方法

    PHP判断文件或目录是否存在file_exists:判断文件是否存在$file = check.txt; if(file_exists($file)) { echo 当前目录中,文件.

    16651

    CodeIgniter (CI) 框架学习 -- load_class

    folder then in the native systemlibraries folder foreach (array(APPPATH, BASEPATH) as $path) { if (file_exists If so we load it too if (file_exists(APPPATH.$directory..config_item(subclass_prefix). BASEPATH 为CI的system文件夹绝对地址foreach (array(APPPATH, BASEPATH) as $path){ if (file_exists($path. 如果是 我们也同样加载它 判断在 ..applicationxxx 文件夹下面是否存在这个文件 subclass_prefix 配置见 下面的代码段if (file_exists(APPPATH.

    37210

    windows环境下 php 将office文件(wordexcelppt)转化为pdf(转)

    file_exists($srcfilename)){ 6 return; 7 } 8 $ppt = new COM(powerpoint.application) or die(Unable to instantiate file_exists($srcfilename)){ 6 return; 7 } 8 $excel = new COM(excel.application) or die(Unable to instantiate file_exists($srcfilename)){ 6 return; 7 } 8 9 $word = new COM(word.application) or die(Cant start Word

    53420

    PHP实现打包下载文件的方法示例

    file_exists($zipname)) {$res = $zip->open($zipname, ZipArchive::CREATE | ZipArchive::OVERWRITE);if ($ zip->renameName($end, $names);}$zip->close();} else {return ;}通过前端js跳转zip地址下载,让不使用php代码下载zip文件if (file_exists $redirect);}直接写文件的方式下载到客户端if (file_exists($zipname)) {header(Cache-Control: public);header(Content-Description

    9420

    Upload-labs通关笔记(二)

    Pass 依赖这两个组件中间件设置 Apache以 moudel 方式连接第六关源码解读$is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists 直接可上传 php 文件成功第七关源码解读$is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists($UPLOAD_ADDR 第八关源码解读$is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists($UPLOAD_ADDR)) { $deny_ext 第九关源码解读 $is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists($UPLOAD_ADDR)) { $deny_ext localhostupload-labsuploadshell1.php访问mm第十关源码解读$is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists

    21510

    Uploads-labs上传绕过(上)

    第四关:.htaccess上传 $is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists(UPLOAD_PATH)) { $ 第五关:逻辑绕过$is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists(UPLOAD_PATH)) { $deny_ext 第六关:大写绕过$is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists(UPLOAD_PATH)) { $deny_ext 第八关:点空格点绕过$is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists(UPLOAD_PATH)) { $deny_ext 第九关:::$DATA绕过(windows) $is_upload = false;$msg = null;if (isset($_POST)) { if (file_exists(UPLOAD_PATH

    53610

    你应该这个姿势学习PHP(4)

    feof($handle)){ echo fgetc($handle);}fclose($handle);3、file_exists() 1) file_exists() 检查文件或者目录是否存在应用场景 file_exists($handle)){ mkdir($handle,0777,true);}4、is_dir() is_file() is_link() is_readable() is_writeable

    697150

    反序列化之Phar流

    可以上传Phar文件 如file_exists(),fopen(),file_get_contents(),file()等文件操作的函数 有可以利用的魔术方法 如__destruct(),_wa keup 因为我们利用这个漏洞主要是为了触发它的反序列化 signature 签名,放在文件末尾 文件函数部分文件函数 通过phar:伪协议解析phar文件时都会使meta-data反序列化受影响的函数有: fileatime file_exists 然后就是upload_un.php里的内容,因为file_exists函数会自动为phar文件进行反序列化,所以便会触发__destruct魔法函数,进而造成命令执行使用下面代码先生成phar文件 文件头记得要以

    36420

    相关产品

    • 云服务器

      云服务器

      腾讯云服务器(CVM)为您提供安全可靠的弹性云计算服务。只需几分钟,您就可以在云端获取和启用云服务器,并实时扩展或缩减云计算资源。云服务器 支持按实际使用的资源计费,可以为您节约计算成本。

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭

      扫码关注云+社区

      领取腾讯云代金券