یک نکته جالب امنیتی

۱۳۹۱/۰۱/۲۲

در یک شب کاری که کلی ژان گولر بازی در آوردیم, قبل از خواب یک دفعه می بینیم که سایت آقای ژان گولر تغییراتی پیدا کرده.
بعد از هر اسکریپت یک سری اطلاعات دیگه نمایش داده می شه!!!
کل فایل ها رو زیرو رو می کنیم ولی خبری از این اسکریپت اضافه نیست؟؟؟

نکته ای که اینجا هست(حداقل برای ما جالب بود) اینه که یک نفوذ گر محترم تونسته به فایل php.ini دسترسی پیدا کنه و محتویات اون رو کمی تغییر بده. خیلی ساده اومده و به ویژگی auto_append_file مثلا مقدار “bad_script” رو اضافه کرده.

اتفاقی که اینجا افتاده: از این به بعد, به انتهای تمام اسکریپت های شما این فایل append می شه. به کمک همین فایل می شه کلی کارهای جالب انجام داد که اون رو به خلاقیت مثبت و منفی شما واگذار می کنیم. نکته ای که نفوذ گر باید به اون دقت کنه اینه که فایل مخرب رو باید جایی قرار بده که جزو include_path های آپاچی باشه.

خلاصه ماجرا از این قراره:


; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"

; Zend Type
; UNIX: "/path1:/path2"
;include_path = ".:/usr/local/zend/share/ZendFramework/library:/usr/local/zend/share/pear"
include_path = ".:/php/includes:/usr/share/pear"

در تنظیمات بالا که مربوط به php.ini هستش, سه مکان ‘ . ‘ , ‘ /php/includes ‘ , ‘ /usr/share/pear ‘ به عوان
include_path شناخته شده و هکر کافیه تا فایل مخرب خودش رو در یکی از این ۳ دایرکتوری قرار بده و به کمک دستکاری زیر اون فایل رو به اسکریپت های شما append کنه.


; Automatically add files after PHP document.
; http://php.net/auto-append-file
auto_append_file = "bad_script"

این قایل مخرب هم می تونه هر چیزی باشه مثل یک تابع خوب که خوراک خوشمزه دوستان هکره:


//bad_script
phpinfo();

یک راه حل: بعد از اتمام بلوک ها در اسکریپت خودتون از تابع ()exit استفاده کنید تا فایل مخرب append نشه.

از آنجایی که این هکر توانایی rewrite کردن php.ini رو داشته بهتره یک فکر اساسی به حال سرور خود بکنیم.
اصولا خاموش کردن اون بهترین راه حل برای تامین امنیت هست, خصوصا اگر که ویندوزی باشه.

4 دیدگاه در “یک نکته جالب امنیتی

  1. زنده باشی سعید جان.
    ولی اون هکری که به php.ini دسترسی پیدا کنه دیگه هکر نیست ! مدیر هاستینگه :دی

    پاسخ
  2. خیلی جالب بود
    منم با oia موافقم وقتی php.ini رو می تونه ادیت کنه دیکه …
    در هر حال خیلی جالبه

    پاسخ
    • اون که آرههههههههههههههههههه.
      بیشتر هدف بیان کردن یکی از ویژگی های جالب امنیتی/کاربدی php.ini بود.

      پاسخ
  3. موفق باشی
    مقالات جالبی داری با بیان زیبا
    دستت درد نکنه

    پاسخ

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

شما می‌توانید از این دستورات HTML استفاده کنید: