标签:浏览器 解析 写入 后缀名 前端 php 读取 文件头 ===
let ext = path.extname(file.name);
if (ext === ".js") {
throw new Error("不要上传坏文件");
}
但是可以通过改后缀名的方式,达到攻击的目的
if (file.type != "image/png") {
throw new Error("只允许PNG");
}
类型是从浏览器读取的,可以不经过浏览器上传文件,依然不安全
var fileBuffer = fs.readerFileSync(file.path);
fileBuffer[0] == 0x5b;
但是可以通过在文件头部写入对应的内容
GIF89a
<?php
所以还是不安全
标签:浏览器 解析 写入 后缀名 前端 php 读取 文件头 ===
原文地址:https://www.cnblogs.com/ygjzs/p/12246827.html