会话期间IP可以更改吗?

Dan*_*Dan 12 php session

会话期间IP可以更改吗?

不同的引擎(PHP,Django,Ruby等)怎么样?

PS:我不太明白什么是'动态IP'以及它们如何被互联网提供商持有......以及会话如何被打破......

更新: 我应该跟踪IP更改以确保安全吗?我目前正在使用PHP,因此如果内置会话系统缺乏安全性,请提供一些代码和算法

qdo*_*dot 19

IP可以随时改变 - HTTP背后的想法是每个请求都是独立的.

全球只有大约30亿个IPv4地址.因此,一些ISP(实际上大多数是ISP)动态地为每个连接客户端分配IP - 因此当该客户端断开连接时,IP可以重新用于其他人.

就"会议"而言 - 这一切都取决于国家的举办方式.最理智的方法是使用cookie - 它允许您在任意介质上从任意IP连接 - 此时,您不应该关注HTTP的IP层.

但同样,人们以做奇怪的事情而闻名,例如将IP用于他们从未想过的事情(在OSI/IETF意义上) - 比如识别,身份验证等.这是非常糟糕的,因为一个IP通常意味着很多客户 - 例如,您的整个家庭可能共享相同的公共IP - 如果您和您的合作伙伴都访问同一网站,该怎么办?服务器怎么能告诉你们两个人分开?

@Update

不,您不应该跟踪"安全"的IP更改 - 唯一的例外是您可以处理geoIP功能,并且想要禁用/骚扰各种匿名服务的用户.

基本上,如果您的用户直接连接(而不是通过代理/ TOR),他们很可能会再次从附近的位置连接.如果您的用户从美国连接一次,一次从俄罗斯连接 - 这可能意味着这些是两个不同的人(其中一个可能窃取了凭据),或者用户使用了各种匿名者.

如果该网站是高价值目标(银行,金融,中央凭证(想想Google帐户)) - 您可以对IP进行地理查找,并比较距离如何在一小时内改变超过100公里超过两次 - 这是可能很可疑,你可以让用户获得额外的凭据.

否则,您可以显示最后几个IP - 但它可能是一个没有实际价值的锦上添花.

@ update2 安全性是一个棘手的主题 - 每当你处理它时,你需要回答两个基本问题:

安全是什么什么是如此珍贵,需要保护:

  • 用户隐私
  • 授予用户的权限
  • 资产(物理或虚拟)

以及针对什么的安全性:您关注的攻击方案是什么

  • Cookie劫持(firesheep)(仅使用SSL并在大多数情况下完成 - 无法解决HTTP未加密且经常通过公共广播的问题)
  • 接管帐户(需要额外的凭据才能获得真正敏感的内容)
  • 丑化?

  • 确实.在会话期间,协议和财产都不会如此容易地改变.至少现在不是这些日子. (2认同)