امنیت

ضعف امنیتی zpanel 10.0.2

چند روز پیش داشتم سایتی رو چک می کردم برای مشکلات امنیتیش. زیر دامنه ها رو چک کردم که یکیش صفحه ورود کنترل پنل میزبانی رو می آورد.

بارها و بارها به دوستان و کلاینت ها گفتم که قدم اول هکرها جمع آوری اطلاعاته و سعی کنند که کمترین میزان اطلاعات در اختیار یک هکر قرار بگیره. در این مورد خیلی واضح نرم افزار و نسخه کنترل پنل نوشته شده بود: zpanel 10.0.2

ZPanel

یه جستجوی کوچیک من رو رسوند به نتیجه بررسی های قبلی روی این نسخه و یک ضعف امنیتی خطرناک که عمومی هم شده. بذارید با هم مرور بکنیم مشکل رو تا ببینیم که چه اشتباهات بچگانه و خطرناکی ممکنه توی برنامه نویسی رخ بده.

zpanel یک ماژول داره برای بک آپ گرفتن که این ماژول یه فایل داره برای دانلود فایل های روی سرور. احتمالا برای اینکه ادمین بتونه فایل های بک آپ رو دانلود کنه.

بذارید یه نگاه به متن فایل getdownload.php بندازیم:

کامنت ها رو از متن حذف کردم که زیاد شلوغ نباشه. در متن می بینید که با یه دستور شرطی چک می کنه که اگر با متغیر file آدرس فایل وارد شده و اون فایل وجود داره، دستور می ده به یه فانکشن که فایل رو در اختیار کاربر بذاره.

به قول اون ور آبیا WTF

الان کافیه شناختی از ساختار فایل ها و فولدرهای سرور داشته باشیم و یا یکی از سایت های روی سرور مشکلی داشته باشه که مسیر اصلی فایل ها رو نشون بده تا بتونیم هر فایلی رو که می خوایم دانلود کنیم.

بذارید بریم سر اصل قضیه: یوزر و پسورد سرور. در سرورهای لینوکسی، نام کاربری و پسورد ها رو می شه در فایل های passwd و shadow پیدا کرد. البته به صورت هش شده. (وارد جزییات تنظیمات سرور نمی شم چون یه بحث مجزاست)

همچنین از این آدرس می تونید یه اسکریپت به زبان پایتون بگیرید که به صورت اتوماتیک بک آپ های سرور رو براتون دانلود کنه. دیگه چی می خوایم واقعا؟

مشکل دیگه ای که این نسخه داره، دسترسی آزاد به فایل daemon.php است که باعث می شه هکرها به اطلاعات حساسی مثل نام های کاربری، دسترسی هاشون و سایت هایی که روی سرور قرار دارند دست پیدا کنه.

یه نمونه از خروجی اجرای این فایل رو می تونید اینجا ببینید:

در اطلاعات بالا به جای دامنه ها ستاره گذاشتم که مشکلی برای سایت پیش نیاد.

از اینجا به بعد دیگه برمی گرده به توانایی و خلاقیت هکر که می خواد چطور جلو بره و تا کجا پیش بره. مثلا در همین مورد خاص روی این سرور یک سایت وردپرسی وجود داشت که با دونستن مسیر قرار گیری فایل wp-config.php، اون رو دانلود کردم و نام کاربری و پسورد MySQL رو به دست آوردم که می تونم باهاش به دیتابیس سرور کانکت بشم (در صورتیکه ورود رو به localhost محدود نکرده باشن) و مشخصات کاربرهای اون سایت رو به دست بیارم.

می بینید که یه اشتباه در بررسی نکردن ورودی ها و یا عدم تنظیم درست Permission ها برای اجرای یک فایل می تونه چه تبعاتی داشته باشه.

خب همین الان برید نسخه کنترل پنل هاست رو چک کنید و اگه ضعف شناخته شده داشت یا به روز نبود از سرویس دهنده بخواید که کاریکه وظیفه اش است رو انجام بده.

 

پ ن: این پست فقط در جهت نشان دادن ضعف های Zpanel 10.0.2 است و ترغیب برای برطرف کردن مشکلات. لطفا از این مورد برای آسیب رساندن به دیگران استفاده نکنید.

Standard
روزانه

عامدانه، عاشقانه، قاتلانه…

پنج شنبه ۲۵ مهر ۹۲ با رها رفتیم نمایش «عامدانه، عاشقانه، قاتلانه…» و همونطور که از توضیح‌های اولیه‌اش حدس می زدم موضوعش به شدت درگیرم کرد و هنوز که هنوزه ترجیح می‌دم به جزییات قضایای مطرح شده فکر نکنم. اون شب با معده درد عصبی از تالار شمس بیرون اومدم.

چندتا مورد رو تیتروار بگم. به نظرم کارگاردانی خوب بود. نمایشنامه هم خوب بود و بعضی جاها مب تونست پخته تر باشه ولی در مجموع راضی کننده بود. بازیگری ها عالی بود. بهاره رهنما هم با وجود همه تصویرهایی که از سریال ها و فیلم هاش تو ذهنم بود، تونست یه شخصیت رو شکل بده که باورش کنم. راستش کارگردان با انتخاب بهاره رهنما ریسک کرده بود. تجربه های سینمایی و تلویزیونی کمدی رهنما در چندوقت گذشته می تونست سایه بندازه رو نقش. صحنه هم متناسب بود با فضا که البته اگر به بعضی جزییات بیشتر دقت می شد می تونست بهتر باشه. مثلا جاهایی که روزنامه ها در دید تماشاگر قرار می گرفت اگر از روزنامه های جدید استفاده نمی شد بهتر بود.

خبر خوب اینکه نمایش تمدید شده و هنوز وقت دارید ببینیدش که دعوتتون می کنم به این کار. بلیط رو هم می تونید از سایت تیوال تهیه کنید.

بگذریم. می خوام به نکته مهمتری برسم: اعدام

چی می شه که یه آدم در قرن بیست و یکم در یک مکان رسمی بشینه و سر فرصت برای قتل یکی دیگه و نحوه اش تصمیم بگیره؟ چرا دولت ها قتل رو به دو دسته قانونی و غیرقانونی تقسیم می کنن و اگر یه آدم کسی رو بکشه می شه غیرقانونی ولی اگر همین کار رو دولت بکنه اسمش می شه اعدام قانونی؟

من مخالف اعدامم. به یک دلیل ساده و البته محکم: من انسان رو نمی کشم و برای کس دیگه ای هم این حق رو قائل نیستم.

موافقان اعدام البته دوتا دلیل عمده دارند.

یکی اینکه اون محکوم به اعدام باید مجازات بشه. یه خط معروف دارند که می پرسن “اگر این محکوم برادر خودت هم کشته بود می گفتی اعدام نشه؟” خب راستش نمی دونم اگه کسی یه کار خیلی بد در موردم بکنه چه حسی دارم. راستش می دونم ولی خب حس من مهم نیست. مساله اینه که حس من نتیجه اش می شه انتقام. آیا انتقام و کشتن یه آدم دیگه باید امری اخلاقی محسوب بشه؟ آیا در طول تاریخ با انتقام گرفتن کسی زنده شده؟ یا کسی با کشتن یه آدم تونسته با ناراحتی نبود یک عزیزش کنار بیاد؟

دلیل بعدی که موافقین اعدام میارن جنبه اصلاحی اعدامه. تا حالا دیدین کسی اعدام بشه و بعدش اصلاح بشه؟ نکته است واقعا. وقتی یک نفر رو از بین می برید که نمی تونید بگید داریم کار اصلاحی انجام می دیم. حتی پیشگیرانه هم نیست. غیر از اینکه غیر اخلاقی تر از کشتن یه آدم برای درس گرفتن یه نفر دیگه من ندیدم، در عمل هم دیدیم که پیش گیری وجود نداره. حداقل آمارهای قتل در ایران و مقایسه با کشورهایی که مجازات اعدام ندارند می تونه خلاف این رو ثابت کنه.

بدتر از اعدام شیوه های بدوی اعدام در ایرانه. یا در کوچ و خیابونه و یا در زندان و در حضور اولیا دم و خانواده محکوم به اعدام. اون هم با شیوه هایی که هم توهین آمیزه برای محکوم و خانواده اش و هم لحظه لحظه روند اعدام رو تبدیل به یک عذاب غیر قابل تحمل برای تک تک آدم ها می کنه و هم از دلش یه “قاتل قانونی” در میاد.

بذارید یه نگاهی به آمار قانون اعدام در کشورها بندازیم.

۱۰۰ کشور اعدام غیر قانونیه

۷ کشور فقط در شرایط خاص مثل جنگ هنوز قانون اعدام رو دارند

۴۸ کشور با وجود قانونی بودن اعدام، به صورت غیر رسمی اون رو ممنوع کردند و بیش از ۱۰ ساله که اعدام نداشته اند

۴۰ کشور هنوز اعدام رو در قانونشون دارند و اجراش هم می کنند.

در سال ۲۰۱۲ بیشترین تعداد اعدام ها رو چین، ایران، عراق و عربستان سعودی داشتند

تنها کشورهایی که از سال ۲۰۰۹ اعدام در ملا عام رو داشتند ایران، کره شمالی، عربستان سعودی، سومالی، سوریه و یمن بوده اند.

قطر از سال ۲۰۱۲ به جمع کشورهایی پیوست که ۱۰ سال پیاپی اعدام نداشته اند. ترکیه از سال ۲۰۰۴ دیگه قانون اعدام رو نداره در حالیکه از سال ۱۹۸۴ اعدامی در این کشور ثبت نشده. عمان از سال ۲۰۰۷ اعدامی نداشته.

Standard
امنیت

سایت های معروف، شما را تعقیب می کنند

همگی تو فیلم های پلیسی دیدیم که یه نفر راه میافته دنبال یکی دیگه و از جاهایی که می ره و آشناهایی که داره سعی می کنه شناساییش کنه و خونه اش رو پیدا کنه، حتی اگه کارت شناساییش رو نبینه. همین کار هم در دنیای دیجیتال اتفاق می افته. سایت ها نیاز ندارند تا IP شما رو بدونن تا شناساییتون کنند. حتی با استفاده از پراکسی هم امکان لو رفتن هویت کاربرها وجود داره.

track

اگر از ابزارهای آنالیز سایت مثل گوگل آنالیتیکز یا پیویک استفاده کرده باشید دیدی که با ست کردن کوکی، این ابزارها می تونن رفتار مراجعه کننده ها به سایت شما رو شناسایی کنند. به شما بگن کابر از کجا به سایت شما اومده و چه صفحهه هایی رو دیده، چقدر وقت گذاشته تو سایت شما و از کدوم صفحه خارج شده. حتی IP و نام و نسخه مرورگر و سیستم عامل رو هم به شما می گه.

کاربرها برای حفظ حریم خصوصیشون می تونن به سایت ها بگن که من رو تعقیب نکن. با یه تگ در Header ارسالی به سایت و اعلام Do Not Track سایت موظفه مطابق قوانین اقدام کرده و اطلاعات وبگردی شما رو ذخیره نکنه. شاید دیده باشید برخی سایت ها مثل سایت ubuntu به مراجعه کننده می گن که چه کوکی هایی رو توی مرورگر کاربر ذخیره می کنند تا اون حق و حقوق خودش رو بدونه. اما بعضی سایت ها علیرغم خواست کاربر، قوانین رو نقض کرده و شروع به جمع آوری اطلاعات اون می کنن.

کارشناسان امنیتی بریتانیایی در یک بررسی متوجه شدند که ۱۴۵ سایت از مجموع ۱۰ هزار سایت برتر اینترنت از اسکریپت های مخفی برای به دست آوردن اطلاعات دستگاه کاربر از طریق مرورگر استفاده می کنند. یافته های نشون می ده استفاده از این ابزارهای غیرقانونی، گسترده تر از اونیه که پیش از این تصور می شد.

شیوه های استفاده شده برای اثرانگشت برداری از کاربران مجازی شامل جمع آوری اطلاعات دستگاه مورد استفاده می شه. اطلاعاتی مثل سایز مانیتور و رزولوشن، نام دستگاه، نرم افزرها و پلاگین های نصب شده و فونت های نصب شده. تحقیقات موسسه Electronic Frontier Foundation (EFF) در سال ۲۰۱۰ نشون می ده که ترکیب این اطلاعات تقریبا یکه بوده و می تونه به جای کوکی ها برای تعقیب کاربران مورد استفاده قرار بگیره. فلش پلیر و جاوا اسکریپت دو هدف عمده جهت شناسایی دستگاه اند.

تحقیقات نشان داده برخی از این ۱۴۵ سایت گفته شده از شی های فلش پلیری استفاده می کنند که حتی اگر مراجعه کننده از پراکسی استفاده کرده باشه، منجر به شناسایی IP اصلی کاربر می شه. همچنین در این تحقیقات مشخص شد که ۴۰۴ سایت از ۱ میلیون سایت برتر از جاوا اسکریپت برای شناسایی دستگاههایی استفاده می کنند که از فلش پشتیبانی نمی کنند یا فلش را غیرفعال کرده اند. یکی از روش های استفاده شده توسط این اسکریپت ها، یافتن فونت های سیستم با استفاده از ارتفاع و طول رشته های متنی است که به صورت مخفی در صفحات استفاده می شوند.

این تحقیقات منجر به شناسایی ۱۶ ابزار جدید شد که توسط سایت ها به کار گرفته می شود. همچنین مشخص شد که این سایت ها با وجود اعلام کاربر برای تعقیب نشدن با فعال کردنDo Not Track (DNT) HTTP header ، باز هم این کار را انجام می دهند.

محققین Tor Browser و Firegloves رو هم بررسی کردند. با وجود اینکه این دو ابزار برای حفظ حریم خصوصی و جلوگیری از همین ابزارها آماده شده اند اما مشخص شد که برخی نقص ها باعث افشا شدن هویت کاربران این ابزارها خواهد شد.

این محققان برای کمک به کاربران و محققان دیگه به زودی ابزاری رو به صورت رایگان در دسترس عموم خواهند گذاشت که با اون میتونید هر سایتی رو برای پیدا کردن ابزارهای مخفی گفته شده، اسکن کنید. برای جزییات بیشتر می تونید به این آدرس مراجعه کنید

منبع

Standard