【问题标题】:How to detect if connecting client was modified (Server: C#, Client: AS3)如何检测连接客户端是否被修改(服务器:C#,客户端:AS3)
【发布时间】:2018-12-23 15:36:45
【问题描述】:

抱歉,尝试查找现有线程,运气不好。

只是好奇是否有人有策略来保护易受攻击的游戏客户端,基本上任何人所要做的就是使用 Flash 反编译器来修改对它的攻击。有谁知道我如何在线上传“合法”Flash 客户端,然后人们只能通过在其上传到的网站上播放或使用闪光灯投影仪内部的 URL 连接到它?如果他们下载客户端并尝试将其作为文件加载,那么它会拒绝,我认为它被称为“域锁定”或类似的东西。或者,如果我能找到一种将客户端上传到我的网站的方法,但无法从中下载(就像他们不能只按 CTRL+S 并将文件保存到他们的桌面),那也很酷。

或者如果有人有其他建议涉及将硬代码放入 C# 服务器或 AS3 客户端。

如果可以,请提供帮助,很可能是该段的第一部分,这部分似乎是一个可靠的计划,只要他们无法下载客户端,他们无法修改它,那么我什至不必关心是否他们可以连接或不连接。

【问题讨论】:

  • 虽然这个问题是关于另一个问题的,但我在那里发布了一些与您的问题完全相关的建议:stackoverflow.com/q/53751372/4687633
  • 这不是一件容易的事。假设您的客户端已修改,您可能会更好,即验证来自该客户端的所有输入,并且不要提供超过您需要提供的内容,这样玩家即使使用修改后的客户端也不会利用过多的数据。修改后的客户端仍然会比普通玩家做得更好(即自动瞄准射手,以及其他零时间反应可用的事情),您几乎必须接受这些事情,因为这是可能的 i> 使用未修改的客户端,因此最好使用不同的方法将此类客户端过滤到服务器端。
  • 请记住,所有软件和游戏都可能被黑客入侵。像使命召唤这样的顶级游戏拥有如此多的黑客,你现在可以在 1000 名黑客中找到大约 1 名黑客。使命召唤无法阻止黑客,因为没有办法阻止这种类型的黑客攻击。你只能做一些基本的架构,所以不容易破解。
  • 实现此目的的简单方法:将网页托管在本地 IIS 或外部页面中。编辑您的主机文件并说您的 IP 是该域。浏览该“外部”网站,您的网络浏览器将显示您的托管控制网站。请注意,它是在不涉及开发的情况下完成的。

标签: c# actionscript-3


【解决方案1】:

你关注的是错误的问题。

您可以做很多事情来让试图使用未经授权的客户端的人感到困难。例如,您可以在客户端中嵌入一个加密一次性使用令牌,该令牌仅适用于给定会话,并让客户端加密与服务器的任何通信 - 直到该人设计一个每次都下载客户端的 mod 并且提取令牌。

您可以使用 javascript 尝试让下载客户端变得非常简单 - 直到用户编写 Tampermonkey 脚本来禁用您的保护。

最终,如果代码在客户端运行,您实际上无法完全保证确定的参与者不会修改它,甚至不会构建自己的客户端来连接到您的服务器。相反,您应该做的是处理您的服务器代码以检测未修改的客户端永远不会发送的操作。将所有客户视为不可信的,并验证您从他们那里收到的数据。假设您的服务器将接收完全不合理的输入并相应地处理边缘情况。 (另外,不要立即假设您收到的不合理输入是故意作弊 - 它们很容易是客户端错误甚至用户端硬件故障的结果。)

【讨论】:

  • OP 是试图未经授权进入服务的人。检查this related question (same author)
  • @bradbury9 抱歉,在其他问题结束之前我没能及时说出来,我显然不像大多数人那样专注于这个网站。我应该记得从我上次的帐户来看,社区是多么的傲慢和紧张,当一个问题不是像他们那样熟练或经验丰富的人提出问题时,人们是多么地把它放在心上,所以很明显这个问题可能缺乏细节或细节,甚至当他们所要做的就是忽略并继续滚动时......没有愚蠢的问题,但有愚蠢的答案......
  • 没有足够的字符来提及这部分,如果您查看日期,首先发布了这个问题,然后发布的另一个问题是您提到的“入侵某人服务”是关于我的游戏.我从第三人的角度询问它以获得答案并针对我的域锁定进行测试,这是我从这个问题中得到的解决方案。 (不完全是这个问题,而是来自某人在这个问题上留下的 URL)......所以继续前进,就像其他数千名自大的人一样,在这个网站上提出所谓的“有用”开发人员,然后跳到假设上。
猜你喜欢
  • 1970-01-01
  • 2016-07-06
  • 2012-11-12
  • 2017-01-26
  • 1970-01-01
  • 2012-05-22
  • 2016-02-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多