Imperva Bypass cho Web Scraping: Các lớp phát hiện, Kiểm tra & Các tùy chọn an toàn hơn
Specialist in Anti-Bot Strategies
TL;DR:
- Các lỗi thu thập dữ liệu liên quan đến Imperva là vấn đề phân loại trước khi trở thành vấn đề công cụ. Ghi lại trang trả về, chuyển hướng, cookie, hành vi của trình duyệt và nội dung kinh doanh mong đợi trước khi thay đổi khách hàng.
- Một địa chỉ IP khác chỉ giải quyết các ràng buộc xuất phát từ mạng. Quản lý bot hiện đại có thể kết hợp các tín hiệu vận chuyển, HTTP, JavaScript, trình duyệt, cookie và hành vi.
- Thành công HTTP không phải là thành công về nội dung. Một trang ngăn chặn, màn hình đồng ý, hoặc trang thay thế có thể trả về trạng thái bình thường trong khi không đáp ứng hợp đồng khai thác.
- Chọn lộ trình truy cập theo hành vi trang. HTML mở thích hợp cho một khách hàng trực tiếp, các trang công cộng có tương tác nhiều có thể cần một trình duyệt, và việc tiếp cận quản lý phù hợp với các nhóm cần nội dung đã được xác thực thay vì cơ sở hạ tầng trình duyệt.
- Kiểm tra an toàn có một ranh giới hẹp. Chỉ làm việc với các trang công cộng hoặc được ủy quyền rõ ràng, định nghĩa một dấu hiệu nội dung, giữ cho thể tích yêu cầu hạn chế, và dừng lại khi việc truy cập yêu cầu thông tin xác thực hoặc vượt qua một kiểm soát.
Một trang web được bảo vệ bởi Imperva có thể trả về nhiều biểu diễn cho cùng một URL. Một trình duyệt thông thường có thể hiển thị trang công cộng như mong đợi trong khi một kịch bản nhận được tài liệu thách thức, một trang ngăn chặn, hoặc nội dung thiếu các trường yêu cầu.
Cụm từ tìm kiếm “bỏ qua Imperva” nén những kết quả đó thành một nhãn. Một đánh giá kỹ thuật hữu ích phân tách chúng thành các lớp quan sát được, sau đó chọn lộ trình truy cập ít phức tạp nhất được phép có thể đáp ứng một bài kiểm tra chấp nhận ở cấp độ nội dung.
Hướng dẫn này giải thích quy trình chẩn đoán mà không cung cấp công thức khai thác. Nó chỉ đề cập đến dữ liệu công khai hoặc được ủy quyền rõ ràng; các khu vực riêng tư, kiểm soát tài khoản và nguồn lực hạn chế yêu cầu một phương pháp truy cập được hỗ trợ và ủy quyền rõ ràng.
Imperva Bot Protection là gì?
Imperva cung cấp các điều khiển bảo vệ ứng dụng web và bot có thể đánh giá lưu lượng truy cập trước khi một ứng dụng trả về nội dung thông thường của nó. Sản phẩm có thể kết hợp thu thập từ phía khách hàng với phân tích từ phía máy chủ và quyết định dựa trên hành vi.
Tài liệu Tổng quan về Imperva Advanced Bot Protection mô tả một cách tiếp cận đa lớp đánh giá thông tin thiết bị và hành vi. Điều đó có nghĩa là một phản hồi chặn hoặc thay thế không nên được quy cho một tiêu đề mà không có bằng chứng.
Imperva cũng được sử dụng cùng với các điều khiển khác. Một trang có thể áp dụng xác thực ứng dụng, ủy quyền, giới hạn tốc độ, chính sách khu vực hoặc quy tắc kinh doanh tùy chỉnh trước hoặc sau lớp quản lý bot. Xem trang trả về như một kết quả hệ thống, không phải là bằng chứng của một quyết định sản phẩm duy nhất.
Một thất bại liên quan đến Imperva trông như thế nào
Triệu chứng rõ ràng là điểm khởi đầu cho việc chẩn đoán.
| Triệu chứng | Điều nó chứng minh | Điều nó không chứng minh |
|---|---|---|
| Chuyển hướng đến một trang xác thực | Trang thông thường không được trả lại trực tiếp | Tín hiệu nào đã gây ra quyết định |
| HTML tải mà không có dữ liệu mong đợi | Việc thu thập đã đạt đến một tài liệu | Rằng việc xử lý JavaScript hoặc khai thác đã hoàn tất |
| Trình duyệt hoạt động trong khi HTTP trực tiếp không | Trạng thái của trình duyệt thay đổi kết quả | Rằng bất kỳ cấu hình trình duyệt nào sẽ được chấp nhận |
| Một trang hoạt động và trang tiếp theo thì không | URL hoặc ngữ cảnh phiên quan trọng | Rằng proxy là nguyên nhân duy nhất |
| Trạng thái bình thường với văn bản thách thức | Vận chuyển đã hoàn thành | Rằng nội dung kinh doanh là hợp lệ |
| Nội dung thay đổi theo khu vực | Địa lý ảnh hưởng đến đại diện | Rằng trang bị chặn ở mọi nơi khác |
Lưu URL cuối cùng, loại phản hồi, một bản tóm tắt ngắn của nội dung, dấu hiệu nội dung mong đợi, và liệu trang có thay đổi sau khi thực thi JavaScript hay không. Những bằng chứng đó cho phép một kỹ sư so sánh kết quả mà không cần thu thập nội dung trang không cần thiết.
Các lớp phát hiện ảnh hưởng đến kết quả
Các quyết định truy cập liên quan đến Imperva có thể phản ánh nhiều lớp cùng một lúc.
Xuất xứ mạng
Lớp mạng tiết lộ địa chỉ nguồn rõ ràng, địa lý, hệ thống tự trị và lịch sử kết nối. Một proxy có thể thay đổi lớp này, nhưng nó không cung cấp trạng thái trình duyệt hoặc quyền ứng dụng.
Đặc điểm vận chuyển
TLS thiết lập kết nối mã hóa và thương lượng hành vi giao thức. Tài liệu đặc tả TLS 1.3 định nghĩa những thủ tục bắt tay và các tham số thương lượng mà một khách hàng và máy chủ trao đổi. Do đó, các ngăn xếp khách hàng khác nhau có thể tạo ra các hành vi vận chuyển quan sát được khác nhau ngay cả khi họ yêu cầu cùng một URL.
Ngữ nghĩa HTTP
HTTP mang theo phương thức, tiêu đề, chuyển hướng, cookie, thương lượng nội dung, và siêu dữ liệu phản hồi. Tài liệu đặc tả ngữ nghĩa HTTP định nghĩa những trường này và vai trò của các trung gian.
Một chuỗi User-Agent được sao chép chỉ là một trường duy nhất. Nó không làm cho tập hợp tiêu đề xung quanh, hành vi TLS, trạng thái cookie, môi trường JavaScript, hoặc chuỗi điều hướng trở nên hợp lý.
Trạng thái Trình duyệt và JavaScript
Một trình duyệt tải tài nguyên, thực thi mã, công khai các thuộc tính runtime, duy trì bộ nhớ, và cập nhật tài liệu. Một khách hàng HTTP trực tiếp không thực hiện những hành động đó.
Chỉ sử dụng việc thực thi trong trình duyệt khi nội dung công khai cần thiết thực sự phụ thuộc vào nó. Điều kiện chấp nhận nên nêu tên nội dung cần thiết cho tác vụ dữ liệu, không phải là sự trì hoãn chung hoặc ảnh chụp màn hình.
Cookie và tính liên tục của phiên
Cookie mang trạng thái qua các yêu cầu. Quy định quản lý trạng thái HTTP xác định cách các máy chủ thiết lập cookie và cách các tác nhân người dùng trả về chúng.
Tính nhất quán của phiên rất quan trọng khi trang đợi một chuỗi điều hướng. Việc thay thế khách hàng hoặc mạng trong quá trình có thể tạo ra một đại diện khác mặc dù URL không thay đổi.
Hành vi và chính sách ứng dụng
Ứng dụng có thể đánh giá thứ tự điều hướng, nhịp độ yêu cầu, trạng thái tài khoản và chính sách cụ thể về kinh doanh. Các kiểm soát an ninh cũng có thể phân loại các quy trình tự động như một mối đe dọa ứng dụng. Dự án Mối đe dọa Tự động OWASP cung cấp từ vựng cho các mối đe dọa liên quan đến tự động hóa, bao gồm việc thu thập dữ liệu và các tình huống lạm dụng.
Lớp này là nơi quyền truy cập trở nên quyết định. Nếu quy trình yêu cầu vượt qua một lần đăng nhập, quy tắc tài khoản, điểm cuối riêng tư, hoặc hạn chế truy cập rõ ràng, hãy có được một phương pháp hỗ trợ thay vì xem đó như một vấn đề tinh chỉnh kỹ thuật.
Ma trận Kiểm tra Từ Triệu Chứng đến Lớp
| Quan sát | Lớp có khả năng kiểm tra | Phương pháp xác minh an toàn | Điều kiện chấp nhận |
|---|---|---|---|
| HTML thô chứa các trường mong đợi | Phân tích | Lưu một mẫu nhỏ đã được phê duyệt và kiểm tra các bộ chọn | Các trường yêu cầu phân tích vào sơ đồ |
| HTML thô chỉ là một shell ứng dụng | Kết xuất | Kết xuất một trang cho phép trong trình duyệt kiểm soát | Phần tử mong đợi tồn tại sau khi kết xuất |
| Chuỗi chuyển hướng kết thúc trên một trang khác | HTTP hoặc chính sách | Ghi lại mỗi vị trí và danh tính trang cuối | URL cuối vẫn nằm trong phạm vi được phê duyệt |
| Trình duyệt nhận trang thách thức | Xác thực lưu lượng | So sánh tiêu đề trang và dấu hiệu cần thiết | Nội dung công cộng thông thường có mặt |
| Trang thay đổi sau lần điều hướng đầu tiên | Phiên | Bảo tồn một phiên đã ủy quyền cho chuỗi | Trạng thái vẫn nhất quán trong suốt quá trình |
| Quốc gia thay đổi trang | Mạng và địa phương hóa | Ghi nhớ thị trường cần thiết cho tập dữ liệu | Ngôn ngữ và nội dung khớp với hợp đồng thị trường |
| Cần đăng nhập | Ủy quyền | Dừng lại và có được quyền truy cập được hỗ trợ | Quyền lực được viết và đường dẫn tài khoản đã được phê duyệt |
Thay đổi một biến kiểm soát tại một thời điểm. Nếu khách hàng, loại IP, quốc gia, trạng thái cookie và URL đều thay đổi cùng nhau, kết quả không thể xác định được ranh giới nào quan trọng.
Tại sao Một Proxy Đơn Lẻ Có Thể Không Đủ
Một proxy thay đổi nơi yêu cầu có vẻ phát sinh. Nó có thể hữu ích khi một trang công khai được địa phương hóa, khi một nguồn áp đặt các giới hạn yêu cầu ở cấp độ mạng, hoặc khi dự án phải đại diện cho một thị trường cụ thể.
Một proxy không thực thi JavaScript, bảo tồn mô hình lưu trữ của trình duyệt, xác nhận nội dung trả về, hoặc cấp phép truy cập vào một khu vực bị hạn chế. Nó cũng không thể sửa chữa một trình phân tích mà bộ chọn của nó không còn khớp với trang.
Chọn một proxy chỉ sau khi xác định yêu cầu gốc mạng. Sau đó xác định quốc gia, hành vi phiên, giao thức và dấu hiệu nội dung cần thiết cho tập dữ liệu. Giải pháp Proxy Không Có Rác có thể hỗ trợ lớp mạng cho việc thu thập được phê duyệt, trong khi khách hàng thu thập vẫn có trách nhiệm về kết xuất và xác thực.
So sánh HTTP Trực Tiếp, Tự Động Hóa Trình Duyệt và Thu Thập Quản Lý
| Lộ trình | Phù hợp nhất | Những gì nhóm sở hữu | Kiểm tra chấp nhận chính |
|---|---|---|---|
| HTTP Trực Tiếp | HTML được kết xuất từ máy chủ công cộng hoặc điểm cuối tài liệu | Tiêu đề, phiên, phân tích, khả năng quan sát | Trường mong đợi tồn tại trong phản hồi |
| Trình duyệt tự quản lý | Các trang công cộng yêu cầu JavaScript hoặc tương tác | Phiên bản trình duyệt, phiên, runtime, hạ tầng | Trường mong đợi tồn tại trong tài liệu đã được kết xuất |
| API thu thập quản lý | Các trang công cộng nơi sản phẩm cần có nội dung được xác thực | Hợp đồng yêu cầu, trích xuất trường, xác thực kết quả | Tài liệu trả về khớp với danh tính và sơ đồ trang |
Bắt đầu với HTTP trực tiếp khi các trường mong đợi có trong phản hồi ban đầu. Một trình duyệt thêm khả năng hữu ích nhưng cũng thêm công việc về vòng đời, tài nguyên và khả năng quan sát. Một API được quản lý là thích hợp khi nhóm muốn một hợp đồng thu thập nội dung có giới hạn thay vì duy trì hạ tầng trình duyệt.
Scrapeless API thu thập dữ liệu toàn cầu cung cấp một lộ trình được quản lý cho việc thu thập dữ liệu từ các trang công khai có phép. Nó nên nhận một URL đã được phê duyệt và trả về nội dung mà ứng dụng xác thực dựa trên một dấu hiệu đặc trưng của nguồn.
Nhận khóa API của bạn trên gói miễn phí: app.scrapeless.com
Xây dựng một bài kiểm tra an toàn trước khi mở rộng
Một bài kiểm tra hữu ích là đủ nhỏ để giải thích và đủ nghiêm ngặt để từ chối các trang sai.
Định nghĩa ranh giới
Ghi lại chủ sở hữu được phép, phạm vi đường dẫn, các trường, mục đích, quốc gia và chủ sở hữu bộ sưu tập. Không bao gồm dữ liệu đã xác thực, cá nhân, bí mật và hạn chế trừ khi có sự phê duyệt riêng.
Chọn các trang công khai đại diện
Sử dụng một bộ nhỏ bao gồm các mẫu trang mà công việc sản xuất cần. Không suy luận hiệu suất từ một URL tiện lợi.
Thiết lập một cơ sở
Ghi lại tiêu đề trang dự kiến, loại nội dung, URL chính thống, và một dấu hiệu kinh doanh ổn định bằng cách sử dụng một lần truy cập trình duyệt được phép thông thường.
Kiểm tra một lộ trình thu thập
Chạy một lộ trình với cài đặt địa lý và phiên cố định. Lưu trữ danh tính phản hồi và kết quả xác thực, không lưu trữ một kho lưu trữ trang không kiểm soát đầy đủ.
Xác thực nội dung kinh doanh
Từ chối các trang được đồng ý, trang đăng nhập, các khung trống, thử thách, chuyển hướng không liên quan, và tài liệu thiếu các trường cần thiết. Một trạng thái bình thường là cần thiết nhưng không đủ.
Mở rộng chỉ sau khi hợp đồng ổn định
Thêm các mẫu trang và khối lượng một cách từ từ trong khi theo dõi sự chấp nhận nội dung, sự hoàn thiện của sơ đồ, thời gian và chi phí cho mỗi bản ghi được chấp nhận. Dừng lại khi một kết quả cho thấy một ranh giới ủy quyền.
Sử dụng Hợp đồng Chấp nhận Nội dung
Lớp thu thập nên trả về một kết quả có kiểu.
| Trường | Mục đích |
|---|---|
source_url |
Nguồn công khai đã yêu cầu |
final_url |
Đích đến sau các chuyển hướng được phép |
page_identity |
Tiêu đề, chính thống hoặc khóa bản ghi kỳ vọng |
collected_at |
Bối cảnh thu thập |
locale |
Quốc gia và ngôn ngữ đã sử dụng cho yêu cầu |
validation_status |
Được chấp nhận, thiếu nội dung, trang không mong đợi, hoặc xem xét chính sách |
required_fields |
Các trường kinh doanh mà tài liệu phải chứa |
content_hash |
Phát hiện thay đổi cho đại diện được chấp nhận |
Không chuyển một tài liệu thất bại cho trình phân tích như dữ liệu thông thường. Một kết quả unexpected_page có kiểu hữu ích hơn một hàng dữ liệu chứa đầy văn bản thử thách.
Hướng dẫn phương pháp thu thập dữ liệu web cung cấp một khuôn khổ quyết định rộng hơn cho các lộ trình thu thập HTTP, trình duyệt và quản lý.
Tính đến Chi phí và Bảo trì
Chi phí truy cập bao gồm nhiều hơn là lưu lượng mạng. Đo thời gian chạy trình duyệt, trọng lượng trang, công việc xác thực, bảo trì khai thác, lưu trữ, và thời gian kỹ thuật cho mỗi bản ghi được chấp nhận.
HTTP trực tiếp thì hiệu quả khi trả về nội dung cần thiết. Một trình duyệt tự quản lý có thể tiết kiệm cho một quy trình làm việc ổn định, cần tương tác nhiều với một đội ngũ nền tảng có kinh nghiệm. Sự thu thập được quản lý giảm thiểu quyền sở hữu cơ sở hạ tầng nhưng vẫn cần một sơ đồ rõ ràng và các kiểm tra chất lượng.
So sánh giá cả Scrapeless chỉ sau khi định nghĩa bộ trang và hợp đồng chấp nhận. Giá yêu cầu thô không thể so sánh khi một lộ trình trả về trang chính xác và lộ trình khác trả về một tài liệu không sử dụng được.
Xử lý Dữ liệu Web Công khai một cách Trách nhiệm
Bảo vệ Imperva không xác định liệu một dự án thu thập có được phép hay không. Xem xét các điều khoản của nguồn, luật áp dụng, quyền nội dung, nghĩa vụ bảo mật, và mục đích sử dụng một cách riêng biệt.
Giữ cho chương trình уз hẹp:
- chỉ thu thập các trang công khai hoặc đã được ủy quyền rõ ràng;
- không truy cập các khu vực chỉ dành cho tài khoản hoặc riêng tư mà không có sự chấp thuận;
- tối thiểu hóa các trường và giữ lại;
- giữ cho khối lượng yêu cầu tương xứng;
- ghi lại nguồn gốc và quy tắc xóa;
- chuyển hướng quyền truy cập gây tranh cãi cho các chủ sở hữu pháp lý và an ninh.
Mục tiêu kỹ thuật là thu thập đáng tin cậy trong một ranh giới đã được phê duyệt, không phải là làm thất bại chính sách bảo mật của một trang.
Kết luận: Chẩn đoán Lớp, Sau đó Chọn Lộ Trình
Các lỗi liên quan đến Imperva trở nên dễ quản lý khi đội ngũ ghi lại đại diện đã trả về, tách biệt các lớp mạng, vận chuyển, HTTP, trình duyệt, phiên làm việc và chính sách, và xác thực nội dung kinh doanh rõ ràng.
Sử dụng HTTP trực tiếp cho các trang mở mà lộ ra các trường cần thiết, một trình duyệt cho tương tác và hiển thị được phép, và thu thập được quản lý khi ứng dụng cần nội dung công khai đã được xác thực mà không sở hữu ngăn xếp trình duyệt.
Sẵn sàng để thử nghiệm một quy trình làm việc trang công khai có kiểm soát?
Tham gia cùng các nhà phát triển xây dựng các pipeline dữ liệu web được đo lường: Discord · Telegram.
Đăng ký tại app.scrapeless.com và bắt đầu với một trang được phê duyệt, một dấu hiệu nội dung mong đợi và một hợp đồng kết quả đã gõ.
Câu hỏi thường gặp
Q: Imperva là gì trong việc thu thập dữ liệu web?
Imperva là một lớp bảo vệ ứng dụng web và bot có thể đánh giá tín hiệu mạng, khách hàng, trình duyệt, phiên và hành vi trước khi một trang trả về nội dung thông thường của nó.
Q: Thay đổi User-Agent có thể giải quyết một khối Imperva không?
Việc thay đổi một tiêu đề không tái tạo lại quá trình truyền tải, cookie, JavaScript, trạng thái trình duyệt và trạng thái phiên có thể góp phần vào quyết định truy cập.
Q: Proxy dân cư có đủ cho một trang được bảo vệ bởi Imperva không?
Một proxy dân cư thay đổi nguồn gốc mạng và có thể thỏa mãn yêu cầu vị trí địa lý, nhưng nó không thực thi JavaScript, giữ lại trạng thái trình duyệt, xác thực nội dung hoặc cấp quyền.
Q: Một đội nên kiểm tra một trang công cộng được ủy quyền như thế nào?
Sử dụng một tập hợp trang đại diện nhỏ, cố định các đầu vào vị trí địa lý và phiên, ghi lại danh tính trang trả về, và chỉ chấp nhận các tài liệu chứa dấu hiệu kinh doanh cần thiết.
Q: Khi nào thì một API được quản lý là phù hợp?
Một API được quản lý là phù hợp khi sản phẩm giao hàng là nội dung trang công cộng đã được xác thực và việc duy trì thực thi trình duyệt, phiên, định tuyến và quan sát sẽ làm sao lãng khỏi sản phẩm dữ liệu.
Q: Việc thu thập dữ liệu từ một trang được bảo vệ bởi Imperva có hợp pháp không?
Tính hợp pháp phụ thuộc vào sự ủy quyền, quyền quyền tài phán, điều khoản, loại dữ liệu, quyền nội dung, nghĩa vụ bảo mật và mục đích sử dụng. Công nghệ bảo vệ một mình không trả lời được câu hỏi đó.
Tại Scrapless, chúng tôi chỉ truy cập dữ liệu có sẵn công khai trong khi tuân thủ nghiêm ngặt các luật, quy định và chính sách bảo mật trang web hiện hành. Nội dung trong blog này chỉ nhằm mục đích trình diễn và không liên quan đến bất kỳ hoạt động bất hợp pháp hoặc vi phạm nào. Chúng tôi không đảm bảo và từ chối mọi trách nhiệm đối với việc sử dụng thông tin từ blog này hoặc các liên kết của bên thứ ba. Trước khi tham gia vào bất kỳ hoạt động cạo nào, hãy tham khảo ý kiến cố vấn pháp lý của bạn và xem xét các điều khoản dịch vụ của trang web mục tiêu hoặc có được các quyền cần thiết.



