我正在开发一个挂钩到另一个进程的控制台,并在主应用程序中发生某些事件时向web api发送请求。
在我看来这是保护我的应用程序的不错方法,但我担心这还不够,因为用户可以访问本地计算机的.exe和管理员权限,他们肯定会尝试找到如何破解我的应用程序。
我还能做些什么来加强安全性?或者也许你可以建议其他方法?
答案 0 :(得分:3)
用户可以访问本地计算机的.exe和admin权限
安全方面,你注定要失败。您无法保护攻击者具有root访问权限的内容。根本没办法。唯一的方法是限制用户或将所有代码移动到服务器端,留下一个空心的前端,基本上可以为服务执行所有操作。
举个例子:
我在app.config的保护部分保留共享密钥值,并通过SecureString
检索它
是什么阻止用户反编译您的应用,在控制台上插入显示SecureString的行,再次编译 并运行它?没什么,因为他们是机器上的根。任何已根植的东西都没有安全保障。
答案 1 :(得分:1)
如果可以选择,您可以加密与API的通信。为此使用HTTPS和认证。如果您担心用户可能会反编译您的.exe,包括一些假例程也可能会有所帮助。
您能说明您担心用户可以使用该应用程序吗?