我正在为客户开发一项功能,用户可以自愿在线进行重要测试。测试很困难,用户将非常积极地做好(想想SAT或GRE等)......所以也有很高的欺骗动机。显然,有第三方服务,人类通过网络摄像头虚拟监控测试者,但他们真的很贵,我们没有预算。我们仍然需要让用户尽可能地努力游戏系统。我们怀疑他们可能尝试的一些事情是:
让其他人为他们进行测试(捏击手)。
使用不同的配置文件多次进行测试 并获得不公平的优势。
与朋友一起参加考试或与朋友联系 告诉他们答案。
问题顺序将会改变,答案的顺序也会改变。测试将是定时的,并且是一种“开放式书籍”格式,因此我们并不担心用户在线查看内容,但我们不能让他们共享屏幕并让其他人协助他们。 因此,此时主要关注的是确保用户实际上是他们所说的(而不是其他人)。
以下是我们正在考虑的一些安全措施:
要求用户的设备配备网络摄像头,我们将激活该网络摄像头,并在测试期间记录/拍摄用户(当然是在用户同意的情况下)。
要求用户验证任意银行存款金额(可能是通过PayPal)。没有什么可以阻止他们开设多个银行账户,但至少这是一个很大的麻烦。
如果用户被发现作弊,那么威胁法律诉讼的使用条款确实可怕。
问题:我们是否可以/应该采取其他措施来确保我们的测试是安全的,结果是否可靠?
澄清:我们意识到,只要有足够的资源和决心,任何安全系统最终都会被打败。这个问题的目标不是要找到一个神奇的无与伦比的解决方案,而是想方设法提高赌注,以免大多数用户作弊。本着这种精神,我更倾向于专注于可以做什么的答案而不是不能。
答案 0 :(得分:1)
如你所知,有许多作弊行为。你的目标是尽可能地限制作弊的可能性。 Cheating in online courses一直是一个热门话题。
这种类型的攻击可以通过多种方式进行。即使你有一个凸轮看着这个人,测试者看到的视频也可以在另一个屏幕上反映出来。一个捏击手可以看到这个问题,只是给他读答案或以covert channel的方式为考生提供答案。
这次攻击的可能反击是让麦克风看到他们是否正在与任何人交谈。您还可以在进行测试时记录屏幕。这可以防止他们打开聊天窗口或查看其他未经授权的内容。 (有点像Elance tracker)
为了注册该人应附上他们的照片ID的扫描副本。通过这种方式,您可以将此人的照片链接到唯一标识符,例如驾驶执照号码。在此人开始参加测试之前,请让用户直接查看相机并确保您获得可以根据照片ID验证的良好图像。
对此系统的简单攻击是使用photoshop修改id。为了使这种攻击更加困难,您可以根据信用卡/借记卡交易验证其名称。两张牌上的名字应该相符。
evercookie可用于跟踪计算机以查看是否正在使用同一台计算机。这可能是出于正当理由而发生,但它也可用于标记测试以供进一步审查。 evercookie的变体是删除具有随机值的文件或设置具有随机值的注册表项以“标记”该机器。