让用户通过 textarea 调用函数是否危险?
Is letting a user call a function though textarea dangerous?
抱歉,如果之前有人问过这个问题,但我找不到与我的问题类似的问题。
我有一个有两个文本区域的网站 -
一个用于 MathJax,与这个非常相似 https://cdn.mathjax.org/mathjax/latest/test/sample-dynamic-2.html
第二个textarea方便ThreeJS编程。
所以用户可以写 sphere1 = new sphere();
按下 运行 并且 3D 球体出现在下面的 canvas 上。
我的页面没有任何 PHP 并且我没有在任何地方存储用户输入(目前),它们仅适用于会话。
函数运行();如下
function run() {
Clear(); //Removes all objects from the scene
if (!document.getElementById('newScript')) {
//if script id doesn't exist it creates new script
var position = currentPosition(); //Current slide
var video = $('#slide-' + position).find(".animCode").val();
var bodyID = document.getElementsByTagName("body")[0];
var newScript = document.createElement("script");
newScript.id = 'newScript';
newScript.type = "text/javascript";
newScript.innerHTML = video;
bodyID.appendChild(newScript);
} else {
//else removes previous scripts and overwrites it
var position = currentPosition(); //Current slide
var video = $('#slide-' + position).find(".animCode").val();
var e = document.getElementById('newScript');
e.id = 'replace';
var newScript = document.createElement("script");
newScript.id = 'newScript';
newScript.type = "text/javascript";
newScript.innerHTML = video;
var bodyID = document.getElementsByTagName("body")[0];
bodyID.replaceChild(newScript, e); //remove old script
}
}
我的问题是:这很危险吗?我已经阅读了很多关于 SQL 注入的内容,但他们都在谈论数据存储在 php 中,这不是我的情况。
这并不危险,Javascript是一种客户端语言,您网站的任何用户都可以通过浏览器控制台在您的网站上看到甚至执行Javascript。
抱歉,如果之前有人问过这个问题,但我找不到与我的问题类似的问题。
我有一个有两个文本区域的网站 - 一个用于 MathJax,与这个非常相似 https://cdn.mathjax.org/mathjax/latest/test/sample-dynamic-2.html
第二个textarea方便ThreeJS编程。
所以用户可以写 sphere1 = new sphere();
按下 运行 并且 3D 球体出现在下面的 canvas 上。
我的页面没有任何 PHP 并且我没有在任何地方存储用户输入(目前),它们仅适用于会话。
函数运行();如下
function run() {
Clear(); //Removes all objects from the scene
if (!document.getElementById('newScript')) {
//if script id doesn't exist it creates new script
var position = currentPosition(); //Current slide
var video = $('#slide-' + position).find(".animCode").val();
var bodyID = document.getElementsByTagName("body")[0];
var newScript = document.createElement("script");
newScript.id = 'newScript';
newScript.type = "text/javascript";
newScript.innerHTML = video;
bodyID.appendChild(newScript);
} else {
//else removes previous scripts and overwrites it
var position = currentPosition(); //Current slide
var video = $('#slide-' + position).find(".animCode").val();
var e = document.getElementById('newScript');
e.id = 'replace';
var newScript = document.createElement("script");
newScript.id = 'newScript';
newScript.type = "text/javascript";
newScript.innerHTML = video;
var bodyID = document.getElementsByTagName("body")[0];
bodyID.replaceChild(newScript, e); //remove old script
}
}
我的问题是:这很危险吗?我已经阅读了很多关于 SQL 注入的内容,但他们都在谈论数据存储在 php 中,这不是我的情况。
这并不危险,Javascript是一种客户端语言,您网站的任何用户都可以通过浏览器控制台在您的网站上看到甚至执行Javascript。