通过 python 加入服务器时,是否有办法绕过不和谐的可疑活动屏幕?

问题描述 投票:0回答:3

我目前正在用 Python 编写一个脚本,允许您使用邀请代码和您想要加入的帐户的授权令牌来加入不和谐服务器。

这是代码:

link = f"https://discordapp.com/api/v6/invite/{self.invite}?with_counts=true"
header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36', 'Authorization': token}

if not self.using_proxies:
    join = requests.post(link, headers=header)
else:
    random_proxy = get_random_proxy()  # Returns random proxy from a list.
    try:
        auth = HTTPProxyDigestAuth(random_proxy[1][0], random_proxy[1][1])  # user/pass
        join = requests.post(link, proxies=random_proxy[0], auth=auth, headers=header)
    except KeyError:  # If there is no random_proxy[1], then do not try to authenticate user/pass
        join = requests.post(link, proxies=random_proxy, headers=header)  # if no user/pass needed

此代码会导致不和谐的可疑活动,在使用一个令牌加入一台服务器(无论是否有代理)后,就会出现电话验证屏幕。

我目前想知道是否确实可以以某种方式绕过检测。我尝试过其他用户代理并包括其他标头;不工作。当然,必须有某种方法来应对这种疯狂,如果有的话,我问是否有人知道。

谢谢!

编辑

我应该指出,在实际让帐户加入服务器方面,代码确实按预期工作。

我还应该指出,该代码计划用于开源、公共使用 - 因此,使用极端的帐户特定标头可能不起作用如果这个假定程序的最终用户无法处理他们。

python python-requests discord verification exploit
3个回答
0
投票

我对 Discord 一无所知,但我很确定他们会执行一些 JavaScript 检查,以“确保”它们是由浏览器访问的,而不是像您尝试做的那样是由脚本访问的。

我不能 100% 保证这会起作用,但如果我是你,我会尝试使用 splinter,这是一个浏览器自动化工具。它基于 Selenium 但提供了更好的抽象,使其更易于使用。这样,您的脚本将能够使用实际的浏览器发出 HTTP 请求(从而执行 JavaScript)。

但请注意,Discord 也可能以某种方式检测到您正在使用无头浏览器,因此它可能无法解决您的问题。


0
投票

您自己回答了这个问题。 Discord 会根据未完成电话号码验证的事实来检测可疑活动。我在我的另一个帐户拥有的服务器上使用自己的授权令牌对其进行了测试,并且在我验证电话号码的帐户上没有触发此错误。

因此,解决方案只是使用实际的电话号码验证您的帐户。如果您实际上正在寻找绕过电话验证的方法,我建议在 Security Stackexchange 上创建一个新问题来询问。


0
投票

与普遍的看法相反,您不需要使用无头浏览器或电话号码来通过脚本自动加入服务器。相反,您需要在 HTTP 请求中指定标有“X-Super-Properties”的标头。您可以将此值视为特定端点的 Discord 用户的第二个授权令牌。要获取此值,只需在任何浏览器上登录 Discord 并复制 API 请求的标头(就像使用您的令牌一样)。

© www.soinside.com 2019 - 2024. All rights reserved.