عندما تقوم بكشط البيانات من مواقع الويب واسعة النطاق ، فمن غير المرجح أنك لم تضطر إلى مواجهة اختبار CAPTCHA لإثبات أنك إنسان. بصفتك مكشطة ويب ، قد تعرف بالفعل سبب إجبار متخصصي الأمن السيبراني على اختراعها. لقد كانت نتيجة لأتمتة برامج الروبوت الخاصة بك لطلبات مواقع الويب التي لا نهاية لها للوصول إليها. لذلك حتى المستخدمين الحقيقيين كان عليهم أن يمروا بآلام مواجهة اختبارات CAPTCHA التي تظهر بأشكال مختلفة. ومع ذلك ، يمكنك تجاوز اختبارات CAPTCHA سواء كنت مكشطة ويب أم لا ، وهو ما سيكون هدف هذه المقالة. لكن أولا ، دعنا نتعمق في ماهية اختبارات CAPTCHA.
عادة ما يتم تشغيل CAPTCHAs لاكتشاف حركة المرور غير الطبيعية في الموقع. لذلك ، يمكن أن يؤدي ذلك إلى مقاطعة الكاشطات أثناء استخراج البيانات بأعداد هائلة. لتجاوز هذا التقييد ، يفضل المستخدمون حلا يمكنه كسر كل رموز CAPTCHA هذه والوصول إلى موقع الويب مثل إنسان حقيقي. أحد الحلول لتجاوز captchas هو Capsolver. سيساعد استخدام الوكلاء مع طلبات الويب المستخدمين أيضا على الظهور كحركة مرور طبيعية.
CAPTCHA تعني اختبار تورينج العام المؤتمت بالكامل لتمييز أجهزة الكمبيوتر والبشر عن بعضهم البعض. هذا اختصار طويل جدا ، أليس كذلك؟ الآن قد تتساءل عما يعنيه الجزء الأخير من هذا الاختصار ، Turing Test - حسنا ، إنه اختبار بسيط لتحديد ما إذا كان الإنسان أو الروبوت يتفاعل مع صفحة ويب أو خادم ويب.
بعد كل شيء ، يميز اختبار CAPTCHA البشر عن الروبوتات ، مما يساعد محللي الأمن السيبراني على حماية خوادم الويب من هجمات القوة الغاشمة ، و DDoS ، وفي بعض الحالات ، تجريف الويب.
دعنا نتعرف على كيفية تمييز اختبارات CAPTCHA بين البشر والروبوتات.
يمكنك العثور على اختبارات CAPTCHA في نماذج موقع ويب ، بما في ذلك نماذج الاتصال أو التسجيل أو التعليقات أو الاشتراك أو المغادرة.
تتضمن اختبارات CAPTCHA التقليدية صورة بأحرف أو أرقام ممتدة أو غير واضحة أو كليهما في مربع بلون خلفية أو خلفية شفافة. ثم عليك تحديد الأحرف وكتابتها في حقل النص التالي. عملية تحديد الشخصيات هذه أسهل بالنسبة للبشر ولكنها معقدة إلى حد ما بالنسبة للروبوت.
فكرة تعتيم أو تشويه نص CAPTCHA هي جعل من الصعب على الروبوت تحديد الأحرف. في المقابل ، يمكن للبشر تفسير واعتراض الأحرف بتنسيقات مختلفة ، مثل الخطوط المختلفة والكتابة اليدوية وما إلى ذلك. بعد قولي هذا ، لا يمكن لكل إنسان حل اختبار CAPTCHA في المحاولة الأولى. وفقا للبحث ، فإن 8٪ من المستخدمين سوف يخطئون في الكتابة في محاولتهم الأولى ، بينما يفشل 29٪ إذا كانت اختبارات CAPTCHA حساسة لحالة الأحرف.
من ناحية أخرى ، يمكن لبعض برامج الروبوت المتقدمة اعتراض الرسائل المشوهة بمساعدة التعلم الآلي على مر السنين. نتيجة لذلك ، استبدلت بعض الشركات مثل Google اختبارات CAPTCHA التقليدية باختبارات CAPTCHA المتطورة. أحد الأمثلة على ذلك هو ReCAPTCHA الذي ستكتشفه في القسم التالي.
ReCAPTCHA هي خدمة مجانية تقدمها Google. يطلب من المستخدمين تحديد المربعات بدلا من كتابة النص أو حل الألغاز أو المعادلات الرياضية.
يعد ReCAPTCHA النموذجي أكثر تقدما من الأشكال التقليدية ل CAPTCHAs. يستخدم صورا ونصوصا من العالم الحقيقي مثل إشارات المرور في الشوارع والنصوص من الصحف القديمة والكتب المطبوعة. نتيجة لذلك ، لا يتعين على المستخدمين الاعتماد على اختبارات CAPTCHA القديمة ذات النص الضبابي والمشوه.
هناك ثلاثة أنواع مهمة من اختبارات ReCAPTCHA للتحقق مما إذا كنت إنسانا أم لا:
هذه هي ReCAPTCHAs التي تطلب من المستخدمين تحديد مربع اختيار ، "أنا لست روبوتا" كما في الصورة أعلاه. على الرغم من أنه قد يبدو للعين المجردة أنه حتى الروبوت يمكنه إكمال هذا الاختبار ، إلا أنه يتم أخذ عدة عوامل في الاعتبار:
إذا فشل ReCAPTCHA في التحقق من أنك إنسان ، فسوف يمثل لك تحديا آخر.
توفر ReCAPTCHAs للمستخدمين تسع أو ست عشرة صورة مربعة كما ترى في الصورة أعلاه. يمثل كل مربع جزءا من صورة أكبر أو صور مختلفة. يجب على المستخدم تحديد مربعات تمثل كائنات أو أو أشجار أو مركبات أو إشارات مرور معينة.
إذا تطابق تحديد المستخدم مع تحديدات المستخدمين الآخرين الذين أجروا نفس الاختبار، التحقق من المستخدم. خلاف ذلك ، سيقدم ReCAPTCHA اختبارا أكثر تحديا.
هل تعلم أن ReCAPTCHA يمكنه التحقق مما إذا كنت إنسانا أم لا دون استخدام مربعات الاختيار أو أي تفاعلات للمستخدم؟
من المؤكد أنه يتم ذلك من خلال النظر في تاريخ المستخدم في التفاعل مع مواقع الويب والسلوك العام للمستخدم أثناء الاتصال بالإنترنت. في معظم السيناريوهات ، بناء على هذه العوامل ، سيكون النظام قادرا على تحديد ما إذا كنت روبوتا.
سيؤدي عدم القيام بذلك إلى العودة إلى أي من الطريقتين المذكورتين سابقا.
يمكن تشغيل اختبارات CAPTCHA إذا اكتشف موقع الويب أنشطة غير عادية تشبه سلوك الروبوت ؛ يتضمن هذا السلوك غير المعتاد طلبات غير محدودة في غضون ثوان منقطعة والنقر على الروابط بمعدل أعلى بكثير من البشر.
ثم تحتوي بعض مواقع الويب تلقائيا على اختبارات CAPTCHA لحماية أنظمتها.
بقدر ما يتعلق الأمر ب ReCAPTCHAs ، ليس من الواضح تماما ما الذي يثيرها. ومع ذلك ، فإن الأسباب العامة هي حركات الماوس وسجل التصفح وتتبع ملفات تعريف الارتباط.
الآن لديك نظرة عامة واضحة على ماهية CAPTCHAs و Rechaptchas ، وكيف تعمل ، وما الذي يحفزها. حان الوقت الآن للنظر في كيفية تأثير اختبارات CAPTCHA على تجريف الويب.
يمكن أن تعيق اختبارات CAPTCHA كشط الويب حيث تقوم الروبوتات الآلية بتنفيذ معظم عمليات الكشط. ومع ذلك ، لا تشعر بالإحباط. كما ذكرنا في بداية هذه المقالة ، هناك طرق للتغلب على اختبارات CAPTCHA عند تجريف الويب. قبل أن نصل إليهم ، دعنا نلفت انتباهنا إلى ما يجب أن تكون على دراية به قبل الكشط.
بادئ ذي بدء ، يجب عليك التأكد من عدم السماح لمكشطة الويب / الزاحف بإرسال عدد كبير جدا من الطلبات في فترة قصيرة. ذكرت معظم مواقع الويب في صفحات الشروط والأحكام الخاصة بها عدد الطلبات التي يسمح بها الموقع. تأكد من قراءتها قبل البدء في القشط.
عند الاتصال بموقع ويب، فإنك ترسل معلومات حول جهازك إلى موقع ويب المتصل. قد يستخدمون هذه المعلومات لتخصيص المحتوى وفقا لمواصفات جهازك وتتبع المقاييس. لذلك عندما يكتشفون أن الطلبات من نفس الجهاز ، سيتم حظر أي طلب ترسله بعد ذلك.
لذلك ، إذا قمت بتطوير مكشطة الويب / الزاحف بنفسك ، فستتمكن من تغيير معلومات الرأس لكل طلب تقوم به مكشطة. ثم سيظهر لموقع الويب المستهدف لأنه يتلقى طلبات متعددة من أجهزة مختلفة. اقرأ هنا لمزيد من المعلومات حول رؤوس HTTP.
حقيقة أخرى يجب أن تكون على دراية بها هي أن موقع الويب المستهدف لم يدرج عنوان IP الخاص بك في القائمة السوداء. من المحتمل أن يقوموا بإدراج عنوان IP الخاص بك في القائمة السوداء عند إرسال عدد كبير جدا من الطلبات باستخدام مكشطة / زاحف.
للتغلب على المشكلة المذكورة أعلاه ، يمكنك استخدام خادم وكيل لأنه يخفي عنوان IP الخاص بك.
سيضمن تدوير رؤوس HTTP والوكلاء (المزيد حول هذا في القسم التالي) مع تجمع وصول أجهزة متعددة إلى موقع الويب من مواقع مختلفة. لذلك يجب أن تكون قادرا على مواصلة الكشط دون انقطاع من اختبارات CAPTCHA. بعد قولي هذا ، يجب عليك التأكد من أنك لا تضر بأداء موقع الويب بأي وسيلة.
ومع ذلك ، تحتاج إلى ملاحظة أن الوكلاء لن يساعدوك في التغلب على اختبارات CAPTCHA في التسجيل وتغيير كلمة المرور ونماذج المغادرة وما إلى ذلك. يمكن أن يساعدك فقط في التغلب على اللقطات التي تشغلها مواقع الويب بسبب وجود سلوك الروبوت. لتجنب اختبارات CAPTCHA في مثل هذه الأشكال ، سننظر في أدوات حل CAPTCHA في قسم قادم.
بالإضافة إلى العوامل الرئيسية المذكورة أعلاه ، تحتاج إلى معرفة اختبارات CAPTCHA أدناه عند تجريف الويب باستخدام روبوت:
سيكون Honeypots-Honeypot نوعا من اختبار CAPTCHA محاطا بحقل أو رابط نموذج HTML ، ولكن رؤيته مخفية مع CSS.So عندما يتفاعل الروبوت معه قد أبلغ حتما عن نفسه على أنه روبوت. لذا قبل جعل الروبوت الخاص بك يكشط المحتوى ، تأكد من أن خصائص CSS للعنصر مرئية.
كلمة / مطابقة CAPTCHA - هذه هي اختبارات CAPTCHA في المعادلات الرياضية مثل حل "3 + 7" ، على سبيل المثال. يمكن أن يكون هناك أيضا ألغاز كلمات لحلها أيضا.
تسجيل الدخول إلى وسائل التواصل الاجتماعي - تتطلب منك بعض مواقع الويب تسجيل الدخول باستخدام حسابك على Facebook ، على سبيل المثال. ومع ذلك ، فهي ليست شائعة لأن معظم المسؤولين يعرفون أن الناس سيترددون في التوقيع عليها بحساباتهم على وسائل التواصل الاجتماعي.
تتبع الوقت- تراقب اختبارات CAPTCHA هذه مدى سرعة تنفيذ إجراء معين ، مثل ملء نموذج لتحديد ما إذا كان إنسانا أم روبوتا.
كما هو مذكور في القسم السابق ، تحتاج إلى تدوير الوكلاء في كل مرة ترسل فيها طلبا إلى موقع الويب المستهدف. إنها إحدى الطرق لتجنب اختبارات CAPTCHA التي يتم تشغيلها أثناء الكشط. في هذه الظروف ، تحتاج إلى استخدام وكلاء IP سكنيين نظيفين.
عند تدوير الوكلاء ، سيكون من الصعب على موقع الويب المستهدف تحديد بصمة IP الخاصة بك. هذا لأنه ، لكل طلب ، سيظهر عنوان IP الخاص بالوكلاء بدلا من عنوانك.
نظرا لأنك ستستخدم مكشطة لتجريف الويب ، فستحتاج إلى إخفاء وكيل المستخدم لمتصفح ويب شائع أو روبوت مدعوم - روبوتات مثل روبوتات محرك البحث التي تتعرف عليها مواقع الويب.
لن يكون مجرد تغيير وكيل المستخدم كافيا حيث ستحتاج إلى قائمة بسلاسل وكيل المستخدم ثم تدويرها. سيؤدي هذا التناوب إلى رؤية موقع الويب المستهدف لك كجهاز مختلف بينما في الواقع ، يرسل جهاز واحد جميع الطلبات.
كأفضل ممارسة لهذه الخطوة ، سيكون من الرائع الاحتفاظ بقاعدة بيانات لوكلاء المستخدم الحقيقيين. أيضا ، احذف ملفات تعريف الارتباط عندما لم تعد بحاجة إليها.
تتمثل الطريقة التقنية المنخفضة الأكثر وضوحا لحل اختبار CAPTCHA في استخدام خدمة حل اختبار CAPTCHA. يستخدمون الذكاء الاصطناعي (الذكاء الاصطناعي) والتعلم الآلي (MI) وتتويجا للتقنيات الأخرى لحل اختبار CAPTCHA.
بعض أدوات حل CAPTCHA البارزة الموجودة حاليا في الصناعة هي Capsolver و Anti-CAPTCHA.
عندما تسمح للمكشطة بالوصول مباشرة إلى عنوان URL كل جزء من الثانية ، فسيكون موقع الويب المتلقي مشبوها. نتيجة لذلك ، سيؤدي موقع الويب المستهدف إلى تشغيل اختبار CAPTCHA.
لتجنب مثل هذا السيناريو ، يمكنك تعيين رأس الإحالة لجعله يبدو وكأنه تمت إحالته من صفحة أخرى. من شأنه أن يقلل من احتمالية اكتشافه كروبوت. بدلا من ذلك ، يمكنك جعل الروبوت يزور صفحات أخرى قبل زيارة الرابط المطلوب.
Honeypots هي عناصر مخفية على صفحة ويب يستخدمها خبراء الأمن لمحاصرة الروبوتات أو المتسللين. على الرغم من أن المتصفح يعرض HTML الخاص به ، إلا أنه تم تعيين خصائص CSS الخاصة به على الإخفاء. ومع ذلك ، على عكس البشر ، سيكون رمز وعاء العسل مرئيا للروبوتات عندما يكشطون البيانات. ونتيجة لذلك ، سقطوا في الفخ الذي وضعه العسل.
لذلك عليك التأكد من التحقق من أن خصائص CSS لجميع العناصر الموجودة في صفحة الويب ليست مخفية أو غير مرئية قبل البدء في الكشط. فقط عندما تكون متأكدا من عدم إخفاء أي من العناصر ، هل تقوم بتعيين الروبوت الخاص بك للكشط.
تجاوز اختبارات CAPTCHA هو ببساطة عملية إزالة أدوات الحظر التي تنشأ أثناء كشط البيانات من العديد من المواقع. نظرا لأن اختبارات CAPTCHA مصممة للتحقق مما إذا كانت حركة مرور الويب عضوية.
يمنع ReCaptcha مواقع الويب الخاصة بك من الرسائل غير المرغوب فيها وحركة مرور الروبوت الضارة. يولد ألغازا تفاعلية للتمييز بين حركة المرور العضوية وحركة مرور الروبوت.
عند إرسال طلبات الويب مرة أخرى من روبوت أو أي حل تجريف ، قد تحدد اختبارات CAPTCHA بسهولة أن حركة المرور من روبوت غير مرغوب فيه. لذلك ، فإن استخدام عناوين وكيل من وكيل سيتيح لك الظهور بشكل أشبه بحركة مرور في الوقت الفعلي.
كانت هذه المقالة ستمنحك فكرة شاملة عن كيفية تجنب اختبارات CAPTCHA أثناء تجريف الويب. يمكن أن يكون تجنب اختبار CAPTCHA عملية معقدة. ومع ذلك ، باستخدام تقنيات محددة تمت مناقشتها في هذه المقالة ، يمكنك تطوير الروبوت بطريقة تتجنب اختبارات CAPTCHA.
نأمل أن "تستفيد من جميع التقنيات التي تمت مناقشتها في هذه المقالة.