manga-download / hakuneko

Manga & Anime Downloader for Linux, Windows & MacOS
https://hakuneko.download
The Unlicense
4.79k stars 469 forks source link

[Bug] CloudFlare Challenge get stuck in Infinite Loop #2933

Open ronny1982 opened 3 years ago

ronny1982 commented 3 years ago

Describe the bug

When opening any website that is protected through a CloudFlare JavaScript challenge, the website is stuck in an infinite reload loop instead of solving the challenge and redirecting to the content of the website.

This affects many websites right now that can no longer be used in HakuNeko due to this issue!

To Reproduce

Steps to reproduce the behavior:

With HakuNeko

  1. Start HakuNeko
  2. Open the Website choosing List
  3. Search for raws.mangazuki.co
  4. Open the manual website interaction link on the result => Observe the website re-loads forever

    With Electron

  5. Start electron ./node_modules/.bin/electron
  6. Open the developer tools (e.g. from electron menu)
  7. Switch to the console tab and type window.location = 'https://cloudscraper.cf/cloudflare/challenge.html' => Observe the website re-loads forever

References

ronny1982 commented 3 years ago

Looks like CloudFlare revised their challenge and HakuNeko now ends up with infinite redirects...


<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <meta charset="UTF-8" />
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
  <meta name="robots" content="noindex, nofollow" />
  <meta name="viewport" content="width=device-width,initial-scale=1" />
  <title>Just a moment...</title>
  <style type="text/css">
    html, body {width: 100%; height: 100%; margin: 0; padding: 0;}
    body {background-color: #ffffff; color: #000000; font-family:-apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, "Helvetica Neue",Arial, sans-serif; font-size: 16px; line-height: 1.7em;-webkit-font-smoothing: antialiased;}
    h1 { text-align: center; font-weight:700; margin: 16px 0; font-size: 32px; color:#000000; line-height: 1.25;}
    p {font-size: 20px; font-weight: 400; margin: 8px 0;}
    p, .attribution, {text-align: center;}
    #spinner {margin: 0 auto 30px auto; display: block;}
    .attribution {margin-top: 32px;}
    @keyframes fader     { 0% {opacity: 0.2;} 50% {opacity: 1.0;} 100% {opacity: 0.2;} }
    @-webkit-keyframes fader { 0% {opacity: 0.2;} 50% {opacity: 1.0;} 100% {opacity: 0.2;} }
    #cf-bubbles > .bubbles { animation: fader 1.6s infinite;}
    #cf-bubbles > .bubbles:nth-child(2) { animation-delay: .2s;}
    #cf-bubbles > .bubbles:nth-child(3) { animation-delay: .4s;}
    .bubbles { background-color: #f58220; width:20px; height: 20px; margin:2px; border-radius:100%; display:inline-block; }
    a { color: #2c7cb0; text-decoration: none; -moz-transition: color 0.15s ease; -o-transition: color 0.15s ease; -webkit-transition: color 0.15s ease; transition: color 0.15s ease; }
    a:hover{color: #f4a15d}
    .attribution{font-size: 16px; line-height: 1.5;}
    .ray_id{display: block; margin-top: 8px;}
    #cf-wrapper #challenge-form { padding-top:25px; padding-bottom:25px; }
    #cf-hcaptcha-container { text-align:center;}
    #cf-hcaptcha-container iframe { display: inline-block;}
  </style>

    <meta http-equiv="refresh" content="12">
<script type="text/javascript">
  //<![CDATA[
  (function(){

    window._cf_chl_opt={
      cvId: "1",
      cType: "non-interactive",
      cNounce: "15986",
      cRay: "60e9563bcbd43752",
      cHash: "e332e638881aeec",
      cFPWv: "b",
      cRq: {
        ru: "aHR0cHM6Ly9yYXdzLm1hbmdhenVraS5jby8=",
        ra: "Y3VybC83LjY0LjE=",
        rm: "R0VU",
        d: "FMHYYHS1lwuI+aX/QAm/PiECOuJbuaL2dYuFA64VzKcFWkul6LcjuaKAFu/KkzkOFZp3DsVkIJLlGXHef4w/yc7Jp2sCK7wJt54Qx+DXEv2SfPp1EnxHapc7dIoa2bGeCJNdxad1cIKKRkp0IzzDaTbeU7y9G+hzq1CjPSOQExdksmJ8ur2k0sSZLNC01f8B4ztrl7XwPrtpN5jGiWM02grgyFqEACldkNWhHAAon9ud79boWEMk0UHiabbqdbJb4vqLHo3yOciH4ALQ2cpuGSMfq4MprIL6SpXedMhLmGXzIk0GtOUcJQWTqRyRAXfWM9k3dI98t9ggym/KG7KfRMJzHGcBac9cmKb7tM1qvSuIODOvYWzIVcxqh2NDVzUHv2+QaRCij6ygITwwy23PUAbvgID5n+fBb4Xy7HWDWLoKlEzWDKDf2Vl6Xbvuc8tkyyYu8zKk5UeFl1+OjVRo8ueyWNyuEahNfJWTlq929g4tOs9foluZfjZBh617evvmCmvdbltJuB5QmJPl+WB2bZGdzXrXOQnynfkR0jMGDbWHyXWhNuVaNLwDNtjZ2Vz7tnvIlCgPA34lbeoekIJ35m6Jsu98DO7AHmvfkPxV/oLVmu4GU7hGyDxzAmasa73moEiWMpryKsqpd+KkXesOsyWtIWDvV2Di28+PirD4h+Ww/zy80WlzxRXmMYQFyfFRxLdYga4QEJDLUTIVOvK3uI64YTWKmPr7plXSBbQs0IeUYhN43R9SaWgcIVvtnURB",
        t: "MTYxMDE0NDc1MS45NjgwMDA=",
        m: "RY0MjWJYDEMQs+VeZIibzlO0OR6ObYZK7sMHeJXX3F0=",
        i1: "RkvE2vdNo6sZGOBEVyShDQ==",
        i2: "8l717PzvJk0ydzE++cTu/w==",
        uh: "szTQexRnAk6IzW67QzqGQgGxkzC/vAX/8LMiqwBnOyk=",
        hh: "I0kdqj2F0l7JNXvXS7ighNXMGXUM2prtK7PBi3zI0Kw=",
      }
    }
    window._cf_chl_enter = function(){window._cf_chl_opt.p=1};

    var a = function() {try{return !!window.addEventListener} catch(e) {return !1} },
    b = function(b, c) {a() ? document.addEventListener("DOMContentLoaded", b, c) : document.attachEvent("onreadystatechange", b)};
    b(function(){
      var cookiesEnabled=(navigator.cookieEnabled)? true : false;
      var cookieSupportInfix=cookiesEnabled?'/nocookie':'/cookie';
      var a = document.getElementById('cf-content');a.style.display = 'block';
      var isIE = /(MSIE|Trident\/|Edge\/)/i.test(window.navigator.userAgent);
      var trkjs = isIE ? new Image() : document.createElement('img');
      trkjs.setAttribute("src", "/cdn-cgi/images/trace/jschal/js"+cookieSupportInfix+"/transparent.gif?ray=60e9563bcbd43752");
      trkjs.id = "trk_jschal_js";
      trkjs.setAttribute("alt", "");
      document.body.appendChild(trkjs);

      var cpo = document.createElement('script');
      cpo.type = 'text/javascript';
      cpo.src = "/cdn-cgi/challenge-platform/h/b/orchestrate/jsch/v1";
      var done = false;
      cpo.onload = cpo.onreadystatechange = function() {
        if (!done && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete")) {
          done = true;
          cpo.onload = cpo.onreadystatechange = null;
          window._cf_chl_enter()
        }
      };
      document.getElementsByTagName('head')[0].appendChild(cpo);

    }, false);
  })();
  //]]>
</script>

</head>
<body>
  <table width="100%" height="100%" cellpadding="20">
    <tr>
      <td align="center" valign="middle">
          <div class="cf-browser-verification cf-im-under-attack">
  <noscript>
    <h1 data-translate="turn_on_js" style="color:#bd2426;">Please turn JavaScript on and reload the page.</h1>
  </noscript>
  <div id="cf-content" style="display:none">

    <div id="cf-bubbles">
      <div class="bubbles"></div>
      <div class="bubbles"></div>
      <div class="bubbles"></div>
    </div>
    <h1><span data-translate="checking_browser">Checking your browser before accessing</span> mangazuki.co.</h1>

    <div id="no-cookie-warning" class="cookie-warning" data-translate="turn_on_cookies" style="display:none">
      <p data-translate="turn_on_cookies" style="color:#bd2426;">Please enable Cookies and reload the page.</p>
    </div>
    <p data-translate="process_is_automatic">This process is automatic. Your browser will redirect to your requested content shortly.</p>
    <p data-translate="allow_5_secs">Please allow up to 5 seconds&hellip;</p>
  </div>

  <form class="challenge-form" id="challenge-form" action="/?__cf_chl_jschl_tk__=ddc66003232b69fb1f5ee635a3a325ec3ae018bf-1610144751-0-ASOMRpjaEgp1SgWgTBVBTj80X9K95_nfA-H3Pp-7bkk0CqwK3D2f85gJ1HLr1PMLzo8J_OBlEUJhdvFnFhyfx2OHl_E-eWZF4tXMgZYAunHur5HHrQJDQEzmlfyjHG3nnf5szGS5Ge6ARqGL7Wo9TILtzDZyaw8vSzSAAIzFkO_MNat-YMm_GMcjqOBsB0a_xJGDcQziGJGas4-XALKQaGJRXUh5OobUNy58tVQ4HuOX2rbegoI-393EMERMoPemo0Vw4KgyLdIoFjFDWjL9aBWUeqHlix9Y68GIIGk6bNv-NZuPdY-oeZSGLoR5OzXs9A" method="POST" enctype="application/x-www-form-urlencoded">
    <input type="hidden" name="r" value="4f4b05645868bc5305b7671ef97cda40d7f54255-1610144751-0-AZi3YLIlGFeUbvYCbBO7tTK+x/ffEpErGVdIBfgxIF0dUHBsYoKepTA07/7HT208oBMMzsmFhKEC3AleAGbMoI6lPk2AqQmuDyBxIGZZxAtLGmurXZu0eYE9LI1YcdYIk+dwZ5xy1H+iidZq+fQE4ux3526KZXxaaTCXBR5skykYYRoyELhtPNcfEy2CJ3r9gJoI0Fl7zFD4gbBSeXFWdUBA+9A+uWqKhVyIFbDQLxiqugc5pEs1WUb1scHcecCVdLW3Gqgg/XuGnoaOS5/vgjFuLCZQ4KXj+VxRGmyoYgaIkdB0ulg228GiE0vT+6CnmXS92LnfXLpVu6CarVWiKngfKmYjbxZR3se5Il/6W/ucNHDs/KgR+nuZq9aJbBdGTHwIQtOremtH2hhprYQ+R8VvtxWAMCa6d4ILKrCOVgvlGzVcV/frOo8BmeIIsviIxg9A9R5m3WPgjrpT9DjeyBWpdhqdCNqtAGCkzJHkD78Y/vBi1K8L+2S4ajApZHO4pIGWu4zCFWWdkT3y8vnJXxozwCAhtG+k4P2y9ZWhlhp0Wk5ZoziMtNkvwr651g+Un6VB1WK8v6QO2PlmAKPUX6RNq7LcuCZeT03cVIXP7Sz9P5hnXzsI5tDcnbSuy6Ps4oga/bYYQxTj8PV7WVELZ1+V3bGdqKaUTNg4dCs7Dap4R8amkKqTgYTRIq/vE1brK9ZxJK6HTp1Oyt+Jb+HWCwFINKaIJ/RJiA6thJcf4GmQRUz4LRh+xe0F9rICNlT0OozSWxv65oK44OncRHCKqJJEsLD8+Wo/j63EomYIPlQNw61xYSsECEThXmwpWcqgHwHNsIt2c/IIiKQb346Jz/lOCKeiv9/1hlkqePeCrqf6xKBfOMu3jCCAt1eaeiq7LJHDa5CL6Hpitwr2yZCQhT3bWkRxHUfwOM/KKlY2Y10418Sxd/nRsqUEXXZ0FVTA4jENqrpnjM3qdjazh2rTjmekxiC1sgUABfCm7qcF0txLLEkGcED6c0i8V7AyuLkh9CbIP4mysMxU+X4ux8WkINM5RaSEv8nDo/fRaQ8e5JH9IdkzvQS8yL8ADNouDL7x0ftbQ6sB0/3+oSRL5opeGtR4gQI4pc+zxEyHNOSkUDEaNe8ljA0ITzCpiD6Roy6fpCJ6MH+LUkZEsjj3acHc3dXGrY7FeFjMrgvM2WYQwQMpqkksR8uxj2jDG26sJm6dUZ8j9bgxrtgHggsoGF62oTRvWZ8up6uWeL4Zfq/nFJMBWptZQf+GfGId/AqNr3YRR00idCXnJv8Z7l7YnExlj6M="/>
    <input type="hidden" value="09ce8774cd7952b909339dd4ca45e15c" id="jschl-vc" name="jschl_vc"/>
    <!-- <input type="hidden" value="" id="jschl-vc" name="jschl_vc"/> -->
    <input type="hidden" name="pass" value="1610144755.968-BIHHR9+d87"/>
    <input type="hidden" id="jschl-answer" name="jschl_answer"/>
  </form>

  <div id="trk_jschal_nojs" style="background-image:url('/cdn-cgi/images/trace/jschal/nojs/transparent.gif?ray=60e9563bcbd43752')"> </div>
</div>

          <div class="attribution">
            DDoS protection by <a rel="noopener noreferrer" href="https://www.cloudflare.com/5xx-error-landing/" target="_blank">Cloudflare</a>
            <br />
            <span class="ray_id">Ray ID: <code>60e9563bcbd43752</code></span>
          </div>
      </td>

    </tr>
  </table>
</body>
</html>
ronny1982 commented 3 years ago

Probably related: dazedcat19/FMD2#259

ronny1982 commented 3 years ago

This problem does not occur in electron 11.2.0, but sadly it happens in 6.1.7 and 8.3.4 It could also be noted that opening the website with electron 11.2.0 may popup requests asking for permission to access sensors.

https://user-images.githubusercontent.com/27136773/104631965-4d336480-569d-11eb-80a0-dc34167876a0.mp4

ronny1982 commented 3 years ago

Maybe Related: https://discuss.atom.io/t/repeated-page-reloads-on-request-failures/53787

ronny1982 commented 3 years ago

The electron fix seems to have been added somewhere between v9.0.0-nightly.20200121 and v9.0.0-beta.1

❌ Electron 6.0.0 ❌ Electron 6.1.12 ❌ Electron 7.0.0 ❌ Electron 7.3.3 ❌ Electron 8.0.0 ❌ Electron 8.5.5 ❌ Electron 9.0.0-nightly.20191122 ❌ Electron 9.0.0-nightly.20200121 ✔️ Electron 9.0.0-beta.1 ✔️ Electron 9.0.0 ✔️ Electron 9.4.1 ✔️ Electron 10.0.0-nightly.20200209 ✔️ Electron 10.0.0 ✔️ Electron 10.3.0 ✔️ Electron 11.0.0 ✔️ Electron 11.2.0

He-Li-Na commented 3 years ago

Hello, I read this issue because I have an issue with mangahasu. According to this post. the problem caused by CloudFlare revised their challenge and HakuNeko now ends up with infinite redirects (for some manga website).

I have no issue when I visit the website in the browser, but in Hakuneko, mangahasu seems like offline and we cannot access the site beside reading some manga that we already download before this issue occurs.

could you explain this to me in an easy way, what happened and can this issue be fixed, what should we do? does this issue mean that mangahasu cannot be accessed anymore in the future?

Thank you for your replay, I'm sorry I cannot write in English properly

ronny1982 commented 3 years ago

There is no fix available yet

Bmswad1 commented 3 years ago

There is no fix available yet

because you are dumb, go to fix the cloudflare issue fck asshole

Don't talk nonsense This is not his responsibility If you want it fixed Fix it yourself

Sheepux commented 3 years ago

Updates for users on this issue. The fix requires to upgrade the main component that HakuNeko is using. It needs a non negligeable amount of work and Ronny is having a lot of IRL work and therefore not a lot of free time time to contribute on this. He's the most knowledgeable on this matter and as such we kindly ask for your patience.

iriscelio commented 3 years ago

[GoldenManga] Connector not working

[Neox Scanlator or Neoxscans] Connector not working

Error Cloudflare

Failed to update manga list for GoldenMangas

Failed to update manga list for Neox Scanlator or Neoxscans

rubytook commented 3 years ago

I've been having this issue for several days and today, right before I pulled up GitHub to look at bugs, on a whim I copied the CloudFlare challenge url into my regular browser and solved the captcha that way. It didn't seem to affect HakuNeko immediately, however when I tried to connect again (I'm not insane, I was going to look at details in F12), the captcha appeared instead of the infinite loop. Sort of, anyway, it didn't actually display any images; but randomly clicking on boxes got me past the challenge . . . (which seems like a fail on the part of the captcha but I'm not going to complain). The connector worked and I was able to download. If relevant, the site I was connecting to was myreadingmanga.info. I don't know if this will be remotely helpful but I thought I should share. I can try it again and open the dev panel and c&p details if that would help?

ronny1982 commented 3 years ago

HakuNeko is completely independent of any local Browser. However, i guess CloudFlare uses some risk management to determine when a challenge should be shown and since your IP might have gotten a good reputation due to browsing with your browser, moving your mouse appropriate to links before navigation, ... HakuNeko might have been benefit from this until your IPs reputation get reduced while using HakuNeko to a level were CloudFlare decided its time again for a challenge.

rubytook commented 3 years ago

I'm aware that HakuNeko has it's own independent browser, which is why I didn't think opening it in another browser would even work. I'm glad I tried, though. I've been able to duplicate my success several times. After several hours, the connector stops working, and I need to close HakuNeko and open again to get the CloudFlare challenge to show up again, but as long as I hit 'copy url' in the HakuNeko browser, paste it into IE and do the captcha, it will give me the challenge. Although like I said, it won't actually display images so I just click randomly on boxes and hit next or skip until it passes me which seems ridiculous on a security level . . . I guess a machine couldn't do it so I'm proving I'm human even if I don't know what a boat or a bicycle looks like?

sisco0 commented 3 years ago

The electron fix seems to have been added somewhere between v9.0.0-nightly.20200121 and v9.0.0-beta.1

Electron 6.0.0 Electron 6.1.12 Electron 7.0.0 Electron 7.3.3 Electron 8.0.0 Electron 8.5.5 Electron 9.0.0-nightly.20191122 Electron 9.0.0-nightly.20200121 Electron 9.0.0-beta.1 Electron 9.0.0 Electron 9.4.1 Electron 10.0.0-nightly.20200209 Electron 10.0.0 Electron 10.3.0 Electron 11.0.0 Electron 11.2.0

Wisely pointed out, it seems that some changes were done over the shell/browser/api/electron_api_cookies.cc files. Should this be some kind of hint for us? It seems many people complain about Cookies and Javascript [1] and also localStorage and sessionStorage [2].

ronny1982 commented 3 years ago

I was trying to figure out which exact checkin caused the problems, but give up on building electron from source. The goal was to maybe find a workaround by injecting some JavaScript. The mentioned electron_api_cookies.cc may be indeed the culprit. Right now the migration to v9 is stalled due to various other CloudFlare related problems with that version. Development focus is now on the HaruNeko NW.js prototype, which may be the next major version of HakuNeko.

sisco0 commented 3 years ago

I could take a look around at the interesting projects that manga-download has. This one was one of the codes that triggered my curiosity. Using TypeScript looks like a good enhancement for the project.

ladymav commented 3 years ago

since sheepux thinks this is the same issue i am having and thus closed my report let me inform you no this is not what is happening. Mangahasu's Connector is not working. I run hakuneko, i click Mangahasu, i click refreash, it times out in 60 seconds. it gives a can not load manga list due to time out error. this is not the same as constant loop.

Sheepux commented 3 years ago

60s timeout means cloudflare challenge issue

ronny1982 commented 3 years ago

since sheepux thinks this is the same issue i am having and thus closed my report let me inform you no this is not what is happening. Mangahasu's Connector is not working. I run hakuneko, i click Mangahasu, i click refreash, it times out in 60 seconds. it gives a can not load manga list due to time out error. this is not the same as constant loop.

Timeout kicks in because MangaHasu got stuck in CloudFlare loop...


https://user-images.githubusercontent.com/27136773/113759643-98499a80-9715-11eb-938a-c1e46feb8fc0.mp4

chantzish commented 3 years ago

apparently the loop is caused by the current user-agent hakuneko uses. I verified this:

  1. Copying hakuneko's user-agent to my local firefox causes my browser the same loop
  2. Forcing this user-agent ('Mozilla/5.0 (Linux; Android 9; Pixel) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4026.0 Mobile Safari/537.36') in hakuneko fixes the problem. Here is my commit for AsuraScans https://github.com/manga-download/hakuneko/pull/3470/commits/bcf2a6492032bedd447c346e32d30417854bcc90
ronny1982 commented 3 years ago

HakuNeko uses a random user agent. The reason is probably because the PR uses a mobile user agent and CloudFlare might be more relaxed with their challenge on mobile devices.

onmyouji commented 3 years ago

apparently the loop is caused by the current user-agent hakuneko uses. I verified this:

  1. Copying hakuneko's user-agent to my local firefox causes my browser the same loop
  2. Forcing this user-agent ('Mozilla/5.0 (Linux; Android 9; Pixel) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4026.0 Mobile Safari/537.36') in hakuneko fixes the problem. Here is my commit for AsuraScans bcf2a64

I'm not a programmer, so I'm not sure how does this fix work.

But will this user-agent fix also work on other website that uses cloudflare?

ronny1982 commented 3 years ago

I haven't tested this yet with the provided user agent, but i guess this was just a lucky hit. It would be way too simple if it could be bypassed that easily.

M4lho commented 3 years ago

apparently the loop is caused by the current user-agent hakuneko uses. I verified this:

  1. Copying hakuneko's user-agent to my local firefox causes my browser the same loop
  2. Forcing this user-agent ('Mozilla/5.0 (Linux; Android 9; Pixel) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4026.0 Mobile Safari/537.36') in hakuneko fixes the problem. Here is my commit for AsuraScans bcf2a64

I'm not a programmer, so I'm not sure how does this fix work.

But will this user-agent fix also work on other website that uses cloudflare?

Tested in IchirinNoHanaYuri, not working.

Chitrarthrai commented 3 years ago

can you enable java script as per cloudfare requirement

Chitrarthrai commented 3 years ago

Screenshot (31)

Sheepux commented 3 years ago

JS is already enabled, the issue is known and it's fixed in a later electron release but it's currently a pain to update. Ronny spent a lot of time trying to fix the issues the new electron release creates but we're now working on moving away from electron (switchin to nwjs). It will take a while.

rs3mk commented 3 years ago

Lectortmo (tumangaonline) tumierdaonline

ronny1982 commented 2 years ago

It is possible that the CloudFlare measures conflicting with older electron versions were aimed towards headless browser detection (e.g. https://github.com/berstend/puppeteer-extra/issues/532#issuecomment-909472096).

Here are the results when loading https://bot.sannysoft.com in electron 8.3.4 and in 9.0.0 This may give some clues on how it may still be possible to update older HakuNeko versions to bypass CloudFlare fingerprinting...

npx electron@8.3.4 (CloudFlare fail)

electron-8 3 4

npx electron@9.0.0 (CloudFlare succeess)

electron-9 0 0

kevin01523 commented 2 years ago

this also affects animepahe

djgerman10 commented 2 years ago

It also affects lectormanga.com, lectortmo.com, I think that all the vast majority work at the beginning, then it starts to give these errors with cloudflare

giaez commented 2 years ago

today nitroscans is just affected by this. I used this connector for the first time yesterday and it worked, but now it stucks in cloudfire loop.

CaptainChicky commented 2 years ago

This also affects https://toonily.com now Errors out with 503 from Connector.mjs:434

remex24 commented 2 years ago

The same with myreadingmanga.info I solve the cloudfare captcha yet stuck in an infinite loop hope that it will be solved soon

ronny1982 commented 2 years ago

Reason for failing CloudFlare is likely Browser specific TLS fingerprinting.

therootaf commented 2 years ago

fun fact, you can pass cloudflare just by changing useragent to windows - opera or another one that can pass cloudflare https://b.catgirlsare.sexy/pJRrpsgr8Aok.mp4

SilverAsh4158 commented 2 years ago

Same problem with Reaper Scans (English) stuck at cloudflare issue. French and turkish - able to open page and load manga list. Portugues - able to open page but cannot load manga list.

neemanthnub commented 1 year ago

thanks a lot it works

samanta-widjaja commented 1 year ago

1stkiss also stuck at cloudflare issue. can not even get manga list

isyfalana commented 1 year ago

cloudfalre connector not working / browser oudate / infinite loop, i can solve these problem by modify user agent to latest version browser %appdata%\local\hakuneko-desktop\cache\mjs\engine\Request.mjs modify this.userAgent = HeaderGenerator.randomUA(); to this.userAgent = 'LATEST_BROWSER_USER_AGENT'; then start hakuneko, and open the site to get new cookie.

unfortunatelly hakuneko reset our changes each day because it just cache(?)

MikeZeDev commented 1 year ago

Tested With BentoManga and UA as Chrome 114, still infinite loop Same for sushiscan

Sheepux commented 1 year ago

Some people reported using https://github.com/FlareSolverr/FlareSolverr as proxy to solve this situation. I don't know how much it helps

MikeZeDev commented 1 year ago

Some people reported using https://github.com/FlareSolverr/FlareSolverr as proxy to solve this situation. I don't know how much it helps

FlareSolverr starts a proxy server, and it waits for user requests in an idle state using few resources. When some request arrives, it uses Selenium with the undetected-chromedriver to create a web browser (Chrome). It opens the URL with user parameters and waits until the Cloudflare challenge is solved (or timeout). The HTML code and the cookies are sent back to the user, and those cookies can be used to bypass Cloudflare using other HTTP clients.

Thats basically what we will try to achieve with the browser extension in Haruneko, but without the hurdle of using Selenium.

Sheepux commented 1 year ago

This comment was for a temp solution for current hakuneko

dbleach777 commented 6 months ago

Try install portmaster. I use portmaster (DNS changer) rather than VPN for bypass censorship & cloudfire (never encounter cloudfire page now) also it's faster than VPN & free to use for windows, linux. It's work for me at least on some website that has cloudfire captcha page.

ticklesfang commented 6 days ago

What if they add a small screen that shows the site that you are going to and you can manually do the captcha. That screen could also be minimized so you only need to see it when needed. If that’s possible let me know.