令人惊讶的是,JavaScript代码可以执行它想要的任何进程.为什么?

abl*_*lmf 5 javascript

我问" 如何从网页运行可执行文件? "

许多人告诉我这是不可能的,但我的同事发现了一段可以执行任何过程的JavaScript代码.我不敢相信ActiveX是如此危险.

怎么会发生这种情况?为什么IE不禁止这样做?

    <SCRIPT   language=JavaScript>   
  function   Run(strPath)   {   

  try   {   
  var   objShell   =   new   ActiveXObject("wscript.shell");   
  objShell.Run(strPath);   
  objShell   =   null;   
  }   
  catch   (e){alert('Can not find "'+strPath)   

  }   
  }   
  </SCRIPT>   

  <BUTTON   class=button   onclick="Run('notepad')">notepad</BUTTON><br>   
  <BUTTON   class=button   onclick="Run('mspaint')">mspaint</BUTTON><br>   
  <BUTTON   class=button   onclick="Run('calc')">calc</BUTTON><br>   
  <BUTTON   class=button   onclick="Run('format c:')">format c:</BUTTON><br>   
Run Code Online (Sandbox Code Playgroud)

Aut*_*ter 6

虽然你可以这样做IE将阻止它说有一个

ActiveX控件正在尝试访问您的计算机,单击此处查看选项

如果最终用户也允许这样做,你只能运行这些,希望人们足够聪明,不允许它运行.如果你确实允许它,那么总会有另一个警告询问你是否真的想要运行它,所以应该有足够的安全性.