【发布时间】:2015-10-15 19:08:50
【问题描述】:
我有一个 SignalR 聊天网站,用于学校项目(也使用 C#)。从理论上讲,它适用于受信任的用户,但正如每个人都会证明的那样 - 永远不要信任您的用户。当我将链接发送给我的几个朋友时,这向我证明了这一点,他们立即试图破解它,哈哈。
我现在已经正确清理了所有输入,但他们仍然能够做的一件事是使用浏览器控制台工具手动调用发送消息等所需的函数。
示例:$.connection.chatHub.server.sendMessageToAll('FakeUser','FakeMsg',0);
我想阻止这些类型的操作。我记得不久前 Facebook 出于“安全”目的实际上禁用了控制台窗口。我什至找到了several{1}resources{2},它详细说明了这是如何完成的,并在 Chrome 拥有 fixed 后试图进一步阻止控制台使用。
但是,这些选项都不再起作用,而且由于浏览器不断变化,我不想尝试在此级别进行阻止。
我想知道 Stack 上是否有人知道防止此类攻击的更好方法?有什么好方法可以检查电话的来源吗? SignalR 是否有防止这种情况的好方法?想法/讨论肯定会受到欢迎。
【问题讨论】:
-
使用 ASP.NET 安全并从当前 Principal 获取用户名
标签: javascript c# jquery signalr chat