请考虑以下代码:
(部分HTML):
<input type="file" accept=".txt" id="theFile" class="button" />
((部分)JavaScript:
$('#theFile').on('change', function(e){
readFile(this.files[0], function(e) {
var text = e.target.result;
})
})
function readFile(file, callback){
var reader = new FileReader();
reader.onload = callback
reader.readAsText(file);
}
我的问题是,与FileReader
一起部署时,readAsText
的使用是否存在任何安全风险?例如,如果所选文件不是.txt而是其他内容,会发生什么?恶意用户是否有可能以某种方式攻击托管网站?
如果与问题相关,则完整的代码仅从.txt文件中检索文本并将其部分打印在屏幕上。
我很乐意提供其他需要提供的详细信息或信息。
创建网站时确实需要小心,如果您允许用户上传恶意文件,然后以某种方式允许他们在服务器端执行它们。例如,PHP网站的安全性不正确,您允许他们上传错误的PHP文件,并且该目录可通过网站访问,然后可以由服务器端执行PHP文件,只需将www.mywebsite.com/upload/danger.php
放入有浏览器。