1

我不想知道怎么... 到底有多复杂....

我正在考虑根据调用者的传入客户端 IP 地址保护一个或 2 个 Web 服务。这以任何方式安全吗?

当然,如果 IP 地址被欺骗,那么结果必须被发送回被欺骗的地址,因此不会到达欺骗者?

更新:好的,据我所知....我应该创建一个 Gettoken() 方法,该方法检查 IP 地址并将具有超时的密码重要令牌传递给任何有效的 IP 地址。在允许任何类型的副作用之前,任何其他方法都需要这样做。

由于攻击者无法(可能)在没有有效 IP 的情况下获得令牌,他将无法有效调用我的任何“危险”网络方法?

4

4 回答 4

3

如果您尝试做比 DDoSing 更复杂的事情或触发安全漏洞,那么欺骗不是解决方案。您需要的是一个系统,它将为您的请求提供前端,从而隐藏请求的真实来源。由于我们讨论的是 HTTP 流量,因此匿名代理可以解决问题。

出于您所指的安全目的,这取决于是否可以采取行动。如果该站点纯粹是信息性的,那么您是安全的。如果站点允许执行操作(例如更新这个、删除那个),那么考虑至少添加密码验证。

要记住的另一个问题是,任何控制您的服务器和您希望允许的 IP 地址之间的路由器的人都可以拦截数据包。这将允许他们在您的服务器没有意识到的情况下进行完整的双向欺骗通信。如果您希望信息真正安全,请使用 HTTPS 和身份验证方案来防止发生此类拦截。

于 2008-10-22T15:37:37.897 回答
1

没那么难,就像在任何其他通信中欺骗您的 IP 地址一样简单 http://en.wikipedia.org/wiki/IP_address_spoofing

但他们不会得到回应。他们欺骗的实际IP地址会。

于 2008-10-22T15:34:40.587 回答
1

你是对的。如果您的服务器响应需要到达客户端以建立双向通信,那么欺骗性 IP 将永远不会收到您的响应。但是,您可能会遭受来自欺骗性 IP 的拒绝服务攻击,因为计算您的响应会消耗服务器上的一些 CPU。

于 2008-10-22T15:38:52.560 回答
0

我们的 Web 服务安全性的一部分是要求客户端使用公钥/私钥加密(xml 数字签名)来确保不可否认性,以确保只有被允许的客户端才能访问服务。

于 2008-10-22T15:49:52.927 回答