Twitter Funcaptcha Solver using Token

I. Recognize Funcaptcha Type

FunCaptcha works by presenting users with a series of rotated captchas or audio that are designed to be difficult for bots to bypass. FunCaptcha has been rebranded as Arkose Labs captcha, and has become more difficult to automatically solve. Funcaptcha appears when you create a Twitter account or when you unlock your Twitter account.

Funcaptcha Twitter has 2 site-keys when you create an account:

867D55F2-24FD-4C56-AB6D- 589EDAF5E7C5: site-key for Mobie operating systems such as IOS/Android/...

2CB16598-CB82-4CF7-B332-5990DB66F3AB: site-key for PC such as Window OS, Ubuntu, MacOS,...

Additionally when an account is locked, Twitter requires a challenge with the site-key below to unlock the account: 0152B4EB-D2DC-460A-89A1-629838B529C9

II. How to submit Funcaptcha Twitter Token

Firstly, you must focus on the iframe with the id "arkoseFrame"

With Selenium Code

Switch iframe with C# Code:

driver.SwitchTo().Frame(driver.FindElement(By.Id("arkoseFrame")));

Switch iframe with Python code:

driver.switch_to.frame(driver.find_element(By.ID, 'arkoseFrame'));

Switch iframe with Java code:

WebElement iframe = driver.findElement(By.id("arkoseFrame"));

//Switch to the frame
driver.switchTo().frame(iframe);

Submit the Token

Execute this script:

function submit(token){parent.postMessage('JSON.stringify({eventId:"challenge-complete",payload:{sessionToken:"' + token + '"}}),"*")'}; submit("token_here");

With token_here is your Funcaptcha Twitter Token you get from HardCaptcha Service

Last updated