logo
bars

Yidun (NECaptcha)
và CapMonster Cloud

Giải captcha, cài đặt trên trang web và kiểm tra.

Giá của giải pháp Yidun (NECaptcha)

CAPTCHA
Giá (USD)
$ 1.00
1000 token
Bạn nhận lại một website đã có captcha hoặc lớp bảo vệ khác nhưng không có quyền truy cập mã nguồn? Khi đó điều bạn cần biết là giải pháp nào đang chạy, cấu hình có đúng không và cách kiểm tra như thế nào.

Trong bài viết này, chúng tôi đã cố gắng trả lời tất cả những câu hỏi quan trọng. Bước đầu tiên để bắt đầu giải quyết vấn đề là xác định hệ thống bảo mật nào đang được sử dụng. Để làm điều đó, bạn có thể tham khảo danh sách các captcha và hệ thống chống bot phổ biến, trong đó có các ví dụ minh họa và những dấu hiệu chính giúp bạn nhanh chóng nhận biết mình đang làm việc với giải pháp nào.

Nếu bạn phát hiện trang web của mình đang sử dụng Yidun (NECaptcha), bước tiếp theo là tìm hiểu chi tiết hơn về các đặc tính và cách hoạt động của nó. Ngay trong bài viết này, bạn cũng có thể xem hướng dẫn tích hợp hệ thống Yidun (NECaptcha) để hiểu đầy đủ cách nó vận hành trên trang web của bạn. Điều đó giúp bạn không chỉ nắm rõ lớp bảo vệ hiện tại mà còn lập kế hoạch bảo trì một cách hợp lý.

Yidun CAPTCHA là gì

Yidun CAPTCHA là gì

Yidun là một hệ thống chống bot hiện đại do NetEase phát triển. Nó dựa trên phân tích hành vi người dùng và không yêu cầu khách truy cập thực hiện nhiệm vụ. Hệ thống theo dõi chuyển động chuột, cử chỉ, tốc độ thao tác, ngữ cảnh mạng và các 'thước đo hành vi' khác, sau đó sử dụng học máy (ML) để xác định người hay bot.
Background
Ví dụ về Yidun (NECaptcha)
Smart Captcha
Smart Captcha
Hệ thống chống bot thông minh tự động nhận diện người dùng đáng tin cậy.
Slide Captcha
Slide Captcha
Captcha hình ảnh phổ biến, cần kéo thanh trượt để hoàn thành một câu đố nhỏ.
Icon Click Captcha
Icon Click Captcha
Yêu cầu người dùng nhấp vào các biểu tượng hoặc phần hình ảnh theo thứ tự nhất định.

Cách giải Yidun bằng CapMonster Cloud

Khi kiểm tra các form với Yidun, thường cần xác minh captcha hoạt động đúng và được tích hợp chính xác.
Bạn có thể kiểm tra captcha thủ công trên trang web của mình:
  • Mở trang form và đảm bảo captcha hiển thị.
  • Thử gửi form mà không giải captcha — server sẽ trả lỗi.
  • Sau khi giải captcha thành công — form sẽ được gửi mà không lỗi.
Để giải captcha tự động, bạn có thể sử dụng các dịch vụ chuyên dụng như CapMonster Cloud — công cụ nhận các tham số captcha, xử lý trên server của họ và trả về token sẵn sàng. Token này có thể được đặt vào form để vượt qua xác thực mà không cần người dùng tham gia.

Làm việc với CapMonster Cloud qua API thường gồm các bước:

Tạo nhiệm vụTạo nhiệm vụ
arrow
Gửi yêu cầu APIGửi yêu cầu API
arrow
Nhận kết quảNhận kết quả
arrow
Áp dụng token lên trangÁp dụng token lên trang
arrow

Giải Yidun CAPTCHA với thư viện sẵn có

CapMonster Cloud cung cấp thư viện cho Python, JavaScript (Node.js) và C#.
Python
JavaScript
C#
python
import asyncio
from capmonstercloudclient import CapMonsterClient, ClientOptions
from capmonstercloudclient.requests import YidunRequest
# from capmonstercloudclient.requests.baseRequestWithProxy import ProxyInfo  # Bỏ comment nếu muốn dùng proxy
API_KEY = "YOUR_API_KEY"  # Nhập API key CapMonster Cloud của bạn
async def solve_yidun_captcha():
    client_options = ClientOptions(api_key=API_KEY)
    cap_monster_client = CapMonsterClient(options=client_options)
    # Ví dụ cơ bản không dùng proxy
    # CapMonster Cloud tự động dùng proxy của họ
    yidun_request = YidunRequest(
        websiteUrl="https://www.example.com",  # URL trang chứa captcha
        websiteKey="6cw0f0485d5d46auacf9b735d20218a5",  # Thay bằng giá trị chính xác
        userAgent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36"  # Dùng UserAgent mới nhất
    )
    # Ví dụ dùng proxy của bạn
    # Bỏ comment khối này nếu muốn dùng proxy của riêng bạn
    # proxy = ProxyInfo(
    #     proxyType="http",
    #     proxyAddress="123.45.67.89",
    #     proxyPort=8080,
    #     proxyLogin="username",
    #     proxyPassword="password"
    # )
    #
    # yidun_request = YidunRequest(
    #     websiteUrl="https://www.example.com",
    #     websiteKey="6cw0f0485d5d46auacf9b735d20218a5",
    #     userAgent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36",
    #     proxy=proxy
    # )
    # Có thể kiểm tra số dư trước khi giải captcha
    balance = await cap_monster_client.get_balance()
    print("Balance:", balance)
    result = await cap_monster_client.solve_captcha(yidun_request)
    print("Solution:", result)
asyncio.run(solve_yidun_captcha())
Giải captcha, đặt token và gửi form
Ví dụ Node.js cho toàn bộ vòng đời giải captcha trên trang web của bạn. Cách tiếp cận: dùng HTTP request để lấy HTML và các tham số hệ thống bảo vệ, gửi phản hồi và xử lý kết quả. Hoặc dùng công cụ tự động hóa (Playwright) — mở trang, chờ xác thực, gửi tham số qua CapMonster Cloud, nhận kết quả, đặt token vào form (bạn có thể dùng dữ liệu đúng hoặc sai để kiểm tra) và xem kết quả.
python

// npm install playwright @zennolab_com/capmonstercloud-client
// npx playwright install chromium
import { chromium } from "playwright";
import { CapMonsterCloudClientFactory, ClientOptions, YidunRequest } from "@zennolab_com/capmonstercloud-client";

(async () => {
  //  Cài đặt
  const TARGET_URL = "https://example.com/";
  const WEBSITE_KEY = "6cw0f0485d5d46auacf9b735d20218a5";   // siteKey Yidun của bạn
  const CMC_API_KEY = "YOUR_API_KEY"; // API key CapMonster Cloud của bạn

  // 1) Khởi chạy trình duyệt
  const browser = await chromium.launch({ headless: false });
  const page = await browser.newPage();
  await page.goto(TARGET_URL, { waitUntil: "domcontentloaded" });

  const cmc = CapMonsterCloudClientFactory.Create(
    new ClientOptions({ clientKey: CMC_API_KEY })
  );

  // 2) Gửi yêu cầu giải captcha Yidun
  const solution = await cmc.Solve(
    new YidunRequest({
      websiteURL: TARGET_URL,
      websiteKey: WEBSITE_KEY,
      userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/156.0.0.0 Safari/537.36"
    })
  );

  const token = solution.solution.token; // Nhận token Yidun
  console.log("Yidun token:", token);

  // 3) Đặt token vào trường ẩn và gửi form
  await page.evaluate((t) => {
    // Tìm input hidden cho token (thay bằng giá trị của bạn)
    const input = document.querySelector('input[name="NECaptchaValidate"]');
    if (input) input.value = t;

    // Gửi form nếu có trên trang
    const form = document.querySelector("form");
    if (form) form.submit();
  }, token);

  console.log("Captcha Yidun đã giải, token được đặt và form đã gửi!");
})();

  
Cách kết nối Yidun (NECaptcha) với trang web của bạn
Để hiểu cách captcha hoạt động trên trang của bạn, logic xác thực, hoặc kết nối/cấu hình lại, nên xem phần này. Nó mô tả quy trình tích hợp bảo vệ chi tiết.

1. Truy cập bảng điều khiển và tạo tài khoản (qua điện thoại hoặc email).

2. Trong bảng, chọn: 产品与服务 → 验证码服务 (Captcha Service).

3. Tạo dự án mới (应用).

4. Kết quả bạn nhận được:

  • captchaId
  • secretKey

5. Ví dụ kết nối frontend Yidun

markup

<!-- Kết nối script YiDun -->
<script src="https://cstaticdun.126.net/load.min.js"></script>

<!-- Container cho captcha -->
<div id="captcha"></div>

<script>
// Khởi tạo captcha
initNECaptcha({
    captchaId: "YOUR_CAPTCHA_ID", // captchaId từ bảng YiDun
    element: "#captcha",          // Nơi đặt widget captcha

    // Gọi sau khi thành công
    onVerify: (err, data) => {
        if (!err) {
            // data.validate -- token captcha
            // Lưu vào trường ẩn của form
            document.querySelector("#validate").value = data.validate;
        }
    }
});
</script>

<!-- Form gửi validate lên server của bạn -->
<form method="POST" action="/verify">
    <!-- Captcha sẽ ghi token vào đây -->
    <input type="hidden" id="validate" name="NECaptchaValidate">

    <button>Submit</button>
</form>


6. Xác thực server Yidun (ví dụ PHP)

php

<?php

// Dữ liệu từ bảng YiDun
$CAPTCHA_ID = "YOUR_CAPTCHA_ID";
$SECRET_ID  = "YOUR_SECRET_ID";

// Nhận token từ frontend
$validate = $_POST["NECaptchaValidate"] ?? null;

// Nếu không có token — lỗi
if (!$validate) {
    echo "Captcha not passed";
    exit;
}

// Chuẩn bị request POST
$url = "https://c.dun.163yun.com/api/v2/verify";

$postData = http_build_query([
    "captchaId" => $CAPTCHA_ID,
    "secretId"  => $SECRET_ID,
    "validate"  => $validate
]);

// Gửi yêu cầu đến YiDun
$opts = [
    "http" => [
        "method"  => "POST",
        "header"  => "Content-Type: application/x-www-form-urlencoded",
        "content" => $postData
    ]
];

$context  = stream_context_create($opts);
$result   = file_get_contents($url, false, $context);

// Giải mã JSON
$data = json_decode($result, true);

// Kiểm tra kết quả
if ($data["result"] === true) {
    echo "Captcha passed successfully";
} else {
    echo "Verification error: " . json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
}
Background

Các lỗi thường gặp và cách xử lý

Bug Icon

Tham số không hợp lệ

Captcha không hiển thị hoặc trả lỗi nếu captchaId hoặc businessId sai, load.min.js chưa kết nối, hoặc truy cập tài nguyên Yidun bị chặn. Kiểm tra captchaId, businessId, https://cstaticdun.126.net/load.min.js và CSP/firewall.
Bug Icon

Timeout hoặc lỗi khởi tạo

SDK trả về 1004 hoặc -1 nếu khởi tạo thất bại. Tăng timeout, kiểm tra kết nối mạng và bật logging SDK.
Bug Icon

Validate token trống hoặc sai

Validate = null hoặc result: false trên server. Kiểm tra captcha đã hoàn tất, validate chưa hết hạn, không dùng lại, captchaId/secretId trùng trên frontend và server.
Bug Icon

Lỗi chữ ký (signature)

Server trả lỗi chữ ký nếu sắp xếp tham số sai hoặc key không đúng. Sắp xếp tham số theo key, dùng secret key đúng và thuật toán HMAC-SHA, log chữ ký.
Bug Icon

Lỗi mạng khi xác thực

Timeout, DNS, SSL hoặc format yêu cầu sai. Gửi yêu cầu đến https://c.dun.163yun.com/api/v2/verify, đặt Content-Type: application/x-www-form-urlencoded và log phản hồi.
Kiểm tra độ bền vững của lớp bảo vệ
Khuyến nghị về bảo mật và tối ưu
Chỉ kiểm tra validate token trên server.
Lưu secret key an toàn.
Kiểm tra các trường bổ sung (userIP, scene) để xác nhận hợp lệ.
Dùng HTTPS cho tất cả request API.
Xử lý lỗi và hiển thị thông báo rõ ràng cho người dùng.
Giới hạn captchaId theo domain.
Kết luận

Nếu bạn tiếp quản một trang web đã được cài sẵn captcha hoặc một hệ thống bảo vệ khác nhưng lại không có quyền truy cập vào mã nguồn thì cũng không có gì đáng lo! Việc xác định chính xác công nghệ nào đang được sử dụng khá đơn giản. Để kiểm tra xem mọi thứ có hoạt động đúng hay không, bạn có thể dùng dịch vụ nhận dạng CapMonster Cloud trong một môi trường thử nghiệm tách biệt nhằm đảm bảo cơ chế xử lý token và logic kiểm tra đang vận hành chính xác.

Với Yidun (NECaptcha), bạn chỉ cần nhận diện hệ thống, quan sát hành vi của nó và xác nhận rằng lớp bảo vệ hoạt động đúng cách. Trong bài viết này, chúng tôi đã chỉ ra cách nhận biết Yidun (NECaptcha) và nơi tìm hướng dẫn tích hợp hoặc cấu hình lại, giúp bạn tự tin duy trì lớp bảo vệ và kiểm soát hoạt động của nó.

Conclusion

Liên kết hữu ích

DocIconĐăng ký hệ thống NetEase Yidun →DocIconTài liệu Yidun →DocIconTài liệu CapMonster Cloud (Yidun) →

Câu hỏi thường gặp về Yidun (NECaptcha)

Yidun phát hiện bot bằng cách kết hợp thử thách CAPTCHA với phân tích hành vi và thiết bị theo thời gian thực. Nó hỗ trợ slider, nhấp biểu tượng và các loại thử thách khác. Nó cũng có thể chạy ở chế độ vô hình mà không hiển thị puzzle ngay lập tức.

Ở chế độ Smart Captcha, Yidun đánh giá các tín hiệu như hành vi chuột hoặc chạm, thời gian tương tác và ngữ cảnh mạng hoặc thiết bị để gán điểm rủi ro. Điều này khiến việc vượt qua khó hơn so với CAPTCHA chỉ dựa trên hình ảnh, vì bot phải làm nhiều hơn là giải thử thách — chúng còn phải bắt chước hành vi con người và nhất quán trong suốt phiên.

Trường userAgent là tùy chọn, nhưng chúng tôi khuyến nghị mạnh mẽ cung cấp một giá trị. Nó phải là chuỗi User-Agent trình duyệt Windows hợp lệ và hiện tại, mà dịch vụ CapMonster Cloud hoạt động. Vì Yidun sử dụng kiểm tra hành vi, gửi user agent lỗi thời hoặc không phải Windows có thể giảm độ tin cậy giải. Nếu bỏ qua trường này, tác vụ vẫn có thể được tạo, nhưng truyền rõ ràng UA Windows hợp lệ giúp bạn kiểm soát tính nhất quán tốt hơn.

Có — tham số proxy là tùy chọn cho YidunTask và tác vụ có thể được thực thi qua máy chủ proxy của CapMonster Cloud. Cung cấp proxy riêng chủ yếu hữu ích khi quy trình làm việc của bạn yêu cầu lưu lượng từ dải IP hoặc khu vực địa lý cụ thể.

Các nguyên nhân phổ biến nhất như sau:

  • Token hết hạn hoặc đã được sử dụng. Token Yidun chỉ dùng một lần và có thời hạn, vì vậy cần được xác minh ngay sau khi giải CAPTCHA.
  • Giá trị captchaId và secretId không khớp giữa frontend và máy chủ. Kiểm tra thông tin này trong bảng điều khiển Yidun.
  • Ở phía máy chủ, đảm bảo gửi yêu cầu xác minh tới https://c.dun.163yun.com/api/v2/verify với header Content-Type: application/x-www-form-urlencoded.
  • Nếu khởi tạo thất bại trước khi xác minh, triệu chứng có thể bao gồm mã lỗi 1004 hoặc -1. Tăng timeout, kiểm tra kết nối mạng và bật ghi log SDK.

NECaptchaValidate là trường input HTML ẩn mà các form được Yidun bảo vệ dùng để chuyển token xác minh từ frontend tới máy chủ. Sau khi API CapMonster Cloud trả về token đã giải, script tự động hóa phải đặt giá trị đó vào input[name="NECaptchaValidate"] trước khi gửi form. Nếu bỏ qua bước này, máy chủ không nhận được bằng chứng hợp lệ rằng CAPTCHA đã được giải và việc gửi thường bị từ chối.