从Web浏览器(最重要的是IE),JS执行本地命令最可靠的方法是什么?

发布于 2025-01-07 22:00:09 字数 197 浏览 0 评论 0原文

我无法找出 IE 中允许 file: URI 运行可执行文件的安全设置(例如,window.location.open("file:///C|/Program Files/foo/bar.exe"))。

是否有一个设置允许某些站点运行类似的事情,或者是否有某种类型的 Java 小程序或 ActiveX 控件可以完成同样的事情?

感谢您的任何提示。

I can not figure out a security setting in IE that allows for file: URIs to run executables (e.g., window.location.open("file:///C|/Program Files/foo/bar.exe")).

Is there a setting that would make it permissible for certain sites to run things like that, or is there some type of Java applet or ActiveX control that could accomplish the same thing?

Thanks for any tips.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

随梦而飞# 2025-01-14 22:00:09

下面是一个使用 WScript.Shell 进行 仅限 IE 的简单示例:当然,它会触发“此页面上有一个 ActiveX 控件...”警告。
,这并不是使用 file:/// URI 来启动应用程序,但页面是通过 file:/// 加载的。)

(当然 在 IE8 中:

<!DOCTYPE html>
<html>
    <head>
        <script type="text/javascript">
            (function () {
                var wsh = null;
                if ( self.ActiveXObject ) {
                    try {
                        wsh = new ActiveXObject( "WScript.Shell" );
                    } catch ( e ) {}
                    // Check for permission
                    if ( !wsh ) {
                        alert("Sorry, could not get permission");
                        return;
                    }
                    wsh.run("notepad.exe");
                    alert("Notepad should now be open");
                } else {
                    alert("Sorry, this example is IE-only");
                }
            })();
        </script>
    </head>
    <body>

    </body>
</html>

Here is a simple example using WScript.Shell for IE-only: of course, it will trigger the "An ActiveX control on this page..." warning.
(This isn't using a file:/// URI to launch the app though, of course, but the page is loaded through file:///.)

Tested in IE8:

<!DOCTYPE html>
<html>
    <head>
        <script type="text/javascript">
            (function () {
                var wsh = null;
                if ( self.ActiveXObject ) {
                    try {
                        wsh = new ActiveXObject( "WScript.Shell" );
                    } catch ( e ) {}
                    // Check for permission
                    if ( !wsh ) {
                        alert("Sorry, could not get permission");
                        return;
                    }
                    wsh.run("notepad.exe");
                    alert("Notepad should now be open");
                } else {
                    alert("Sorry, this example is IE-only");
                }
            })();
        </script>
    </head>
    <body>

    </body>
</html>
黯然#的苍凉 2025-01-14 22:00:09

幸运的是,在任何情况下,如果不使用漏洞利用或类似的黑客手段,这是不可能的。

ActiveX 对象或 Java 小程序通常是恶意软件,或者至少被防病毒启发法认为是恶意软件,因为它们通常就是这样。

Luckily that's not possible under any circumstances without using exploits or similar hacks.

ActiveX objects or Java applets doing that are usually malware or at least considered to be malware by antivirus heuristics since they usually are exactly this.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文