ferdium / ferdium-app

All your services in one place, built by the community
https://ferdium.org
Apache License 2.0
2.91k stars 176 forks source link

ChatGPT infinite checking browser #1043

Open ollidoetsch opened 1 year ago

ollidoetsch commented 1 year ago

Avoid duplicates

Ferdium Version

6.2.4

What Operating System are you using?

Windows

Operating System Version

Windows 10 Home version 1903

What arch are you using?

x64

Last Known Working Ferdium version

Didn't used ChatGPT before in Ferdium

Expected Behavior

ChatGPT should just open like on a regular browser

Actual Behavior

When opening ChatGPT in Ferdium it needs to verify that you're a human by letting you click a checkbox, then it loads to check the browser but always shows the checkbox again. It's an infinite loop.

Steps to reproduce

  1. Add ChatGPT as Service to Ferdium
  2. Open in and click the "Verify that you're a human" checkbox
  3. See if the checkbox needs to be clicked infinite

Debug link

https://debug.ferdium.org/0b341f09-c223-4058-8e7d-c0fec77fe97a

Screenshots

Step 1 Step 2 Step 3

Additional information

No response

yojo3000 commented 1 year ago

modify the url in package.json to this instead:

https://chat.openai.com/auth/login

and the browser checking will end after a few tries at least it works for me

Gaibhne commented 1 year ago

modify the url in package.json to this instead:

https://chat.openai.com/auth/login

and the browser checking will end after a few tries at least it works for me

That has not helped for me; after editing the file I tried to restart Ferdium, reload Ferdium, reload services, remove the service and readd it in several orders, Nothing helped, I'm still stuck with the endless loop. The file I changed was C:\Users\me\AppData\Roaming\Ferdium\recipes\chatgpt\package.json - is that the correct one ?

Edit: adding a custom service with https://chat.openai.com/auth/login works fine, so that can be used as a workaround until the proper service is fixed.

ollidoetsch commented 1 year ago

Hey guys, unfortunately both solutions didn't work for me. When creating the custom service I just copied the whole ChatGPT folder and changed the URL in the .json file. Is that correct or do I need to add it somehow else?

JMVS commented 1 year ago

None of the solutions worked for me either...any other workarounds?

EDIT: May is TLS fingerprinting related? I found this: https://www.zenrows.com/blog/what-is-tls-fingerprint#how-to-bypass-tls-fingerprinting But I don't know if/how could be implemented.

lampros-m commented 1 year ago

Same problem here. Both workarounds don't work for me.

Zaczero commented 1 year ago

None of the solutions worked for me either...any other workarounds?

EDIT: May is TLS fingerprinting related? I found this: https://www.zenrows.com/blog/what-is-tls-fingerprint#how-to-bypass-tls-fingerprinting But I don't know if/how could be implemented.

Performing any sort of bypass is not a proper long-term solution. I believe this bug should be reported to Cloudflare as they are preventing Ferdium from accessing ChatGPT.

In my case, it worked to simply pass the challenge about 10 times repeatedly. I just spammed it until I got lucky. :-)

martin-braun commented 1 year ago

@Zaczero How is this the responsibility of CloudFlare to make Ferdium compatible? Any mainstream browser will be accepted, so Ferdium fails to appear like a browser in that sense.

Zaczero commented 1 year ago

How is this the responsibility of CloudFlare to make Ferdium compatible

Because this is a false-positive, they are blocking something that shouldn't be blocked. They are fingerprinting the client and noticing that it's unusual, so they block it. It's just a matter of them adding an appropriate rule for Ferdium users.

JMVS commented 1 year ago

How is this the responsibility of CloudFlare to make Ferdium compatible

Because this is a false-positive, they are blocking something that shouldn't be blocked. They are fingerprinting the client and noticing that it's unusual, so they block it. It's just a matter of them adding an appropriate rule for Ferdium users.

Yes, I think the same. Is there any way for us users to let CloudFlare know about this?

Zaczero commented 1 year ago

I did go through their contact page but in the end they told me there is no direct support for free users.

image

I suppose we should ask on the community forums, so I did: https://community.cloudflare.com/t/ferdium-stuck-in-an-infinite-captcha-loop/489705

I did search for false-positives and found this page: https://developers.cloudflare.com/ddos-protection/managed-rulesets/adjust-rules/false-positive/ - It explains how to handle a false-positive for a website owner (whitelist rule) so it's not really applicable here.

Even if OpenAI were to add this whitelist rule, there's potentially more sites that would need fixing so I don't see this as a complete fix. It would be best to resolve this issue at its core:

The core issue is that even if we try to complete the captcha challenge, we are unable to do so. Stuck in an infinite loop.

JMVS commented 1 year ago

For what is worth, using this Ferdium version: Version: 6.2.6 Server: No Server Electron: 23.2.0 Chrome: 110.0.5481.192 Node.js: 18.12.1

I was able to log into ChatGPT after 6 tries at the captcha.

Lars- commented 1 year ago

It indeed works after 10 tries here. But then the next (possibly related) problem arises, I can't login with Google because "This browser or app may not be secure. Try using a different browser. If you’re already using a supported browser, you can refresh your screen and try again to sign in."...

Lars- commented 1 year ago

Update: I got it to work using the browser service. Google showed another login prompt using that service. It resulted in an OAuth error a couple of times, but then it suddenly worked. I have ChatGPT finally working in Ferdium 🎉

adromir commented 1 year ago

can you describe how you achieved that

Update: I got it to work using the browser service. Google showed another login prompt using that service. It resulted in an OAuth error a couple of times, but then it suddenly worked. I have ChatGPT finally working in Ferdium 🎉

SpecialAro commented 1 year ago

Hey!

Have you attempted to clean the cache of the service (Edit > Clear cache) ? You can also manually open the View > Toggle Service Developer Tools, go to the Application tab and open (each element of the list) and right click on each element (inside the element of the list):

After this, reload Ferdium/the recipe and it should negociate new tokens with Cloudflare.

About the Google login, I've made a PR that hopefully gets merged tomorrow so it releases in tomorrow's nightly that fixes that issue (https://github.com/ferdium/ferdium-recipes/pull/413)

Let me know if this fixes it for you and if we can close this issue. Thank you!