نمایش نتایج 1 تا 17 از 17

نام تاپیک: امنیت برنامه

  1. #1
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    محل زندگی
    مشهد
    پست
    518

    امنیت برنامه

    با سلام خدمت دوستان
    من میخواستم روی دیتابیس خودم تو اس کیو ال 2005 یه پسورد بذارم تا کاربری که یه کم اس کیو ال بدونه نتونه راحت مقادیر table هام و هر چیز دیگه تو دیتابیسمو تغییر بده
    ممنون میشم اگه منو راهنمایی کنین چجوری میتونم رو دیتابیس خودم یه رمز بذارم(منظورم تو محیط خود اس کیو اله)

  2. #2
    کاربر دائمی
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    تهران
    پست
    2,397

    نقل قول: امنیت برنامه

    پسورد گذاری که نمیدونم ولی من خودم یه یوزر ایجاد میکنم ( در بخش users در Database ) و برای اون پسورد میذارم و نوع ورودی به SQL رو به حالت user mode میذارم ، اینطوری حتما" باید پسورد یوزر وارد بشه تا بشه وارد سیستم شد.

  3. #3
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: امنیت برنامه

    اینطوری حتما" باید پسورد یوزر وارد بشه تا بشه وارد سیستم شد
    اشتباهه! در این حالت هم میشه بدون یوزر و پسورد وارد شد
    در مورد رمز گذاشتن برای دیتابی SQL تا جایی که می دونم امکان نداره؛ بهترین کار استفاده از Hashing یا کد گذاری فیلدهای حساس دیتابیس هست
    برای اینکه بدونید هر کسی میتونه راحت به دیتابیس شما دسترسی داشته باشه حتی با روشی که آقای نیکجو فرمودن به راحتی می تونید دیتابیس رو کپی کنید و دریه سیستم دیگه Attach کنید به این ترتیب می تونید محتوای دیتابیس رو ببینید و رمز گذاری به صورتی که شما می خواین انجام نمیشه

  4. #4
    کاربر دائمی
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    تهران
    پست
    2,397

    نقل قول: امنیت برنامه

    موردی رو که بنده عرض کردم در حالت استفاده نرم افزاری بود که فکر میکنم درست هستش ولی در مورد خود manager مربوطه به sql server اطلاعی ندارم یعنی تست نکردم.

  5. #5

    نقل قول: امنیت برنامه

    نقل قول نوشته شده توسط علیرضا حسن زاده مشاهده تاپیک
    بهترین کار استفاده از Hashing یا کد گذاری فیلدهای حساس دیتابیس هست
    چطوری فیلدهای دیتابیس را میشه کد گذاری کرد؟ اگه در این مورد راهنمایی کنید ممنون میشم

  6. #6
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: امنیت برنامه

    فیلدهای دیتابیس رو با روش های مختلفی میشه رمزگذاری کرد و در حالت کلی دو روش وجود داره روش اول رمزگذاری هایی هستن که حالت برگشت پذیر دارن یعنی می تونید با داشتن کلید عبارت رمز شده رو به حالت اولیه برگردانید در حالت دوم این کار امکان پذیر نیست و برگشت به حالت اول وجود نداره(از حالت دوم معمولا برای چک کردن اطلاعاتی مثل پسورد و ... میشه استفاده کرد)
    حالا به خود شما و اطلاعاتتون بستگی داره که از چه روشی استفاده کنید ولی اگه اطلاعاتی در مورد روشهای کد گذاری ندارید می تونید دنبال اطلاعاتی در مورد روش های AES، MD5 و ... بگردین(تو خود سایت هم وجود داره نمونه کد رو هم می تونید از بخش 1001 نکته یا همون چند تا تاپیک بالای تالار پیدا کنید) می تونید از روش ابداعی خودتون هم استفاده کنید مثلا داده ها رو XOR کنید یا خیلی کارهای دیگه که فقط خودتون می تونید اطلاعات رو به حالت اول برگردونید
    این طوری اگه کسی به دیتابیس شما هم دسترسی داشته باشه نمیتونه از اطلاعات اون استفاده کنه مگر اینکه روش کد گذاری شما رو به نحوی بفهمه که فهمیدن روش کد گذاری هم خودش بحث مفصلیه

  7. #7
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: امنیت برنامه

    ROFL
    سلام.

    میدونید یاد چی می افتم؟
    وزارت دارایی برای این که یک نرم افزار حسابداری رو تایید کنه یک شرط عمده داره.
    "بعضی از چیزها رو فقط بتوان با سند اصلاحی درست کرد.مثل چک برگشتی و ...."
    برای یک مشتری شرط اصلی اینه که:
    کاربر نتونه هر کاری بکنه ولی خودش بتونه.
    برای کارمند
    معمولاً اصلاً نمیفهمه چی هست ولی وقتی باز باشه راحتتره.
    برای برنامه نویس اینه که
    بتونه خودش تصمیم بگیره برنامه رو با چه کانفیگی نصب کنه.

    بزارید دقیق براتون توضیح بدم:

    ۱.فرض کنید بخواهیم دیتابیس رو باز بزاریم:
    دارایی حال نمیکنه.برنامتون تایید نمیشه.
    مدیر هم خوشحال نیست.
    کارمند احساس راحتی میکنه.
    نوشتنش از همه حالتها سادهتره ولی خوتون هم یک موقع هایی وجدان درد میگیرید که چرا منشی میتونه موجودی صندوق رو تغییر بده.
    راه حل:Copy Paste

    ۲.فرض کنید با مشخصات کاربر محدود کنیم.یعنی User در sql
    متاسفانه دارایی فکر میکنه این روش درسته
    یکم تنظیمش سخته مخصوصاً اگر مدیر بخواهد از داخل برنامه permission ها رو alter کنه و برنامه از کار نیافته.واقعاً سخته.
    مدیر خیلی حال میکنه که همه رمز جدا دارن.فکر میکنه آخر امنیته.
    کاربر براش خیلی تفاوت نداره ولی همیشه چشمش به صفحه کلید ه رئیسه که ببینه چی مینویسه.
    راه خل:Copy Paste

    ۳.فرض کنید کل دیتابیس رو رمزنگاری کنیم.
    فکر میکنم دارایی تایید نمیکنه.احتمالاً دیگه اینقدر حالیشون هست.بز که نیستن.
    مدیر نمیفهمه چیه.ولی اگر زبونتون چرب باشه ممکنه خیلی خوشش بیاد.پشتک وارو هم بزنه.
    کارمند هم از مدیر بدتر.
    یکم فکر کردید که رمزش رو کجا نگه میدارید؟
    راه حل:فقط باید رمز پیدا بشه که کار سختی نیست.اصلاً سخت نیست.آقای نیکجو براتون ۵ دقیقه ای در میارن.
    البته برای خوندن اطلاعات راه زیاده.مثلا اینکه چون نه شما و نه مشتری پول certificate نمیدین اطلاعات رو میشه sniff کرد.

    ۴.فرض کنید که دیتابیس رو یک جوری طراحی کردیم که با دستورات sql به این سادگی نشه باهاش کار کرد.
    اصلاً به این مورد فکر نکنید.
    هر روز مشتری هاتون زنگ میزنن فحش میدن که آقای X, برنامه وقتی مشتری یک چک در جریان وصول داره و تعداد کمپوت های مرجوعی تاریخ گذشتش بیشتر از منفی تعداد موجودی ه که الان منفیه موقع نشون دادن بدهی مشتری خطا میده.
    این مورد رو بنده چند بار در برنامه های مختلف حل کردم.راه حلش اگر امکانات کافی نداشته باشین خیلی سخته. ولی نوشتن برنامش فقط از دست یک احمق بر میاد چون باید بی خیال چیزی به اسم Normalization بشه.

    ۵.حالت پنجم اینه که هم از User استفاده کنید و هم دیتابیس رو رمزنگاری کنید و دسترسی Admin به کاربر ندید. BootLoader رو ببندید و FireWall و بساط مربوطه رو راه اندازی کنید.یک قفل گنده هم بزارید Background ه Desktop ه ویندوز و بگید "جیززه.کسی دست نزنه."
    در این حالت به جز جیب مدیر همه راضی هستن.
    به این حالت میگن jail.
    ولی چون متاسفانه شما با سیستم عامل ویندوز کار میکنید و خبری از AIX نیست, چیزهایی مثل :
    http://downloadsquad.switched.com/20...ise-nightmare/
    و هزاران مورد دیگه اخبار خوبی برای برنامه شما نیستن.
    طرز کارشون هم راحته.

  8. #8

    نقل قول: امنیت برنامه

    نقل قول نوشته شده توسط علیرضا حسن زاده مشاهده تاپیک
    فیلدهای دیتابیس رو با روش های مختلفی میشه رمزگذاری کرد و در حالت کلی دو روش وجود داره روش اول رمزگذاری هایی هستن که حالت برگشت پذیر دارن یعنی می تونید با داشتن کلید عبارت رمز شده رو به حالت اولیه برگردانید در حالت دوم این کار امکان پذیر نیست و برگشت به حالت اول وجود نداره(از حالت دوم معمولا برای چک کردن اطلاعاتی مثل پسورد و ... میشه استفاده کرد)
    حالا به خود شما و اطلاعاتتون بستگی داره که از چه روشی استفاده کنید ولی اگه اطلاعاتی در مورد روشهای کد گذاری ندارید می تونید دنبال اطلاعاتی در مورد روش های AES، MD5 و ... بگردین(تو خود سایت هم وجود داره نمونه کد رو هم می تونید از بخش 1001 نکته یا همون چند تا تاپیک بالای تالار پیدا کنید) می تونید از روش ابداعی خودتون هم استفاده کنید مثلا داده ها رو XOR کنید یا خیلی کارهای دیگه که فقط خودتون می تونید اطلاعات رو به حالت اول برگردونید
    این طوری اگه کسی به دیتابیس شما هم دسترسی داشته باشه نمیتونه از اطلاعات اون استفاده کنه مگر اینکه روش کد گذاری شما رو به نحوی بفهمه که فهمیدن روش کد گذاری هم خودش بحث مفصلیه
    اما چطوری می توان ساختار دیتابیس را رمزگذاری کرد با این روشی فقط اطلاعات داخل دیتابیس رمزی میشن

    حتما از WITH ENCRYPTION برای view و یا برای stored procedure استفاده کردید با این دستور دیگه نمیشه به محتوای تمام روال های ذخیره شده و View ها دسترسی پیدا کرد اما چطوری می توان جدولها و دیاگرام ها را به عبارتی تمام ساختار دیتابیس را رمزگذاری کرد ؟

  9. #9
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: امنیت برنامه

    WITH Encryption فقط یک کار انجام میده.
    بعد از ساخت SP یا view, سورسش رو از بین میبره.
    شما منظورت اینه:
    http://technet.microsoft.com/en-us/l.../bb934049.aspx
    من هم در پست قبلی منظورم همین بود.

  10. #10
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: امنیت برنامه

    نقل قول نوشته شده توسط علیرضا حسن زاده مشاهده تاپیک
    فیلدهای دیتابیس رو با روش های مختلفی میشه رمزگذاری کرد و در حالت کلی دو روش وجود داره روش اول رمزگذاری هایی هستن که حالت برگشت پذیر دارن یعنی می تونید با داشتن کلید عبارت رمز شده رو به حالت اولیه برگردانید در حالت دوم این کار امکان پذیر نیست و برگشت به حالت اول وجود نداره(از حالت دوم معمولا برای چک کردن اطلاعاتی مثل پسورد و ... میشه استفاده کرد)
    حالا به خود شما و اطلاعاتتون بستگی داره که از چه روشی استفاده کنید ولی اگه اطلاعاتی در مورد روشهای کد گذاری ندارید می تونید دنبال اطلاعاتی در مورد روش های AES، MD5 و ... بگردین(تو خود سایت هم وجود داره نمونه کد رو هم می تونید از بخش 1001 نکته یا همون چند تا تاپیک بالای تالار پیدا کنید) می تونید از روش ابداعی خودتون هم استفاده کنید مثلا داده ها رو XOR کنید یا خیلی کارهای دیگه که فقط خودتون می تونید اطلاعات رو به حالت اول برگردونید
    این طوری اگه کسی به دیتابیس شما هم دسترسی داشته باشه نمیتونه از اطلاعات اون استفاده کنه مگر اینکه روش کد گذاری شما رو به نحوی بفهمه که فهمیدن روش کد گذاری هم خودش بحث مفصلیه
    مطمئنی؟
    تا حالا با دیکامپایلر کار کردی؟فکر میکنی چنین روشی حتی اگر کد native باشه از دست قولهایی مثل IDA و Reflector جون سالم به در میبره.من که اینطور فکر نمیکنم.

    از نظر تئوری رمز نگاری اطلاعات در یک سیستم برای جلوگیری از دسترسی به اطلاعات در همون سیستم غیر ممکنه.
    اگر میخواهی مطمئن بش یک پیغام خصوصی به آقای نیکجو بده که همینجا برات توضیح بده.
    من خیلی توی توضیح دادنش وارد نیست.ولی میدونم که این مطلب کاملاً اثبات شده ودقیق هست.

  11. #11
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    محل زندگی
    مشهد
    پست
    518

    نقل قول: امنیت برنامه

    دم همه دوستان گرم
    فقط اگه میشه یکم زیر دیپلم تر توضیح بدین ممنون میشم

  12. #12
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: امنیت برنامه

    نقل قول نوشته شده توسط mahdidabaghi مشاهده تاپیک
    دم همه دوستان گرم
    فقط اگه میشه یکم زیر دیپلم تر توضیح بدین ممنون میشم
    من اگر بتونم این دینی رو پاس کنم تازه میشه دیپلم.
    هر جا رو که متوجه نشده Quote کن تا بازترش کنم.

  13. #13
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: امنیت برنامه

    مطمئنی؟
    تا حالا با دیکامپایلر کار کردی؟فکر میکنی چنین روشی حتی اگر کد native باشه از دست قولهایی مثل IDA و Reflector جون سالم به در میبره.من که اینطور فکر نمیکنم.

    از نظر تئوری رمز نگاری اطلاعات در یک سیستم برای جلوگیری از دسترسی به اطلاعات در همون سیستم غیر ممکنه.
    اگر میخواهی مطمئن بش یک پیغام خصوصی به آقای نیکجو بده که همینجا برات توضیح بده.
    من خیلی توی توضیح دادنش وارد نیست.ولی میدونم که این مطلب کاملاً اثبات شده ودقیق هست.
    اینکه شما بتونی به کلید یه الگوریتم رمز دسترسی داشته باشی یا به هر روشی با دیکامپایلر و ... بخوای اونو بدست بیاری مشکلی هست که تو هر نرم افزاری می تونه باشه و باید با روش های محافظتی تا حد امکان از کلید محافظت بکنید به نظر شما کسایی که از قفل های سخت افزاری استفاده می کنن چیکار میکنن یا اصلا یه قفل سخت افزاری چطوری کاری میکنه؟ اکثر موارد یه کلید داره که اطلاعات رو توسط اون رمز کردن و اطلاعات دیگه رو مثل کلید های برنامه و ... تو قفل ذخیره کردن (البته در این حالتی که گفتم و روش های دیگه ای هم استفاده میشه)
    این رو هم در نظر داشته باشید: تا زمانی که کلید الگوریتم رمز تو برنامه ذخیره شده امکان دستیابی به اون وجود داره البته نه برای هرکسی و با هر سطح توانایی واگه خوب محافظت شده باشه افراد کمی هستن که بتونن کلید رو بازیابی کنن پس شما اون افراد کم رو در نظر نگیرید و برنامه رو برای باقی افراد محافظت کنید معمولا جواب میده مگر اینکه نرم افزار خیلی گران قیمتی باشه که افراد بخوان برای کرکش اقدام کنن
    البته جای این بحثا تو این تاپیک نیست و باید تو تاپیک ویژه بحث بشه تا اساتید هم بتونن ببینن و جواب بدن
    برای دوستمون هم که تاپیک رو ایجاد کردن بگم که اگه بخوان اطلاعات رو رمز کنن باید کلید و الگوریتم رمز گذاری رو تا حد امکان محافظت کنن

  14. #14
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: امنیت برنامه

    نقل قول نوشته شده توسط علیرضا حسن زاده مشاهده تاپیک
    اینکه شما بتونی به کلید یه الگوریتم رمز دسترسی داشته باشی یا به هر روشی با دیکامپایلر و ... بخوای اونو بدست بیاری مشکلی هست که تو هر نرم افزاری می تونه باشه و باید با روش های محافظتی تا حد امکان از کلید محافظت بکنید به نظر شما کسایی که از قفل های سخت افزاری استفاده می کنن چیکار میکنن یا اصلا یه قفل سخت افزاری چطوری کاری میکنه؟ اکثر موارد یه کلید داره که اطلاعات رو توسط اون رمز کردن و اطلاعات دیگه رو مثل کلید های برنامه و ... تو قفل ذخیره کردن (البته در این حالتی که گفتم و روش های دیگه ای هم استفاده میشه)
    این رو هم در نظر داشته باشید: تا زمانی که کلید الگوریتم رمز تو برنامه ذخیره شده امکان دستیابی به اون وجود داره البته نه برای هرکسی و با هر سطح توانایی واگه خوب محافظت شده باشه افراد کمی هستن که بتونن کلید رو بازیابی کنن پس شما اون افراد کم رو در نظر نگیرید و برنامه رو برای باقی افراد محافظت کنید معمولا جواب میده مگر اینکه نرم افزار خیلی گران قیمتی باشه که افراد بخوان برای کرکش اقدام کنن
    البته جای این بحثا تو این تاپیک نیست و باید تو تاپیک ویژه بحث بشه تا اساتید هم بتونن ببینن و جواب بدن
    برای دوستمون هم که تاپیک رو ایجاد کردن بگم که اگه بخوان اطلاعات رو رمز کنن باید کلید و الگوریتم رمز گذاری رو تا حد امکان محافظت کنن
    پست قدیمیه.ولی جواب میدم.
    همون کلید هم راه داره.
    راه سادش اینه که اطلاعات عبور کرده از پورت usb/rs232 رو بخونید.

    از نظر تئوری امکان ندارن که بتوان کاربر یک سیستم را از دسترسی به اطلاعات درون همان سیستم منع کرد.امکان ندارد.ندارد.
    مدیران بخش امنیت هم ۱۰۰۰ بار همین جمله و مشتقات و اضافات و کسورات و ملحقات و توضیحاتش رو برای همه توضیح دادن.

  15. #15
    کاربر دائمی آواتار علیرضا حسن زاده
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تــــــــــــــــــــــــــبریز
    پست
    897

    نقل قول: امنیت برنامه

    همون کلید هم راه داره.
    من هم نگفتم امکان نداره
    راه سادش اینه که اطلاعات عبور کرده از پورت usb/rs232 رو بخونید.
    همین راه ساده ای هم که می گین به این سادگی ها نیست خیلی هنوز بلد نیستن با پورت USB ارتباط برقرار کنن چه برسه به اینکه بخوان براش ....

    یه موردی که برای این موارد مشهوده اینه که قفل ساز محل معمولا می تونه زمانی که کلید گم شده باشه در حداقل زمان ممکن قفل در رو باز کنه که میشه یه طورایی به قفل ها کار گذاشته شده برای نرم افزار ها هم تعمیم داد یعنی کرکر های با تجربه با کمی تلاش در اکثر موارد می تونن قفل نرم افزار رو به یه روشی دور بزنن
    نتیجه اینکه قفل واسه کرکر نیست واسه مردمم عادی هستم که اکثر مشتریای ما رو هم همونا تشکیل میدن و اونا قادر به شکستن قفل برنامه های نوشته شده با دات نت هم نیستن چه برسه به Native و ...

  16. #16
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    محل زندگی
    مشهد
    پست
    518

    نقل قول: امنیت برنامه

    سلام
    شرمنده من يه مدتي سربازي بودم
    ولي تو اين مدت جوابمو واسه اينكه كاربران ديگه به تيبل هام نتونن دسترسي داشته باشن نگرفتم
    ممنون ميشم راهنماييم كنين

  17. #17
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    محل زندگی
    مشهد
    پست
    518

    نقل قول: امنیت برنامه

    یعنی یه جوون مرد پیدا نمیشه جواب منو بده؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •