RSS-Bridge / rss-bridge

The RSS feed for websites missing it
https://rss-bridge.org/bridge01/
The Unlicense
7.33k stars 1.03k forks source link

Facebook captcha challenge when trying to generate RSS feed for Facebook. Help? #738

Closed taylor96777 closed 5 years ago

taylor96777 commented 6 years ago

Says it cannot fetch requested page. Wants me to fill in a captcha but doesn't show with what. How to fix?

o-simardcasanova commented 6 years ago

I have the same issue. Problem is the image for the captcha is broken, so I can't solve the captcha!

feeder captcha fb

logmanoriginal commented 6 years ago

Have you tried using the other Facebook bridge (FB2Bridge)?

Wants me to fill in a captcha but doesn't show with what. How to fix?

Well, this might be hard to fix as it requires the capture challenge (which I've never seen). Can you create a gist for an example page including the capture challenge (the HTML document)?

The bridge is likely broken somewhere along these lines: https://github.com/RSS-Bridge/rss-bridge/blob/704a87ad978488e9db52b03ba4fddd96d30d1918/bridges/FacebookBridge.php#L387-L414

Maybe the capture challenge isn't an image but something else entirely (like the "I'm not a robot" button)...

ORelio commented 6 years ago

I wrote this part of the bridge for use with this script to automate captcha solving. However since then my server is not blacklisted anymore so I can't get a sample captcha page. An easy way for you to get the page would be inserting the following line:

file_put_contents('facebook-captcha.html', $html->outertext);

... just before captcha related code at line 386. Then you can download facebook-captcha.html using your FTP client and investigate changes in the captcha.

jcmag commented 6 years ago

I've the same issue on my server (captcha challenge without any image). It worked fine, but as my server does a lot of requests everyday, I think Facebook blacklisted it, so that's why I receive a captch now... But even if you can show the captcha, how is it supposed to work when the RSS is accessed by applications? no one can solve the captcha in this case...

ORelio commented 6 years ago

Please provide a sample captcha page as described in my comment above.

jcmag commented 6 years ago

here is what I get on my server: https://pastebin.com/tuLhVgwF (and directly from a browser on my server: https://imgur.com/QLMfqvL)

ORelio commented 6 years ago

Thank you, here is the HTML part that's interesting:

<div class="captcha_interstitial">
  <form method="post" action="https://www.facebook.com/FFW.Loederburg" onsubmit="" id="u_0_g">
    <input type="hidden" name="lsd" value="AVqvnF4q" autocomplete="off" />
    <div id="captcha" class="captcha" data-captcha-class="ReCaptchav2Captcha">
      <h3>Security Check</h3>
      <div class="divider"></div>
      <input type="hidden" autocomplete="off" id="captcha_persist_data" name="captcha_persist_data" value="AZl_EHzZUF3fYjYrXhbPue-Q_7WamYv7os2i8XMZRlbtqlqiqahfI-7z5s9GTOOx60msJ5Qi2ZBtll-gXu2nND66o72i9P0ItW3DcUly1TK1-cmjyKKJ2nLNBJU5A_Qd6NxwkpWO2we90J4mEwtQZdPTCEI3rWuxUB-FNNRtLxH6vRuIycSiV00JKaBxSw1u0Y2-_c8GKs6mtBxKyo1EYjBTh6qakN54_qhK5DOQv17hReF54bFgQ8O1OWTl90-IMHu5bkIoqw8YevLIaMtsQZb6s9AdZClzPV0CpSi_byhRbGOTBZ4E-1eFFxVZ-L_lHVkCwjVHVFcSi3LUxofdAhndtNJSNPFEwB2xdyXqe6MGAxFMwVVXsdgcQ6a-K552qEHmZSr7lnAVqCRMq1rFVG9hMgGea7AGVFyGh0JdM_F40Y8LAENNLGTn7YAFFYGUdLNHb0zQ0zfZhC6OAbizxkx9" />
      <div>
        <input name="captcha_response" id="captcha_response" type="hidden" />
        <iframe id="captca-recaptcha" width="400px" height="93px" scrolling="no" frameborder="0"></iframe>
      </div>
      <div class="captcha_input">
        <a href="#" onclick="CSS.show($(&#039;captcha_whats_this&#039;)); return false;" role="button">Why am I seeing this?</a>
        <div id="captcha_whats_this" class="hidden_elem">
          <div class="fsl fwb">Security Check</div>
          This is a standard security test that we use to prevent spammers from creating fake accounts and spamming users.
        </div>
      </div>
    </div>
    <button value="1" class="_42ft mts _4jy0 _4jy3 _4jy1 selected _51sy" name="captcha_submit" id="captcha_submit" type="submit">Submit</button>
  </form>
</div>

It seems like they are switching from their own (flawed) Captcha mechanism to the (much stronger, Google-provided) ReCaptcha mecanism. I don't think we will be able to bypass that anymore. Maybe proxy it properly through the bridge, but that's not interesting if we cannot automate solving :thinking:

jcmag commented 6 years ago

ok, thanks for your feedback and do you know when Facebook displays this captcha? because right now it is not displayed anymore. Is it when my server does too many requests? (I've a lot of users using facebook rss feeds)

ORelio commented 6 years ago

We don't know but we can guess, and too many requests from your server IP or provider network is a likely cause. You can try increasing the cache duration to reduce the amount of requests by editing the bridge file and changing the value.

jcmag commented 6 years ago

ok, thanks!

logmanoriginal commented 5 years ago

I suppose this issue is closed.