PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : بستن symlink



Unkn0wn200
September 19th, 2010, 05:38
سلام
من یه سرور دارم که دیشب کلی از سایت های سرورم هک شدند
بعد از بررسی فهمیدم از دستور ln -s یعنی روش symlink استفاده شده
فایل ln در bin رو بستم ولی بازم تونستن هکم کنن
چند تا سرور دیده بودم که هر کاری می کردی Symlink انجام بدی ارور فربیدن میداد
می خواستم راهنمایی کنید چطور این روش رو روی سرورم ببندم
اجرا کردن symlink زیاد کاری نداره و می تونن انجام بدن
من می خوام ببینم چطور میشه مثل اون سرور ها که امن بودن کار کرد که اگه اجرا بشه و بخوان از یو ار ال باز کنن ارور فربیدن بگیرن
ممنون میشم راهنمایی کنین
پنل من cpanel
فعلا سرورم خاموشه

Unkn0wn200
September 19th, 2010, 13:08
کسی نیست بدونه؟ هزینش هم حاضرم بدم

vPsPersia.COM
September 19th, 2010, 13:28
فایل httpd.conf رو باز کن ، هرچی به اسم pl perl plx هست رو پاک کن !

Unkn0wn200
September 19th, 2010, 13:34
فایل httpd.conf رو باز کن ، هرچی به اسم pl perl plx هست رو پاک کن !
ولی با این کار جلوی Symlink گرفته نمیشه و فقط شاید بشه از اجرای پرل جلوگیری کرد !!!

vPsPersia.COM
September 19th, 2010, 13:39
شرمنده ، سواد من همین قدر بود !

Unkn0wn200
September 19th, 2010, 13:51
ممنون دوست من
کسی راه حل اساسی داره؟

shixaz
September 19th, 2010, 16:08
symlink 2 راه داره :
php و perl
اگه این 2 تارو محدود کنید اتفاقی نمی افته!
و اینکه اگه اپاچی درست کانفیگ شه حتی symlink هم کرد نمیشه READ کرد;)
سوالی بود در خدمتم:)

vPsPersia.COM
September 19th, 2010, 16:13
خوب اینا که گفتید در حد تئوری هست و اما و اگر و ..

راه حل و نحوه انجام اینکار چه طوری هست؟

S4n470n
September 19th, 2010, 16:52
symlink 2 راه داره :
php و perl
اگه این 2 تارو محدود کنید اتفاقی نمی افته!
و اینکه اگه اپاچی درست کانفیگ شه حتی symlink هم کرد نمیشه READ کرد;)
سوالی بود در خدمتم:)
برای اجرای Symlink راه زیاده اما مهم اینه جلوی اجراش رو بگیری ، چیز هایی که شما مطرح کردین یک چیز خیلی کلی بود |آپاچی درست کانفیگ شه حتی symlink هم کرد نمیشه READ کرد| بله اما چطور باید کانفیگ بشه که نشه رید کرد ؟!
SuPHP و SuEXEC مشکل رو حل می کنه چون هر فایل یا دایرکتوری رو فقط برای اونر خودش اجرا می کنه

shixaz
September 19th, 2010, 17:02
قرار نیست که هرکسی مدیر امنیتی سرور باشه و .....
بهتره بدید یک فرد با تجربه مانند استاد سلمانی (Dj7Xpl)
سرور و امن کنند;)

---------- Post added at 05:02 PM ---------- Previous post was at 05:00 PM ----------

@ Unkn0wn200
جلوی اجرای binary بگیرید حل میشه(ln)

vPsPersia.COM
September 19th, 2010, 17:02
هدف یادگیری هست !

اینجا قراره هرکسی چیزی بلده share کنه ! شما فرمودید راهش رو بلدید ، ما هم گفتیم لطف بفرمایید و بگید .

اما آخرش به بحث های تجاری و ... کشید !

tmfar
September 19th, 2010, 18:06
من انجام دادم کافیه توی dis fun بزنی symlink تمام

S4n470n
September 19th, 2010, 19:09
من انجام دادم کافیه توی dis fun بزنی symlink تمام
این کار فقط از اجرای Sym از طریق php جلوگیری می کنه !

secure_host
September 22nd, 2010, 18:30
سلام
ببین این لینک رو بخون جواب سوالتونه !!!‌
core - Apache HTTP Server (http://httpd.apache.org/docs/2.2/mod/core.html#options)
داخل httpd.conf باید به جای FollowSymlinks از Options +SymLinksIfOwnerMatch استفاده کنید !!!!
با تشکر

mdf092
September 22nd, 2010, 19:04
میتونید از کد زیر هم برای پوشه ها استفاده کنید


Options -FollowSymLinks

NovinServer
September 22nd, 2010, 19:09
اگر cPanel دارید وارد WHM Root شود به قسمت Apachi Configuration بروید و در قسمت تنظیمات تیک FlloweSymlink و CgiEXE را بردارید !
کلا از کار می افته !

mohsen1
September 22nd, 2010, 20:30
برای دایرکت ادمین چطور؟

persianwhois
September 22nd, 2010, 20:32
میتونید از کد زیر هم برای پوشه ها استفاده کنید


Options -FollowSymLinks


سلام
ببین این لینک رو بخون جواب سوالتونه !!!‌
core - Apache HTTP Server (http://httpd.apache.org/docs/2.2/mod/core.html#options)
داخل httpd.conf باید به جای FollowSymlinks از Options +SymLinksIfOwnerMatch استفاده کنید !!!!
با تشکر



این محدودیت را براحتی با استفاده از .htaccess می توان break کرد!

Talahost.Com
September 22nd, 2010, 20:45
symlink چیزی نیست که شما بخواهید غیرفعال کنید!
symlink جزئی از لینوکس است و نمی توان آن را غیرفعال کرد. ولی! می شه برنامه هایی مثل آپاچی را طوری تنظیم کرد که symlink رو اجرا نکنند.

بنده سرور این دوستمون رو دیدم symlink رو هم کاملا غیرفعال کردم. باید عرض کنم سرور شما از طریق دیگه ای هک شده. هر کسی می تونه فایل etc/passwd رو بخونه. این چیز عجیبی نیست. چون این فایل توسط همه باید قابل خوندن باشه. (بعضی از دوستان با mod security جلوی خواندن آن را می گیرند ولی توصیه نمی شه) محتوای این فایل نام کاربری های سیستم و سی پنل هست و هیچ رمزی درون این فایل وجود ندارد.

tmfar
September 22nd, 2010, 22:20
اگر cPanel دارید وارد WHM Root شود به قسمت Apachi Configuration بروید و در قسمت تنظیمات تیک FlloweSymlink و CgiEXE را بردارید !
کلا از کار می افته !

مشکلی برای سرور و اسکریپت های نصب در آن بوجود نمیاره ؟

Unkn0wn200
September 22nd, 2010, 23:09
جناب پرشین هوایز راه دیگه ای برای بستنش دارین؟

NovinServer
September 22nd, 2010, 23:13
مشکلی برای سرور و اسکریپت های نصب در آن بوجود نمیاره ؟
خیر ، نه تنها مشکلی ایجاد نمیکنه بلکه بسیاری از شلرها مانند r57 و pl را از کار می ندازه !

iNicz.Com
September 22nd, 2010, 23:15
این رو تو روت بزن :

chmod 444 /bin/ln

اینی که گفتم نمیدنی چی کارا میکنه <):)(با استفاده از تجربه ای که یه مدتی تو کار هک بودم)

persianwhois
September 22nd, 2010, 23:17
تنها راه حل موقت موردی است که دوستان اشاره کردند، اما قابل دور زدن است!
symlink را نمی توان بطور مطلق بست.

iNicz.Com
September 22nd, 2010, 23:28
تنها راه حل موقت موردی است که دوستان اشاره کردند، اما قابل دور زدن است!
symlink را نمی توان بطور مطلق بست.
خوب این راه مطلق هستش ولی واسه هک کردن راه های زیادی هستش. >> chmod 444 /bin/ln

S4n470n
September 22nd, 2010, 23:37
خوب این راه مطلق هستش ولی واسه هک کردن راه های زیادی هستش. >> chmod 444 /bin/ln

با این راه اصلا نمیشه جلوش رو گرفت !!!
کافیه بیایم از یه سرور دیگه فایل ln رو دانلود و روی سرور جدید با دستور زیر اجراش کنیم :

./ln /etc/passwd passwd.txt
یا از پرل استفاده کنیم و خیلی راههای دیگه !
راهی که دوستان ارایه دادن جلوش را تا حد خیلی زیادی می گیره اما بازم راه حل برای دور زدنش وجود داره !:66:

Masoud.B
September 22nd, 2010, 23:42
با این راه اصلا نمیشه جلوش رو گرفت !!!
کافیه بیایم از یه سرور دیگه فایل ln رو دانلود و روی سرور جدید با دستور زیر اجراش کنیم :

./ln /etc/passwd passwd.txt
یا از پرل استفاده کنیم و خیلی راههای دیگه !
راهی که دوستان ارایه دادن جلوش را تا حد خیلی زیادی می گیره اما بازم راه حل برای دور زدنش وجود داره !:66:

درسته

iNicz.Com
September 23rd, 2010, 00:44
با این راه اصلا نمیشه جلوش رو گرفت !!!
کافیه بیایم از یه سرور دیگه فایل ln رو دانلود و روی سرور جدید با دستور زیر اجراش کنیم :

./ln /etc/passwd passwd.txtیا از پرل استفاده کنیم و خیلی راههای دیگه !
راهی که دوستان ارایه دادن جلوش را تا حد خیلی زیادی می گیره اما بازم راه حل برای دور زدنش وجود داره !:66:

وقتی با این کاری که من گفتم ، ختی symlink تو root هم کار نمی کنه چطوری دستور شما می خواد کار کنه یه تستی بزن بعد بگو :->
پرل رو بستن که کاری نداره <):) -اصلا پرل باز باشه وقتی symlink بسته هستش که بجز در آوردن یوزر های یرور کاری نمیتونه بکنه که :79:(البته برای هک راه های زیاد دیگه ای هم هستش)

NovinServer
September 23rd, 2010, 01:45
اگر خوب می خواهید امنیت بخشی کنید بروید لایت اسپد بگیرید و به قسمت مدیریت و تنظیماتش بروید Symlink ببنید !
سایر تنظیمات هم خیلی ساده براتون اماده کرده است ! الان برخی از هاستینگ های بزرگ از این ابزار استفاده می کنند ...
البته پیشنهاد میشود /bin برخی چیزها را ببندید مثلا همین ln اگر ببنیدید هیچ مشکلی ایجاد نمی کند روی ان chmod و چند تا چیز دیگه هم 700 کنید خوب میشه !
اما پیشنهاد نمی کنم Perl ببنیدید مگر در موارد ضروری که حس می کنید زیر حمله شدید هستید ! چن اگر پرل ببنید خیلی چیزها از کار می افتد ...

S4n470n
September 23rd, 2010, 13:40
وقتی با این کاری که من گفتم ، ختی symlink تو root هم کار نمی کنه چطوری دستور شما می خواد کار کنه یه تستی بزن بعد بگو :->
پرل رو بستن که کاری نداره <):) -اصلا پرل باز باشه وقتی symlink بسته هستش که بجز در آوردن یوزر های یرور کاری نمیتونه بکنه که :79:(البته برای هک راه های زیاد دیگه ای هم هستش)

من تست کردم که دارم عرض می کنم !
بر فرض مثال شما بیا پرمیشن bin/ln/ رو بزار روی 000 ولی فانک Symlink در php رو نبند و از php اجراش کن می بینید که راحت جواب میده
تازگی ها هم که راحت با یه راه خیلی ساده بدون اجرای هیچ دستوری میشه Symlink رو اجرا کرد ! بازم میگم اجرا کردن Sym مهم نیست چون هر طور باشه میشه اجراش کرد مهم تنظیم پرمیشن ها و کانفیگ درست آپاچیه (مثل روش های بالا که دوستان فرمودند)
سیملینک بخشی از لینوکسه و نمیشه جلوی اجراش رو گرفت اما با پرمیشن بندی درست میشه کاری کرد سیملینک فقط برای هر یوزر تحت یوزر خودش اجرا بشه و به دیگر یوزر ها اجازه سیملینک کردن فایل های دیگر یوزر ها رو نداد

Regards