在 JavaScript 中,是否存在与 FileReader 相关的安全问题?



考虑以下代码段:

(部分(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文件中检索文本并将其部分打印到屏幕上。

任何其他细节或所需的信息,我很乐意提供。

是的,你在这里很好,没有安全问题。

  1. 代码是在用户浏览器中而不是服务器中执行的,因此即使它是恶意的,他们也只会感染自己。

  2. 上面的代码只是将文件读取为文本,因此即使它是恶意的,也不会被执行。

如果您在创建网站时确实需要小心,就是如果您允许用户上传恶意文件,然后以某种方式允许他们在服务器端执行它们。 一个例子是,如果一个PHP网站没有正确的安全性,你允许他们上传一个糟糕的PHP文件,这个目录可以通过网站获得,然后PHP文件可以由他们在服务器端执行,只需将www.mywebsite.com/upload/danger.php放入那里的浏览器中。

相关内容

  • 没有找到相关文章

最新更新