Merubokkusu / Discord-S.C.U.M

A Discord API Wrapper for Userbots/Selfbots written in Python.
MIT License
586 stars 171 forks source link

Captcha on joinGuild #332

Open rmonvfer opened 2 years ago

rmonvfer commented 2 years ago

Hi!

I'm trying to join and verify a guild using its invite code, however, I'm getting an hCaptcha error message (which in turn, makes everything fail).

 [+] (<discum.guild.guild.Guild->getInfoFromInviteCode) Get -> https://discord.com/api/v9/invites/[REDACTED]?with_counts=true&with_expiration=true
 [+] (<discum.guild.guild.Guild->getInfoFromInviteCode) Response <- b'{"code": "[REDACTED]", "type": 0, "expires_at": "2022-02-23T10:32:45+00:00", "guild": {"id": "[REDACTED]", "name": "[REDACTED]", "splash": "[REDACTED]", "banner": "[REDACTED]", "description": "[REDACTED]", "icon": "[REDACTED]", "features": ["INVITE_SPLASH", "THREE_DAY_THREAD_ARCHIVE", "MEMBER_VERIFICATION_GATE_ENABLED", "PRIVATE_THREADS", "NEWS", "ANIMATED_ICON", "PREVIEW_ENABLED", "WELCOME_SCREEN_ENABLED", "BANNER", "MEMBER_PROFILES", "ROLE_ICONS", "COMMUNITY", "ANIMATED_BANNER", "VANITY_URL", "SEVEN_DAY_THREAD_ARCHIVE"], "verification_level": 1, "vanity_url_code": "[REDACTED]", "premium_subscription_count": 307, "welcome_screen": {"description": "W[REDACTED]", "welcome_channels": [{"channel_id": "[REDACTED]", "description": "Please verify yourself here", "emoji_id": null, "emoji_name": null}, {"channel_id": "[REDACTED]", "description": "Read the community rules", "emoji_id": null, "emoji_name": null}]}, "nsfw": false, "nsfw_level": 0}, "channel": {"id": "[REDACTED]", "name": "[REDACTED]", "type": 0}, "inviter": {"id": "[REDACTED]", "username": "[REDACTED]", "avatar": "[REDACTED]", "discriminator": "0287", "public_flags": 0}, "approximate_member_count": 260193, "approximate_presence_count": 28489}'
 [+] (<discum.guild.guild.Guild->joinGuildRaw) Post -> https://discord.com/api/v9/invites/[REDACTED]
 [+] (<discum.guild.guild.Guild->joinGuildRaw) {}
 [+] (<discum.guild.guild.Guild->joinGuildRaw) Response <- b'{"captcha_key": ["You need to update your app to join this server."], "captcha_sitekey": "4c672d35-0701-42b2-88c3-78380b0db560", "captcha_service": "hcaptcha"}'
 [+] (<discum.guild.guild.Guild->getMemberVerificationData) Get -> https://discord.com/api/v9/guilds/[REDACTED]/member-verification?with_guild=true&invite_code=vxDBukJp
 [+] (<discum.guild.guild.Guild->getMemberVerificationData) Response <- b'{"message": "Unknown Guild", "code": 10004}'

Maybe I need to update some version number or similar?

teplinsky-maxim commented 2 years ago

Same issue here, looks like Discord updated something

hoemotion commented 2 years ago

Yeah you need a captcha solving api from now on

teplinsky-maxim commented 2 years ago

Yeah you need a captcha solving api from now on

Yes, but discord api does not send the key. Usually you it sends the captcha-key param, which can be sent to a captcha solving api, but it says “You need to update your app…” so seems like we need to change something in the client initialisation process 🤔

hoemotion commented 2 years ago

Yeah you need a captcha solving api from now on

Yes, but discord api does not send the key. Usually you it sends the captcha-key param, which can be sent to a captcha solving api, but it says “You need to update your app…” so seems like we need to change something in the client initialisation process 🤔

The useragents and superproperties might be outdated

rmonvfer commented 2 years ago

Oh, I understand. I'd like to help, any advice on where to start?

teplinsky-maxim commented 2 years ago

Oh, I understand. I'd like to help, any advice on where to start?

I guess we need to check, how the initialization process differs since the latest discord release and apply changes to the code to mimic the read app. At least I am looking at it rn, but not quite sure I am doing it correctly so any help would be appreciated.

rmonvfer commented 2 years ago

Awesome! I'll take a look ASAP and let you know if I'm able to get it working.

dolfies commented 2 years ago

Yes, but discord api does not send the key. Usually you it sends the captcha-key param, which can be sent to a captcha solving api, but it says “You need to update your app…” so seems like we need to change something in the client initialisation process 🤔

Nah that's just hardcoded discord:tm:

MedNewton commented 2 years ago

so does anyone have an idea that I can work on to byPass this ?

dolfies commented 2 years ago

You need to obtain a captcha key. All methods should work, but low quality keys will lower the quality of your account.

teplinsky-maxim commented 2 years ago

@dolfies, what are you even talking about? Let me clarify the thing. The latest discord update caused all self-bots libraries unable to join any guild from invite code. What keys? What quality? 6 days since the issue and no one fixed it

hoemotion commented 2 years ago

@dolfies, what are you even talking about? Let me clarify the thing. The latest discord update caused all self-bots libraries unable to join any guild from invite code. What keys? What quality? 6 days since the issue and no one fixed it

Bruh do you even know what an http request is? As long as the captcha is solved and the selfbotted http request is equal to the real http request it works fine

teplinsky-maxim commented 2 years ago

@dolfies, what are you even talking about? Let me clarify the thing. The latest discord update caused all self-bots libraries unable to join any guild from invite code. What keys? What quality? 6 days since the issue and no one fixed it

Bruh do you even know what an http request is? As long as the captcha is solved and the selfbotted http request is equal to the real http request it works fine

Do you really think somebody can write in an issue without knowing what is an http request 😆 I know how it works, and I also know that since the latest patch joining a guild is broken. I do not care about somehow-solved captcha, because discord does not send the key using a non-original client, so now you can not join guilds, which is kinda problem

hoemotion commented 2 years ago

they give a key if im not wrong it should look like 4c672d35-0731-37b2-88c3-78380d0db560

teplinsky-maxim commented 2 years ago

@hoemotion, please, read the first post in this issue. Now they send [+] (<discum.guild.guild.Guild->joinGuildRaw) Response <- b'{"captcha_key": ["You need to update your app to join this server."], "captcha_sitekey": "4c672d35-0701-42b2-88c3-78380b0db560", "captcha_service": "hcaptcha"}', so the key is invalid, it is You need to update your app to join this server. If you know any way, how to get the real key (for example with any selfbot lib), please, make me know the name.

MedNewton commented 2 years ago

@dolfies, what are you even talking about? Let me clarify the thing. The latest discord update caused all self-bots libraries unable to join any guild from invite code. What keys? What quality? 6 days since the issue and no one fixed it

In fact, I took the risk of using the token of my own accounts (2 accounts, 1 year old ones), and tested the joinGuild with many servers, and I was able to join ! but when I tested with purchased verified accounts, it generates this error. I also noticed that using Discord on my computer, when I join a server with an invite link, it doesn't require any HCaptcha solving, I just join by clicking the button normally ...

hoemotion commented 2 years ago

Aged tokens dont require hcap for some reason

MedNewton commented 2 years ago

Aged tokens dont require hcap for some reason

So the solution now is to make modifications inside the Discum code and put the right headers for the http request, am I right ?

dolfies commented 2 years ago

The solution is to solve the captcha. If you solve it with a low bot score, your account will become more trustworthy and you get less captchas. If you use something like 2captcha, it works, but your account's quality tanks.

MedNewton commented 2 years ago

The solution is to solve the captcha. If you solve it with a low bot score, your account will become more trustworthy and you get less captchas. If you use something like 2captcha, it works, but your account's quality tanks.

I did find a way to solve it using a chrome extension, but it is slow ( an average of 2 minutes to solve every captcha)

hoemotion commented 2 years ago

The solution is to solve the captcha. If you solve it with a low bot score, your account will become more trustworthy and you get less captchas. If you use something like 2captcha, it works, but your account's quality tanks.

I did find a way to solve it using a chrome extension, but it is slow ( an average of 2 minutes to solve every captcha)

It may be faster if there was a yolov3 or yolov5 hcap solver

timmsGithub commented 2 years ago

The easiest way would be if they add support for AnitCaptcha, 2Captcha or Capmonster. Capmonster is the fastest while 2Cap is the one with the best score!

flalugli commented 2 years ago

hey, I'm having the same issue, even if i solve the captcha and pass the code i still get the “You need to update your app…” response, anyone has found a solution/ knows what I could be doing wrong?

dolfies commented 2 years ago

Pretty sure nothing's wrong. Every client gets that response in captcha_key. Probably because older clients will show the value as an error.

ChronoBrake commented 2 years ago

Any idea? Still getting error "You need to update your app to join this server"

dolfies commented 2 years ago

You need to solve the captcha.

zodiaccong commented 1 year ago

Any idea? Still getting error "You need to update your app to join this server"

Use CapSolver, no need captcha_key. After I get the token, I use the following code. But I don't see what happens, I don't know did I do it right? Can anyone help me?:


data = {
            "captcha_key": token
        }
        session = requests.Session()
        response = session.post("https://discord.com/invite/abc", data=data)
        if response.status_code == 200:
            print("Successfull")
        else:
            print("!!!!")