2Captcha를 사용하여 CAPTCHA 해결

소개



안녕하세요! 이 자습서에서는 2Captcha라는 서비스를 사용하여 보안 문자 인식 프로세스를 우회하는 방법을 보여줍니다.


2캡차란?



2Captcha는 captcha 인식 프로세스를 자동화하기 위해 만든 서비스입니다.

모든 보안 문자는 사람이 인식하므로 2Captcha는 사람이 읽을 수 있는 모든 유형의 보안 문자를 인식할 수 있습니다.

당신이 나와 같고 캡차의 문자 등을 읽는 데 때때로 어려움이 있다면 서비스를 사용해 보는 것도 도움이 될 수 있습니다.

reCAPTCHA v2도 처리한다는 사실에 놀랐습니다. 😎


2Captcha API 키 얻기



서비스 사용을 시작하려면 API 키가 필요합니다.

먼저 다음에서 계정을 등록해야 합니다.
https://2captcha.com/auth/register



계정을 만든 후에는 브라우저에서 다음 URL로 이동하고 API 키를 기록해 두십시오.
https://2captcha.com/setting

프로젝트 설정



이 예에서는 nodejs를 사용합니다.

먼저 프로젝트를 생성해야 합니다.

npm i -y


그런 다음 2captcha 모듈을 설치해야 합니다. 다음을 통해 수행할 수 있습니다.

npm i 2captcha


다음으로 2Captcha API 키를 보유하는 구성 파일을 만들어야 합니다.

mkdir src


"src/config.js"를 열고 다음을 추가하고 API 키를 자신의 키로 바꾸십시오. API 키는 다음 위치에서 액세스할 수 있습니다.
https://2captcha.com/setting

const API_KEY = 'secret';

module.exports = { 
  API_KEY
}



2Captcha를 사용하여 간단한 Captcha 해결



일반 보안 문자는 왜곡되었지만 사람이 읽을 수 있는 텍스트가 포함된 이미지입니다. 때때로 나는 사용된 글자 중 일부를 이해할 수 없습니다. 😅

그럼 2Captcha를 사용하여 해결해 봅시다.

이 예에서는 다음 일반 보안 문자 이미지를 사용합니다.



먼저 "src/normal.js"파일을 만들고 다음을 추가합니다.

const { Solver } = require('2captcha');
const { readFileSync } = require('fs');

const { API_KEY } = require('./config');

const solver = new Solver(API_KEY);

(async () => {
  try {
    const imageBase64File = await readFileSync('./captcha-image.png', 'base64');
    const response = await solver.imageCaptcha(imageBase64File);

    console.log(response);
  } catch (error) {
    console.error(error);
  }
})();


소스 자체는 매우 간단합니다. 2Captcha 모듈을 가져오고 이미지 파일을 Base64 데이터로 읽은 다음 데이터를 2Captcha 모듈에 전달하여 문제를 해결합니다.

다음으로 다음을 통해 실행할 수 있습니다.

node src/normal.js




놀라운! 😃 다양한 이미지의 샘플을 자유롭게 사용해보세요.


2Captcha를 사용하여 reCAPTCHA 해결



다음으로 2Captcha를 사용하여 고급 reCAPTCHA를 해결할 수 있습니다. 👀
개인적으로 나는 항상 잘못된 것처럼 보이기 때문에 이러한 유형의 보안 문자에 항상 문제가 있습니다. 😅

이 예에서는 다음 사이트를 사용합니다.
https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php

이 보안 문자를 해결하려면 사이트 키 변수를 가져와야 합니다. 이는 "개발자 콘솔"을 열고 다음과 같이 "사이트 키"라는 단어를 필터링하여 찾을 수 있습니다.



필요하므로 이 변수를 기록해 둡니다.

다음으로 "src/recaptcha.js"파일을 만들고 다음을 추가합니다.

const { Solver } = require('2captcha');

const { API_KEY } = require('./config');

const solver = new Solver(API_KEY);

(async () => {
  try {
    const response = await solver.recaptcha(
      '6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9',
      'https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php'
    );  

    console.log(response);
  } catch (error) {
    console.error(error);
  }
})();


이번에도 소스는 매우 간단합니다. 이번에는 이미지 대신 사이트 키와 페이지의 URL을 2Captcha 모듈에 전달합니다.

reCAPTCHA는 단순한 이미지 파일보다 분명히 어렵기 때문에 요청하는 데 시간이 좀 걸립니다.
모두 잘 진행되면 다음과 같은 결과가 표시됩니다.



놀라운. 😎


결론



여기에서는 2Captcha 서비스를 사용하여 간단하고 어려운 보안 문자를 해결하는 방법을 보여 주었습니다. 이렇게 간단하게 수행할 수 있는 방법에 놀랐습니다. 👀

나보다 더 잘 해결하기 때문에 가끔 개인적인 이유로 사용합니다. 😅

자동화 목적 등에 사용되는 것과 같은 것을 분명히 볼 수 있습니다. 😀

소스는 여기에서 찾을 수 있습니다.
https://github.com/ethand91/2captcha-sample


내가 일하는 것처럼? 다양한 주제에 대해 포스팅하고 있으니 더 보고 싶으시면 좋아요와 팔로우 부탁드립니다.
또한 저는 커피를 좋아합니다.

좋은 웹페이지 즐겨찾기