PDA

View Full Version : ذخیره پسورد در دیتابیس



masiha68
شنبه 18 خرداد 1392, 13:12 عصر
سلام .
واسه یکی سایت هام پسورد و بدون هش و هیچ گونه محافظتی توی دیتابیس ذخیره کرده بودم . یکی اومده بود و سایت رو هک کرد .... :))
سوال اینه یعنی می شه پسورد رو از دیتابیس بیرون کشید ... اونم به راحتی ؟!؟
الان واسه پسورد هام از md5 استفاد ه می کنم یه salt محکم هم بهش اضافه می کنم ( اونم چندین هزار بار ) و بعد توی دیتابیس ذخیره می کنم ولی بازم می ترسم مطمئن نباشه . کار دیگه ای هست که بشه روی پسورد انجام داد تا امنیتش کامل بشه ؟؟؟؟

mamali-mohammad
شنبه 18 خرداد 1392, 13:19 عصر
نه همین هش و salt کارتو خوب انجام میده

arta.nasiri
شنبه 18 خرداد 1392, 14:10 عصر
Hash قابل بازیابی نیست ( البته هستن کسانی که بازیابی میکنن ولی مطمئن باش واسه یه سایت ساده این کارو نمیکنن چون زیادی زمانبره )

abbas_ali
شنبه 18 خرداد 1392, 14:59 عصر
از md5 ساده استفاده نکن...تلفیقی hash کن


<?
sha1(md5("abbas")."$%")
?>

موفق باشی :)

masiha68
شنبه 18 خرداد 1392, 18:06 عصر
فرق sha1 و md5 چیه ؟!؟
کدومشون بهتره

Unique
یک شنبه 19 خرداد 1392, 02:37 صبح
البته اگه در مقابل SQL Injection سایتتون مقاوم نباشه نیاز به دونستن پسورد ها نیست ! میخوام بگم هک کردن و دسترسی به mysql به این راحتی که شما فکر میکنین نیست ! اونکه پسورد سایت لو میره معمولا با Brute Force هست ! مثلا یکی از کار ها که میشه کرد اینه که اگه ۵ بار کسی پسورد را اشتباه وارد کرد نتونه ۱ ساعت وارد سایت بشه ! اینجوری Brute Force بی معنی میشه. اکثر سایت هایی که به بخش مدیریتی دسترسی پیدا میکنند به خاطر مشکلات SQL Injection و حملات دیگه هست نه لو رفتن کلمه عبوری که Plain text ذخیره شده !

mfungroup
یک شنبه 19 خرداد 1392, 11:05 صبح
عزیزم تو هر کاری که با پسوردت بکنی اگه دیتابیس هک شه کارت تمومه باید ساختار سایتتو با امنیت بالا بنویسی که تویه پست نمیشه توضیح داد خودت باید پی ببری این فکر یه برنامه نویسه . اگه مثلا من به دیتابیست دسترسی پیدا کنم بایه نگاه می فهمم که الگوریتم پسوردت چیه و سریع مثلا رمز خودمو md5 میکنم میذارم جاش و توهم اونوقت بدبخت میشی. پیشنهاد من اینه که به این چیزا دلتو خوش نکن برو فک کن یه سیستم امن بنویس

masiha68
یک شنبه 19 خرداد 1392, 11:19 صبح
نه خب اینجویام نیست که هرکی از راه برسه بر سر وقت دیتابیس و اونو تغییر بده ... اولا واسه دسترسی به دیتابیس و تغییر اون باید وارد هاست بشی که اونم باید هاست رو هک کنم که اون ربطی به من نداره و کسایی که هاست ارائه میدن باید امنیتشو تضمین کنن
در موردی که واسه من پیش اومد طرف فقط دیتابیس رو اسکن کرده بود و چون پسورد رو md5 نزده بودم به راحتی برداشته بود و وارد سایت شده بود . ولی اگه همین پسورد رو با یه md5 و یه salt قوی مخلوط کنی دیگه محاله پسورد لو بره که اگرم طرف دیتابیس رو اسکن کنه بازم یه پسورد هش شده گیرش میاد که واسه فهمیدن اینکه اون پسورد چی بوده باید یه چن ماهی رو وقت بذاره
الان من دقیقا منظورتون رو از اصولی نوشتن و رعاییت نکات امنیتی نفهیمدم . در مورد سیستم امنیتی امن هم دو روز نشستم روی یه سیستم کار کردم که مدیر فقط بتونه از کامپیوتر خودش وارد شه که اونم به درد نخورد و ... شما پیشنهادی دارین ؟؟؟

eshpilen
یک شنبه 19 خرداد 1392, 22:52 عصر
در موردی که واسه من پیش اومد طرف فقط دیتابیس رو اسکن کرده بود و چون پسورد رو md5 نزده بودم به راحتی برداشته بود و وارد سایت شده بود.
اصل پسورد کاربردهای دیگری هم داره.
مثلا نفوذگر میتونه اون رو روی اکانت ایمیل یاهو یا جیمیل طرف هم چک کنه.
حتی اگر پسوردها یکی نباشن احتمالش زیاده که کاربر از پسوردی با ساختار مشابه استفاده کرده باشه، که اینو هم ممکنه بشه با چند حدس و تست پیدا کرد.
بعد بعضی ها هم اصلا در پسورد اطلاعات شخصی خودشون رو استفاده میکنن؛ مثلا شمارهء موبایل. اینطوری هکر به اطلاعات شخصی و هویت حقیقی طرف هم دست پیدا میکنه.

masiha68
یک شنبه 19 خرداد 1392, 23:05 عصر
اصل پسورد کاربردهای دیگری هم داره.
مثلا نفوذگر میتونه اون رو روی اکانت ایمیل یاهو یا جیمیل طرف هم چک کنه.
حتی اگر پسوردها یکی نباشن احتمالش زیاده که کاربر از پسوردی با ساختار مشابه استفاده کرده باشه، که اینو هم ممکنه بشه با چند حدس و تست پیدا کرد.
بعد بعضی ها هم اصلا در پسورد اطلاعات شخصی خودشون رو استفاده میکنن؛ مثلا شمارهء موبایل. اینطوری هکر به اطلاعات شخصی و هویت حقیقی طرف هم دست پیدا میکنه.

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

Unique
دوشنبه 20 خرداد 1392, 02:53 صبح
اگه مثلا من به دیتابیست دسترسی پیدا کنم بایه نگاه می فهمم که الگوریتم پسوردت چیه و سریع مثلا رمز خودمو md5 میکنم میذارم جاش و توهم اونوقت بدبخت میشی

البته اگه salt و pepper داشته باشه و یک عامل متغیر بین کاربران و چند هزار با هم md5 بشه ! شما نمیتونید به این راحتی اون را تولید کنید ! معمولا میان brute force میکنند که با روشی که گفتم طرف بیخیالش میشه ! یاهو و gmail هم اگه شما بیش از تعداد مشخصی پسوردتون را اشتباه بزنین کلا حساب را ققل میکنن !

masiha68
دوشنبه 20 خرداد 1392, 08:09 صبح
کاری که من کردم اینه که دوبار از کاربر پسورد می خوام ... بار اول بهش می گم پسور اشتباه و بار دوم وارد میشه

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

mfungroup
شنبه 05 اردیبهشت 1394, 13:56 عصر
البته اگه salt و pepper داشته باشه و یک عامل متغیر بین کاربران و چند هزار با هم md5 بشه ! شما نمیتونید به این راحتی اون را تولید کنید ! معمولا میان brute force میکنند که با روشی که گفتم طرف بیخیالش میشه ! یاهو و gmail هم اگه شما بیش از تعداد مشخصی پسوردتون را اشتباه بزنین کلا حساب را ققل میکنن !
بله روشی که شما میگین هم کاملا مناسبه، :لبخند: