Lưu lượng mà không ai gọi tên được
Nhìn kỹ vào logs của một application, bạn sẽ thấy những request khó giải thích. Chúng đến từ các client không có ngữ cảnh browser. User-agent string của chúng chung chung, rỗng hoặc bị sao chép từ một browser phổ biến. Chúng không ký request. Chúng không nói ai đã gửi chúng. Một số là script vô hại. Một số là agent đang làm việc cho người dùng thật. Một số là công cụ mà bạn không muốn phục vụ chút nào.
Đó là lưu lượng tự động không xác định, và hầu hết team xử lý nó theo một trong hai cách. Hoặc nó bị tính âm thầm như con người, làm sai lệch analytics và cho hoạt động rủi ro đi qua, hoặc nó bị coi là độc hại theo mặc định, làm chặn cả người dùng hợp lệ lẫn agent cùng mọi thứ khác. Cả hai cách đều có cùng một lỗi: chúng thay thế bằng chứng còn thiếu bằng một giả định.
Proof of Actor chọn cách nhìn ngược lại. Nếu bằng chứng không đủ để đưa ra kết luận đáng tin cậy, câu trả lời đúng là Unknown, và Unknown nên được hiển thị, đo lường và xử lý một cách có chủ đích. Bài viết vì sao Unknown là một kết quả hợp lệ cho lưu lượng AI trình bày đầy đủ lập luận này.
Vì sao Unknown là một kết quả hạng nhất
Proof of Actor phân loại mọi tương tác vào một trong bốn lớp: Human, Human + AI, Agent hoặc Unknown. Unknown không phải là trạng thái lỗi hay một khoảng trống trong product. Đó là một kết quả có chủ ý với ý nghĩa chính xác: bằng chứng hiện có không đủ để đưa ra kết luận đáng tin cậy.
Sự trung thực đó mang lại lợi ích thực tế.
- Analytics của bạn chính xác hơn. Số lượng Human và Agent chỉ bao gồm các tương tác có bằng chứng hỗ trợ, nên chúng phản ánh đúng điều chúng thể hiện.
- Phạm vi bao phủ của bạn đo được. Tỷ lệ Unknown trên từng route cho bạn biết chính xác nơi nào cần thêm bằng chứng.
- Policy của bạn an toàn hơn. Các trường hợp chưa chắc chắn sẽ đi vào một phương án dự phòng do bạn chọn, thay vì bị ngầm coi là đáng tin cậy hoặc bị chặn chỉ dựa trên phỏng đoán.
Unknown không bao giờ bị chuyển thành Human, và cũng không bao giờ bị mặc định coi là độc hại. Bạn có thể đọc thêm trong mục glossary phân loại Unknown, ở Detection & Limitations, và trong vì sao Unknown là một kết quả hợp lệ cho lưu lượng AI. Các use case websites và APIs cho thấy cách các team thiết lập phương án dự phòng cho Unknown trong thực tế.
Lưu lượng tự động không xác định đến từ đâu
Hiểu nguồn gốc sẽ giúp bạn quyết định cách xử lý nó.
Các client tự động không ký
Ký request với HTTP Message Signatures, được định nghĩa trong RFC 9421, là tùy chọn, và IETF Web Bot Auth working group vẫn đang chuẩn hóa cách các client tự động nên xác thực theo cách này. Nếu không có chữ ký, danh tính của client chỉ dựa vào những gì nó tự khai.
User agent bị sao chép hoặc chung chung
User-agent string rất dễ đặt. Một client tự nhận là một browser hoặc crawler nổi tiếng có thể đúng như vậy, hoặc cũng có thể chỉ đang giả mạo. Mục user-agent spoofing giải thích vì sao riêng header này không thể tự mang một phân loại. Đó cũng là lý do các công cụ tìm kiếm công bố các phương pháp xác minh riêng: Google mô tả tra cứu reverse và forward DNS cùng các dải IP đã công bố để verifying Googlebot, và Bing mô tả cùng kiểm tra DNS đó để verifying Bingbot.
Các route không có tích hợp
Nếu một route không có tích hợp browser và không có ngữ cảnh phía server ngoài những dữ liệu cơ bản, thì đơn giản là có ít thứ hơn để quan sát. Unknown trên những route đó là dấu hiệu của phạm vi bao phủ, không phải dấu hiệu của mối đe dọa.
Bằng chứng bị thiếu hoặc đến muộn
Một timeout, một script bị chặn hoặc một request chưa hoàn chỉnh có thể khiến kết quả không có đủ bằng chứng. Proof of Actor ghi nhận điều đó một cách trung thực thay vì tự lấp khoảng trống.
Proof of Actor giúp Unknown trở nên dễ quản lý như thế nào
Proof of Actor tổ chức công việc của mình thành ba năng lực. Mỗi năng lực đều hỗ trợ xử lý lưu lượng tự động không xác định.
Detect: giữ Unknown tách biệt
Các tín hiệu được kiểm tra và gắn nhãn theo cơ sở: verified, declared, inferred hoặc unknown. Khi chúng không đủ để đưa ra kết luận, kết quả sẽ là Unknown kèm theo một tóm tắt về những gì đã có và những gì chưa có. Không có gì bị phỏng đoán rồi gán sang lớp khác.
Understand: xem Unknown đang nằm ở đâu
Chế độ Understand hiển thị Unknown trong mọi phân tích tách lớp, theo route và theo thời gian. Bạn có thể thấy route nào có nhiều hoạt động không xác định nhất, nó thay đổi thế nào sau khi bạn thêm tích hợp, và bằng chứng nào đã có cho từng tương tác. Điều này biến một nỗi lo mơ hồ thành một bản đồ cụ thể.
Route: chọn phương án dự phòng cho từng route
Mỗi route xứng đáng có một phương án dự phòng khác nhau. Một điểm khởi đầu hợp lý cho nhiều application là:
- Trang công khai và tài liệu: cho phép Unknown với giới hạn rate limit tiêu chuẩn của bạn.
- Signup và onboarding: giữ nguyên các kiểm tra hiện có của bạn, và chỉ thêm review khi chính điều kiện của bạn yêu cầu.
- Thay đổi tài khoản và các hành động nhạy cảm khác: dựa vào xác thực hiện có và các kiểm soát step-up của bạn, không dựa vào phỏng đoán về actor.
- Các thao tác API có tác động lớn: yêu cầu các credential hoặc kiểm soát mạnh hơn mà API của bạn đã hỗ trợ.
Hướng dẫn về handling unknown traffic đi qua cách thiết kế các phương án dự phòng này, bao gồm lựa chọn fail-open và fail-closed cho từng mức rủi ro.
Thu hẹp Unknown theo thời gian
Mục tiêu không phải là xóa Unknown qua đêm. Mục tiêu là làm cho nó nhỏ dần mỗi tháng, vì những lý do đúng đắn.
- Thêm tích hợp ở nơi quan trọng. Một tích hợp browser trên các trang chính và một tích hợp phía server trên các route chính sẽ tăng lượng bằng chứng sẵn có.
- Hỗ trợ signed requests. Khi các nhà vận hành agent áp dụng HTTP message signatures, lưu lượng vốn là Unknown sẽ trở thành lưu lượng Agent đã được verified.
- Ghi lại declarations trong app của chính bạn. Khi application của bạn biết rằng có sự hỗ trợ AI, hãy nói rõ điều đó. Đó là bằng chứng chính xác và ít tốn kém.
- Tạo một lối vào chính thức cho agent. Công bố một đường dẫn có cấu trúc cho agent sẽ khuyến khích chúng tự nhận diện thay vì hòa lẫn vào đám đông.
Vì Proof of Actor theo dõi Unknown theo route, bạn có thể thấy từng thay đổi này phản ánh trong số liệu.
Cách hoạt động
Mọi tương tác đều đi theo cùng một quy trình ưu tiên bằng chứng, được mô tả đầy đủ trong How It Works: application của bạn nhận một request hoặc event, tích hợp thu thập các tín hiệu có sẵn trong ngữ cảnh đó, các tín hiệu được chuẩn hóa và phân loại với một cơ sở rõ ràng, kết quả được ghi lại cho analytics, và application của bạn áp dụng policy của riêng nó hoặc chỉ quan sát.
Timeout và telemetry bị thiếu được xử lý một cách rõ ràng. Tích hợp của bạn sử dụng phương án dự phòng mà bạn đã chọn cho route đó, và kết quả không bao giờ được nâng lên Human chỉ vì thiếu bằng chứng.
Điều tốt trông như thế nào sau vài tháng
Các team xử lý tốt lưu lượng tự động không xác định thường đạt đến cùng một trạng thái lành mạnh. Unknown là một giá trị đã biết trên mọi route quan trọng, được theo dõi trong cùng dashboard với hoạt động Human và Agent. Mỗi route có một phương án dự phòng được viết ra mà product, platform và security team đã cùng thống nhất. Lưu lượng Agent đã verified tăng lên khi nhiều nhà vận hành hơn ký request của họ, và các agent đó được phục vụ qua một đường dẫn có cấu trúc thay vì đi crawl các trang. Các hành động nhạy cảm được bảo vệ bởi xác thực và các kiểm soát step-up mà application đã tin cậy, với ngữ cảnh actor chỉ là một đầu vào bổ sung chứ không phải người gác cổng.
Quan trọng nhất là không ai phải đoán nữa. Khi có ai hỏi bao nhiêu phần trăm lưu lượng tuần trước là tự động, câu trả lời đi kèm cơ sở của nó: bao nhiêu verified, bao nhiêu declared, bao nhiêu inferred, và bao nhiêu vẫn là Unknown. Đó là một con số mà team có thể lập kế hoạch dựa vào. Nó cũng thay đổi cách trao đổi với lãnh đạo, vì câu hỏi không còn là bot có phải vấn đề hay không, mà là route nào cần thêm bằng chứng và phương án dự phòng nào cần tinh chỉnh.
Bắt đầu ở chế độ quan sát
Proof of Actor không chặn gì theo mặc định. Ở chế độ quan sát, các kết quả được ghi lại trong khi application của bạn phản hồi đúng như trước đây. Team của bạn xem mỗi route nhận bao nhiêu lưu lượng tự động không xác định, so sánh với các kết quả đã biết, và thiết kế phương án dự phòng dựa trên các mẫu thực tế. Policy được bật từng route một, chỉ khi team của bạn tin chắc rằng chúng phù hợp.
Tham gia chương trình founding developer
Proof of Actor đang ở private beta. Các team founding developer được chọn có thể nhận tới 12 tháng truy cập miễn phí, trong giới hạn sử dụng đã thống nhất, đổi lại là phản hồi sản phẩm trực tiếp, kèm hỗ trợ tích hợp trực tiếp từ kỹ sư của chúng tôi.
Nếu lưu lượng tự động không xác định đang làm mờ analytics hoặc quyết định security của bạn, hãy apply for early access. Hãy cho chúng tôi biết về application của bạn và những route mà Unknown quan trọng nhất.
Khám phá Proof of Actor, đọc how it works, hoặc xem what the evidence can establish.
Nguồn
- RFC 9421: HTTP Message Signatures, IETF, February 2024.
- Web Bot Auth (webbotauth) working group charter, IETF.
- Verifying Googlebot and other Google crawlers, Google Search Central.
- How to verify that Bingbot is Bingbot, Bing Webmaster Blog.