我一直在编写一个高交互蜜罐,它需要一些有趣的设计决策,例如我希望蜜罐受到攻击,而不是底层基础设施/软件。好玩的东西。
但是我遇到了一个问题,正在寻找最佳实践建议。
基本上,蜜罐是一个不安全的 Web 应用程序,它可以更改密码。
现在假设攻击者 A 更改了他希望作为攻击者 A 回来的密码并使用他刚刚设置的密码。但是,如果攻击者 A 清除了他的浏览器(我一直在通过会话 cookie 进行跟踪),他将成为攻击者 B,但仍希望获得攻击者 A 的密码。同时,攻击者 C 可能会尝试访问,但攻击者 A 设置的密码可能真的很难/不是默认密码,我会错过获得攻击者 C 的机会。
我可以保留所有密码,并通过其中任何一个加上默认值让它们长时间输入,但攻击者 A 已经设置了一个新密码输入默认值并且它仍然有效 - 可接受的风险?
或者我接受它不太可能同时吸引两个人并一直重置所有内容,但接受攻击者 A 可能会回来并怀疑他设置的密码不再有效但默认密码有效?
我基本上已经在某人的网站后面编写了代码,所以真的不想修改任何 JavaScript 或任何东西,因为这可能使它看起来不像真正的交易。