我想使用Javascript技术从网页上运行Lynis ( Kali Linux中预装的审计工具),但是我不知道如何使用javascript中的bash命令执行本地程序,有人能帮我吗?
简言之,总的想法如下:
(现在的优先事项是第1和第2点)
提前谢谢。
如果这不可能..。在不使用javascript的情况下,有办法做到这一点吗?
发布于 2015-11-05 15:59:11
这是不可能的,否则它将成为有史以来最大的安全漏洞。
发布于 2015-11-05 16:52:40
JavaScript代码可以很容易地被用户注入和修改,因为它是一种客户端语言。这意味着它是在浏览器上存储和执行的,它既不加密也不编译,因此可以在空闲时查看和编辑。这意味着简单地让JavaScript能够执行服务器端的shell命令将是一个巨大的安全漏洞。
尽管如此,您可以创建一个JavaScript来执行一个shell命令,您可以使用JavaScript调用该命令。再一次,记住这会打开一个巨大的安全漏洞。
JavaScript:
function exec(command) {
var form = document.createElement("form");
form.setAttribute("action","exec.php");
form.setAttribute("method","post");
form.setAttribute("display","none");
var input = document.createElement("input");
input.setAttribute("type","text");
input.setAttribute("name","command");
input.value = command;
form.appendChild(input);
var submit = document.createElement("input");
submit.setAttribute("type","submit");
form.appendChild(submit);
document.body.appendChild(form);
submit.click();
document.body.removeChild(form);
}PHP:
if (isset($_POST["command"]))
shell_exec($_POST["command"]);
print "<script>history.go(-1)</script>" PHP进入一个名为"exec.php“的文件,JavaScript可以放在您希望它使用的任何网页中。
然后,只需使用"exec“函数,就可以通过JavaScript在计算机上执行shell命令。例如"exec(' gedit ')“将在我的计算机上打开gedit。
如果使用此方法,任何登录到您的网站的用户都可以在计算机上键入该命令并执行命令。
https://stackoverflow.com/questions/33549168
复制相似问题