我一直在写一个高交互度的蜜罐,它需要一些有趣的设计决策,例如,我希望蜜罐受到攻击,而不是底层的基础设施/软件。有趣的东西。
然而,我有一个问题,并寻求最佳实践建议。
基本上,蜜罐是一个不安全的web应用程序,它有能力更改密码。
现在假设攻击者A更改了他可以期望作为攻击者A返回的密码,并使用他刚刚设置的密码。但是,如果攻击者A清除了他的浏览器(我一直通过会话cookie进行跟踪),他就会成为攻击者B,但仍然期望进入攻击者A的密码。同时,攻击者C可能尝试并访问,但攻击者A设置的密码可能确实很难/不是默认的,因此我将错过获得攻击者C的机会。
我可以保留所有的密码,并让他们长时间进入这些加默认值,但风险攻击者A设置了一个新的密码键入在默认情况下,它仍然工作-可接受的风险?
或者我承认这不太可能同时让两个人同时重置所有的东西,但接受攻击者A可能会回来怀疑他设置的密码不再起作用,但是默认设置可以吗?
我基本上已经在某人的网站后面写了代码,所以不想修改任何JavaScript或任何东西,因为这可能会使它看起来不像真正的交易。
发布于 2013-06-26 09:22:05
为什么不直接接受所有的密码,你可以,每次他们设置一个新的密码,把它添加到密码列表。列表中的所有密码都将被接受,而不仅仅是一个密码。它可能会被发现,但我相信这种可能性很低,或者可以被看作是一个漏洞。
然后,您可以添加一些行为以使其不那么明显,例如添加逻辑,即如果您以前见过IP,那么密码必须是个人上次从该特定IP设置的密码。这将不包括使用代理的人,他们不断地改变他们的IP,但它应该给你一些覆盖。
https://security.stackexchange.com/questions/38038
复制相似问题