当前位置: 首页 > wzjs >正文

网站建站助手知识搜索引擎

网站建站助手,知识搜索引擎,哪里学网站开发,如何推广一个新的app一、分析源代码//index.php // 初始化变量:标记上传状态和错误消息 $is_upload false; $msg null;// 检查是否通过POST方式提交了表单 if (isset($_POST[submit])) {// 引入自定义上传类require_once("./myupload.php");// 生成基于时间戳的文件名&…

一、分析源代码

//index.php
// 初始化变量:标记上传状态和错误消息
$is_upload = false;
$msg = null;// 检查是否通过POST方式提交了表单
if (isset($_POST['submit']))
{// 引入自定义上传类require_once("./myupload.php");// 生成基于时间戳的文件名(避免重复)$imgFileName = time();// 创建上传类实例,传入上传文件的相关信息$u = new MyUpload($_FILES['upload_file']['name'],      // 原始文件名$_FILES['upload_file']['tmp_name'],  // 临时文件路径$_FILES['upload_file']['size'],      // 文件大小$imgFileName                          // 自定义文件名);// 调用上传方法,传入目标目录(由UPLOAD_PATH常量定义)$status_code = $u->upload(UPLOAD_PATH);// 根据返回的状态码处理结果switch ($status_code) {case 1:$is_upload = true;$img_path = $u->cls_upload_dir . $u->cls_file_rename_to;break;case 2:$msg = '文件已经被上传,但没有重命名。';break; case -1:$msg = '这个文件不能上传到服务器的临时文件存储目录。';break; case -2:$msg = '上传失败,上传目录不可写。';break; case -3:$msg = '上传失败,无法上传该类型文件。';break; case -4:$msg = '上传失败,上传的文件过大。';break; case -5:$msg = '上传失败,服务器已经存在相同名称文件。';break; case -6:$msg = '文件无法上传,文件不能复制到目标目录。';break;      default:$msg = '未知错误!';break;}
}
//myupload.php 
class MyUpload{// 允许上传的文件扩展名白名单(包含多种类型)var $cls_arr_ext_accepted = array(".doc", ".xls", ".txt", ".pdf", ".gif", ".jpg", ".zip", ".rar", ".7z",".ppt",".html", ".xml", ".tiff", ".jpeg", ".png" );/** upload()**** 上传文件的主方法,外部只需调用此方法** @param String 上传目标目录** @returns void**/function upload( $dir ){// 检查文件是否成功上传到临时目录$ret = $this->isUploadedFile();if( $ret != 1 ){return $this->resultUpload( $ret );}// 设置并验证上传目录$ret = $this->setDir( $dir );if( $ret != 1 ){return $this->resultUpload( $ret );}// 检查文件扩展名是否在白名单中$ret = $this->checkExtension();if( $ret != 1 ){return $this->resultUpload( $ret );}// 检查文件大小是否超过限制$ret = $this->checkSize();if( $ret != 1 ){return $this->resultUpload( $ret );    }// 如果设置了检查文件存在性的标志if( $this->cls_file_exists == 1 ){// 检查目标目录是否已存在同名文件$ret = $this->checkFileExists();if( $ret != 1 ){return $this->resultUpload( $ret );    }}// 所有检查通过,准备将文件从临时目录移动到目标目录$ret = $this->move();if( $ret != 1 ){return $this->resultUpload( $ret );    }// 检查是否需要重命名文件if( $this->cls_rename_file == 1 ){$ret = $this->renameFile();if( $ret != 1 ){return $this->resultUpload( $ret );    }}// 所有操作成功完成return $this->resultUpload( "SUCCESS" );}
}

 二、解题思路

这关的代码看上去很多,实际和上一关的差别不大,增加了文件扩展名的验证。参考条件竞争的思路,可以构造一个图片马重复上传。

其实直接上传一个图片马也可以,服务器对扩展名进行了检查,对文件数据没有检查,图片马会被保存,再利用文件包含漏洞访问就行了。

三、解题步骤

1.构造图片马上传。

2.利用文件包含漏洞访问木马(注意文件路径),成功。

http://www.dtcms.com/wzjs/60003.html

相关文章:

  • html5 手机网站 图标南宁网络优化seo费用
  • 响应式网站难做网站seo入门基础教程书籍
  • 拟定一个物流网站建设方案企业网络推广最简单方法
  • 做网站的要到处跑吗seo系统推广
  • 织梦仿商城网站seo外链推广工具
  • 小鱼儿网站做啥用的站长收录平台
  • 在线网站优化公司网络舆情优化公司
  • wordpress页面全屏的插件优化网站排名需要多少钱
  • 法治建设优秀网站关键词优化的策略
  • 宁波制作手机网站企业管理8大系统
  • 公众号开发者授权找索引擎seo
  • 做免费网站怎么赚钱的学历提升哪个教育机构好一些
  • 关于政府网站的建设网络平台的推广方法
  • 商务网站建设项目的技术可行性关键词推广哪家好
  • 公司网站模板内容aso优化师
  • 东北亚科技园里有做网站的吗网站怎么优化排名
  • 旅游网站建设与设计不收费推广网站有哪些
  • 十堰网站建设怎么样现在最火的推广平台
  • 西安外贸网站开发廊坊百度关键词优化
  • 做数学网站社群营销的具体方法
  • 文章编辑器wordpress武汉seo优化代理
  • h5网站做微信小程序网站的seo是什么意思
  • 珠海开发网站公司上海seo博客
  • 做网站不买服务器百度能搜到什么是网站
  • 洛阳网站建设优化案例百度seo优化分析
  • 电子商务网站建设分析论文最新实时大数据
  • 自建网站教程视频女性广告
  • 做网站公司汉狮团队郑州网络运营培训
  • 重庆市公共资源交易中心网官网泉州seo优化
  • 重庆网站建设套餐南宁seo教程