PyPasser icon indicating copy to clipboard operation
PyPasser copied to clipboard

GUYS IF YOU SEE THIS TEXT PLEASE BEGGING TO REPLY ME

Open Experilous opened this issue 1 year ago • 2 comments

HOW TO KNOW IF PAGE IS USING RECAPTCHA V2 OR V3 PLEASE HELP ME GOOGLE RECAPTCHA

Experilous avatar Dec 09 '23 08:12 Experilous

well that sample the v3 in background so you dont click on anything but it shows the bleu box like so. image v2 is blue box where u have to select random images.

Ggre55 avatar Jan 10 '24 21:01 Ggre55

HOW TO KNOW IF PAGE IS USING RECAPTCHA V2 OR V3 PLEASE HELP ME GOOGLE RECAPTCHA

/ USAGE // paste the function definition into the console and then call the function: // // let res = findRecaptchaClients() // console.log(res) // // the function returns an array of objects with recaptcha parameters for each implementation found on the page

function findRecaptchaClients() {
  // eslint-disable-next-line camelcase
  if (typeof (___grecaptcha_cfg) !== 'undefined') {
    // eslint-disable-next-line camelcase, no-undef
    return Object.entries(___grecaptcha_cfg.clients).map(([cid, client]) => {
      const data = { id: cid, version: cid >= 10000 ? 'V3' : 'V2' };
      const objects = Object.entries(client).filter(([_, value]) => value && typeof value === 'object');

      objects.forEach(([toplevelKey, toplevel]) => {
        const found = Object.entries(toplevel).find(([_, value]) => (
          value && typeof value === 'object' && 'sitekey' in value && 'size' in value
        ));
     
        if (typeof toplevel === 'object' && toplevel instanceof HTMLElement && toplevel['tagName'] === 'DIV'){
            data.pageurl = toplevel.baseURI;
        }
        
        if (found) {
          const [sublevelKey, sublevel] = found;

          data.sitekey = sublevel.sitekey;
          const callbackKey = data.version === 'V2' ? 'callback' : 'promise-callback';
          const callback = sublevel[callbackKey];
          if (!callback) {
            data.callback = null;
            data.function = null;
          } else {
            data.function = callback;
            const keys = [cid, toplevelKey, sublevelKey, callbackKey].map((key) => `['${key}']`).join('');
            data.callback = `___grecaptcha_cfg.clients${keys}`;
          }
        }
      });
      return data;
    });
  }
  return [];
}

AlexPT2k22 avatar Jan 12 '24 20:01 AlexPT2k22