如何绕过Kahoot的2FA功能?

时间:2019-05-05 22:26:09

标签: javascript node.js npm

所以我一直在使用Kahoot.js-updated npm软件包和Kahoot的API。一切正常,但我注意到Kahoot添加了2要素验证(2FA)功能,除了仅输入测验PIN之外,还增加了加入测验的步骤。因此,我进行了一些研究,发现Kahoot的2FA功能在代码中存在漏洞。因此,我分析了2FA功能的源代码,但无法完全理解代码和/或发现漏洞。因此,我的问题简单明了:如何绕过Kahoot的新2FA功能?理想情况下,我希望解决方案是一些代码。但是我可以接受任何选择。

1 个答案:

答案 0 :(得分:0)

请勿绕过安全功能。除了道德方面之外,一个漏洞可能最终会被修补。如果您认为新功能适得其反,请向Kahoot团队发送有关此功能的消息,他们可能会解决问题。

也就是说,该软件包似乎不需要2要素身份验证。基本用法示例(https://github.com/theusaf/kahoot.js-updated/blob/master/examples/basicUsage.js)和高级用法示例(https://github.com/theusaf/kahoot.js-updated/blob/master/examples/advancedUsage.js)都使用同一行代码来加入测验:k.join(7877502 /* Or any other kahoot token */, "kahoot.js")。除了无效的房间令牌外,这些示例仍然有效。

根据文档,实际上只有两个功能与两步验证有关系,两个功能都没有被很好地证明,并且在任何示例中都没有。摘自文档:

answer2Step(steps)
Parameters:
steps (array) - An array of the steps for the 2 step authentification. (numbers 0-3)
Returns: Promise
on('2Step') - Emitted when the 2 step authentification is sent to the client / refeshed

因此,要回答您的问题,请使用:k.join(7877502 /* Or any other kahoot token */, "kahoot.js")