1

这个可以用webform或者winform问...

我有一个需要访问数据库的.net 程序(exe)。(通过互联网)

当然这个数据库需要密码和登录名。

访问 fiddler、reflector 等不会看到的 db 的最佳做法是什么?

我认为唯一的解决方案是使用 ssl + 加密连接字符串部分并在运行时解密它......

有没有更好的解决方案?

4

1 回答 1

2

如果这是一个由攻击者运行的 .exe,那么他可以使用调试器来获取用户名/密码。如果此 .exe 在您信任的机器上运行,并且攻击者只能存在于网络上,那么 SSL 是完美的。

深度防御方法是,除非必须,否则不应信任应用程序的任何部分。当攻击者入侵您的应用程序时,他将使用您的应用程序的功能来对付您。

应该如何做到这一点是创建一个 API,例如 RESTful 或 SOAP API 来访问数据存储。像 SQL 注入这样的漏洞总是一个严重的问题,但是给攻击者一个原始的数据库连接就更糟了。

于 2012-06-22T20:57:37.180 回答