PDA

View Full Version : امنیت برای ck editor



olampiad
شنبه 10 بهمن 1394, 17:14 عصر
سلام و خسته نباشید به دوستان عزیز
من دارم تو پروژم از ck editor استفاده میکنم.
تو ی جایی میخوندم که استفاده از ck editor خطرناکه . نوشته بووود که ck editor نباید دست کاربر بیوفته ، اگه بیوفته میتونه کد های js وارد برنامه بکنه.
تا به حال این مشکل به گوشتون خورده.
برای پیشگیری از این مشکل راه حلی دارید ؟
ممنون

pbm_soy
یک شنبه 11 بهمن 1394, 00:23 صبح
من خودم این اديتور رابطور کامل و درسایت عمومی اینترنتی استفاده نکردم فقط داخل. سایت در شبکه داخلی یکبار استفاده کردم
چیزی که متوجه شدم چندین بخش آپلود فایل دارد کاربر راحت میتواند فایلهایی را آپلود کند

من فکر میکنم اولویت اولتون این باشه که جلوی سواستفاده از امکانات این اديتور را بگیرید بعد از آن برید سراغ روشهای دور زدن و هک کردن

Unique
یک شنبه 11 بهمن 1394, 03:15 صبح
تو ی جایی میخوندم که استفاده از ck editor خطرناکه . نوشته بووود که ck editor نباید دست کاربر بیوفته ، اگه بیوفته میتونه کد های js وارد برنامه بکنه.
راستش من با ckeditor کار نکردم ! از TinyMCE استفاده میکنم. اما در کل فرقی نمیکنه ،‌این ها ویرایشگر های WYSIWYG هستند که کاربر بتونه بدون کدنویسی محتوای Html تولید کنه. اما براحتی میشه Source را هز طور که دوست داری توش وارد کنی. اما در مورد اون کسی که گفته استفاده نکنید راستش درست نمیگه !

کلا هر محتوایی از کاربر گرفته میشه میتونه قابلیت آلودگی به حملات XSS داشته باشه. شما باید بر اساس محتوای مورد نیازتون ورودی را فیلتر کنی که XSS نخوری. مثلا وقتی نیاز نیست مقدار html باشه میشه راحت با htmspecialchars و htmlentities کل ورودی را از حملات XSS حنثی کرد. اما وقتی نیاز به HTML هست باید از HtmlPurifier استفاده کنی. که استفاده ازش خیلی هم ساده هستش.

در مورد ارسال فایل هم که دوستمون گفت ،‌حداقل توی TinyMCE میشه براحتی مانع شد و ckeditor هم احتمالا تنظیاماتی برای ممانعت از ارسال داره. ولی همون ارسال را هم بالاخره یک کد سمت سرور داره که میشه مدیریتش کرد و مانع از سوء استفاده شد.

کلا اینکه این ادیتور ها ترس ندارن ولی باید بدونین دارین چیکار میکنین.

plague
یک شنبه 11 بهمن 1394, 19:26 عصر
من 2-3 تا سایت رو دیدم که هک شده بوده و متهم ردیف اول ck بوده
منظور حملات xss نیست بلکه بد تر از اون آپلود شل بر روی سروره
یه موردی که من دیدم سیستمی بود که با یک فریم ورک معتبر نوشته شده بود و بخش آپلود هم کلا نداشت
از اونجایی که یک گروه عربی این سایت رو هک کرده بودن و سایت هم سایته دولتی یا مهمی نبوده مشخصا اینها گوگل دورک استفاده کرده بودن برای رسیدن به این سایت
یعنی یک آسیپ پزیری رو توی گوگل سرچ کرده بودن برای دامنه های ایرانی و سایت هایی که اون آسیب پزیریر رو داشتن پیدا کرده و ایشون رو هک کرده بودن

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


اگه میخاید استفاده کنید باید در مکانی قرار بدی که به شکل مستقیم قابل دسترس نباشه و فقط کد شما بتونه به محتویات دایرکتوری ck دسترسی داشته باشه



در مورد ارسال فایل هم که دوستمون گفت ،‌حداقل توی TinyMCE میشه براحتی مانع شد و ckeditor هم احتمالا تنظیاماتی برای ممانعت از ارسال داره. ولی همون ارسال را هم بالاخره یک کد سمت سرور داره که میشه مدیریتش کرد و مانع از سوء استفاده شد.

مشکل اینه که خیلی ها وقتی دانلود میکنن توجهی به فایل های جانبی که همراه با نرمافزار دانلود میشه نمیکنن مشخصا فولدر پلاگین ها که خیلی وقتا حاوی فایل های نمونه هستن که میشه از اونها سواستفاده کرد ..... به طور خلاصه خیلی وقتا فایل بک اند رو برنامه نویس سایت ننوشته و از وجودش خبر نداره !

Unique
یک شنبه 11 بهمن 1394, 20:28 عصر
مشکل اینه که خیلی ها وقتی دانلود میکنن توجهی به فایل های جانبی که همراه با نرمافزار دانلود میشه نمیکنن مشخصا فولدر پلاگین ها که خیلی وقتا حاوی فایل های نمونه هستن که میشه از اونها سواستفاده کرد ..... به طور خلاصه خیلی وقتا فایل بک اند رو برنامه نویس سایت ننوشته و از وجودش خبر نداره !

با توجه به اینی که شما میگین احتمالا Bug از فایلی بوده که ارسال های فایل CK را مدیریت میکرده و شاید فایل ها توی دایرکتوری آپلود میشه که براحتی میشه توش فایل های PHP را Run کرد. در این مورد خطا کاملا متوجه برنامه نوس هست که حواسش نیست داره چیکار میکنه و دسترسی های دایرکتروی ها را مدیریت نکرده. همین تفاوت ها هستش که برنامه نویس خوب و بد را تعیین میکنه.

us1234
دوشنبه 12 بهمن 1394, 11:41 صبح
با توجه به اینی که شما میگین احتمالا Bug از فایلی بوده که ارسال های فایل CK را مدیریت میکرده و شاید فایل ها توی دایرکتوری آپلود میشه که براحتی میشه توش فایل های PHP را Run کرد. در این مورد خطا کاملا متوجه برنامه نوس هست که حواسش نیست داره چیکار میکنه و دسترسی های دایرکتروی ها را مدیریت نکرده. همین تفاوت ها هستش که برنامه نویس خوب و بد را تعیین میکنه.

بله مقصر اصلی برنامه نویس است که بدون بررسی هر کدی را استفاده می کند ، ولی یک ادیتور معروف هم نباید همچین باگی می داشت ( یک فایل upload.php در نسخه های قدیمی بود که الان دیگه فکر کنم حل شده )

http://iedb.ir/exploits-2855.html

البته در ورژن جدید هنوز یک فایل php دارد که فکر میکنم باگ xss داشته باشد .