网站首页 > 资源文章 正文
背景
浏览器禁止直接执行.exe文件的主要原因是出于安全考虑。
这样的限制是为了防止恶意软件利用浏览器的漏洞或用户的不慎而在用户计算机上执行恶意代码。
有没办法不改变浏览器的安全性前提下,从浏览器执行Exe文件?
先看个效果
全部源码
1、编制C#控制台应用程序,使用Nancy框架创建一个简单的Web服务,并在控制台中监听用户输入。
Nancy 是一个轻量级、简单的框架,可以跨平台,在 .NET Framework/Core 和 Mono 上构建基于 HTTP 的服务。
Nancy 旨在处理 DELETE 、 GET 、 HEAD 、 OPTIONS 、 POST 、 PUT 请求,并提供简单、优雅的领域特定语言 (DSL),只需按几次键即可返回响应。
public static void Main(string[] args)
{
Console.WriteLine("web服务已启动!");
using (NancyHost host = new NancyHost(new Uri("http://localhost:12345")))
{
host.Start();
while (true)
{
if (Console.KeyAvailable && Console.ReadKey().Key == ConsoleKey.Enter)
break;
System.Threading.Thread.Sleep(100);
}
}
}
2、编制Nancy模块,用于处理Web服务中的请求。
public class Module : NancyModule
{
public Module()
: base("/dhub")
{
// 在处理请求之前执行的操作
Before += nancyContext =>
{
Console.WriteLine(DateTime.Now.ToString() + " " + Request.Url);
return null;
};
// 处理GET请求,路径为/dhub/home
Get["/home"] = parameters =>
{
return "<meta charset=\"UTF-8\">DHub Demo </br></br>"
+
"<input type=\"button\" onclick=\"location.href = 'http://localhost:12345/dhub/open?exe=ping&ip=127.0.0.1'; \" value=\"打开命令 ping 10.14.21.1 (Router)\" />"
+ "</br></br>"
+
"<input type=\"button\" onclick=\"location.href = 'http://localhost:12345/dhub/open?exe=explorer&ip=127.0.0.1'; \" value=\"打开资源管理器 127.0.0.1\" />"
+ "</br></br>"
+
"<input type=\"button\" onclick=\"location.href = 'http://localhost:12345/dhub/open?exe=vncviewer&ip=127.0.0.1'; \" value=\"打开vncviewer 127.0.0.1)\" />";
};
// 处理GET请求,路径为/dhub/open
Get["/open"] = parameters =>
{
string exe = Request.Query["exe"];
string ip = Request.Query["ip"];
Console.WriteLine("exe={0} ip={1} ", exe, ip);
if (exe != null && ip != null)
{
if (exe.ToLower() == "explorer")
Process.Start(string.Format(@"\\{0}\共享", ip));
if (exe.ToLower() == "vncviewer")
Process.Start(Path.Combine(Environment.Is64BitProcess ? "x64" : "x86", "vncviewer.exe"), string.Format("{0} -password PASSWORD", ip));
if (exe.ToLower() == "ping")
Process.Start(@"ping", string.Format("-t {0}", ip));
}
// 返回一个消息并重定向到/dhub/home页面
return "open</br><script language = \"javascript\"> window.location.href = \"http://localhost:12345/dhub/home\"</script>";
};
}
}
3、启动项目
注意:启动visual Studio必须是管理员权限,否则弹出以下错误。
正常启动如下:
4、打开浏览器,输入地址:http://localhost:12345/dhub/home
执行ping
http://ocalhost:12345/dhub/open?exe=ping&ip=127.0.0.1
打开资源管理器
http://localhost:12345/dhub/open?exe=explorer&ip=127.0.0.1
打开任意的exe:vncviewer
http://localhost:12345/dhub/open?exe=vncviewer&ip=127.0.0.1
猜你喜欢
- 2024-11-26 网络管理员必备Windows网络诊断和配置命令
- 2024-11-26 Windows 维护小手册-3 「CMD常用命令大全」
- 2024-11-26 玩游戏460延迟较高,教你一招解决网速问题(建议收藏)
- 2024-11-26 C/C++恶意代码盘点(二):后门丨文件监控丨自删除功能
- 2024-11-26 电脑技巧-实用Win+R命令大全,老司机必备哦!
- 2024-11-26 Go 每日一库之 fyne:跨平台 GUI 库
- 2024-11-26 自建KMS服务器之常见故障排查
- 2024-11-26 REvil勒索软件团伙利用Kaseya VSA发起大规模供应链攻击
- 2024-11-26 电脑系统CMD命令dos命令大全
- 2024-11-26 WinCC实现访问Redis方法
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)