PDA

View Full Version : سوال: امنیت



بهارجون
سه شنبه 25 تیر 1392, 09:22 صبح
سلام دوستان
من یک سایتی طراحی کردم و اولین بارم هست که دارم برای بیرون کار میکنم و میخوام سایت رو آپلود میکنم میشه بهم بگین برای امنیتش باید چکار کنم؟منظورم اینه که کسایی که تا حالا سایتی رو آپلود کردن برای امنیتش چه اصولی رو حتما باید رعایت کرد!

mtnam1372
سه شنبه 25 تیر 1392, 09:28 صبح
سلام
امنیت بحث گسترده ای داره که متاسفانه هیچ تایپک جامعی براش وجود نداره
خود منم قرار بود یه مقاله بنویسم هیچ وقت فرصت جور نشد
باگ های زیادی وجود دارن که یه سری هاش خطر بالایی دارن کلمه باگ رو توی سرچ همین سایت که بزنی کم کم دستت میاد باید چیکار را بکنی

اگرم سایتت رو اپلود کردی ادرسش رو بده من چک کنم
البته اگر سبک باشه

اینم لینک یه کتاب فارسی ساده در همین موضوع برای شروع عالیه

http://phpro.ir/wp-content/uploads/%D8%A7%D9%85%D9%86%DB%8C%D8%AA-%D8%AF%D8%B1-php.pdf

بهارجون
سه شنبه 25 تیر 1392, 09:30 صبح
من تا الان برای ذخیره password از md5 استفاده کردم و برای ذخیره اطلاعات از یک دریچه استفاده کردم یعنی به نوعی سه لایه طراحی کردم شما راهکار دیگه ای پیشنهاد نمیکنین؟

mtnam1372
سه شنبه 25 تیر 1392, 09:35 صبح
بله راه کار ها بسیار هستند
لطفا کتاب بالارو بخونین و بعد سوالات کلیدی تر مطرح کنین

توجه کنید که شما هرچی رو از کاربر دریافت میکنید باید سنجش کنید

و توجه داشته باشید هر چیز که سمت کلاینت هست قابل دستکاریه حتی کوکی ها پس نباید زیاد بهشون اعتماد کرد

ابوذر محمودی
سه شنبه 25 تیر 1392, 09:35 صبح
امنیت خود سایتتون تامین شده که میخواین آپلود کنین ؟

بهارجون
سه شنبه 25 تیر 1392, 09:44 صبح
من کتابی که گفته بودین رو خوندم با استفاده از کتابخونه htmlpurifier از حملات xss جلوگیری کردم دیگه باید چکار کنم؟

بهارجون
سه شنبه 25 تیر 1392, 09:49 صبح
منظورتون رو نمیفهمم؟

mtnam1372
سه شنبه 25 تیر 1392, 09:57 صبح
توجه کنین بحث خیلی گستردس من فقط به یکی از مهم های دیگش اشاره میکنم

هرجه از کاربر مقداری رو گرفتین که قراره اون مقدار در یک کوئری استفاده بشه
قبل از استفاده از این فلتر عبور بدهید
مثال میزنم که قشنگ متوجه بشین دقت کنین متغیری $id رو از کاربر دریافت کردم و میخام طبق اون کوئری انجام بدم پس مستقیم اون رو وارد کوئری نمیکنم و اونو رو داخل فیلتر میزارم


$q="select * from TABLE where id='".mysql_real_escape_string($id)."'";

ابوذر محمودی
سه شنبه 25 تیر 1392, 10:09 صبح
وقتی نکاتی رو که دوستان دارن مطرح میکنن رو کامل بررسی کردید ،یه سری نکات بعد از آپلود ،که بیشتر مربوط به htaccess میشه رو هم اعمال کنید.
-جلوگیری از مشاهده محتویات پوشه ای که فایل ایندکس ندارن.(میتونین خودتون ایندکس بذارین یا با دستور Options -Indexes در htaccess )
-تعیین درست دسترسی ها به فایل ها(لزومی نداره که تمام فایل هاتون مجوز 777 داشته باشن)
-استفاده از RewriteEngine هم میتونه مفید باشه
-گذاشتن پسورد روی برخی دایرکتوری ها(مثلا واسه پوشه admin)
-بلوک کردن User Agen های خالی
-بلوک کردن کاراکتر های غیرمجاز تو ریکوئست ها (با htaccess)
-بلوکه کردن کوئری هایی که از سمت localhost/loopback/127.0.0.1 میاد
مثلا

RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\.0\.0\.1).* [NC,OR]
و ....
و یه سری نکات دیگه که دوستان خبره تر حتماً بهتون میگن.

اینم بگم که هر کاری که واسه امنیت انجام بدین ، به طور کامل امنیت سایت تامین نمیشه ، فقط امنیت بالاتر میره ، یه سری نکاتم به تنظیمات خود سرویس دهندتون برمیگرده،پس انتخاب سرویس دهندتونم خیلی مهمه.

parsboy
سه شنبه 25 تیر 1392, 15:12 عصر
باسلام این تاپیک رومطالعه کنید مطالب مفیدی داره.
http://barnamenevis.org/showthread.php?281805-%D8%A7%D9%86%D9%88%D8%A7%D8%B9-%D8%AD%D9%85%D9%84%D9%87-%D9%87%D8%A7%DB%8C-%D9%86%D9%81%D9%88%D8%B0-%D9%88-%D8%B3%D9%88%D8%A1%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D 8%AF%D9%87-%D8%A7%D8%B2-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A8&p=1244510&viewfull=1#post1244510
موفق باشید.

h.rezaee
سه شنبه 25 تیر 1392, 21:54 عصر
سلام. به نظرم طراخی و برنامه نویسی یک طرف ایجاد امنیت برای وب سایت یک طرف.
مشکلات امنیتی معمول که اکثر سایت ها دارند به شرح زیر می باشد :
عدم مدیریت نمایش error ها .
عدم استفاده از فایل .htaccess .
SQL Injection.
XSS.
CSRF.
عدم مدیریت ورود کاربر login.
Shell Upload ( خطرناک ترین هک ).
عدم مدیریت Session.
عدم ایمن سازی REST.
عدم استفاده از الگوریتم های رمز نگاری.
عدم ایجاد امنیت در برنامه نویسی با php.
و ............................
برای حل این مشکلات بهتره ابتدا نحوه روش هک رو یاد بگیرید و بعد برید سراغ روش های جلوگیری از آن.
برای این کار بهترین سایت www.owasp.org/ (http://www.owasp.org/) هستش و برای جلوگیری هم بهترین منبع مراجع انگلیسی هستش.
موفق باشید.