Google recaptcha in Pentest

 Vấn đề: Mình tìm được 1 website có api cho phép đăng ký tài khoản tự do, trên giao diện web báo chức năng đã disable nhưng code backend vẫn còn. Khi gửi request, response trả về báo lỗi captcha


--> cần phải bypass captcha này để tạo tài khoản, đăng nhập portal

Thông tin cấu hình app (bắt request sẽ thấy được): khi login không kiểm tra captcha (dòng 1802), kiểm tra captcha khi đăng ký (dòng 1798), SiteKey recaptcha (dòng 1791)


--> tìm captchaResponse khi biết SiteKey

Phân biệt version của google recaptcha


- Version 1: nhập ký tự trong ảnh
- Version 2: click I'm not robot và chọn ảnh theo yêu cầu (challenge-based)
- Version 3: invisible captcha, người dùng không cần làm gì cả :D (score-based)

Tạo recaptcha trên Google



Demo: tạo 1 recaptcha type 3




Tham khảo code tại https://stackoverflow.com/questions/51507695/google-recaptcha-v3-example-demo để lấy captchaResponse khi có site_key


function đầu tiên được render từ request https://www.google.com/recaptcha/api.js?render=site_key, function này tạo ra object grecaptcha.

grecaptcha.execute và log captchaResponse tương ứng với site_key ra console, có thể execute js code thông qua console, upload file html hoặc chèn payload xss

Request verify lại captchaResponse



Thông tin thêm:

Khi site key không khớp với domain đã cấu hình sẽ báo lỗi: ERROR for site owner:Invalid domain for site key


Khi site key khớp với domain đã cấu hình



Khi render object grecaptcha, sử dụng site key của captcha version 2 sẽ báo lỗi

To be continued . . . :D

Nhận xét

Bài đăng phổ biến