آژانس هواپیماییexchanging

جلوگیری از حملات SQL Injection

شروع موضوع توسط hamidch56 ‏25 نوامبر 2005 در انجمن asp , ASP.NET

  1. hamidch56

    hamidch56 کاربر تازه وارد

    تاریخ عضویت:
    ‏25 نوامبر 2005
    نوشته ها:
    26
    تشکر شده:
    0
    با سلام

    براي جلوگیری از حملات SQL Injection كه ارسالها به صورت POST است تنها گذاشتن کد زیر در برنامه کافی است یا نه

    اگه کسی میدونه ممنون میشم توضیح بده :)

    -----------------------------------------------------
    HTML:
    Username=Replace(Username ,"'"," ")
     
  2. mazoolagh

    mazoolagh Registered User

    تاریخ عضویت:
    ‏10 آپریل 2004
    نوشته ها:
    2,940
    تشکر شده:
    7
    کافی نیست!

    هم باید حواست به پرمیشن ها باشه و درست و برحسب نیاز تعیین کنی. هم اینکه همه فیلدهای ورودی که قراره در کوئری استفاده بشن validate بشن هم از نظر حداکثر تعداد کارآکتر و هم نوع کارآکترهای مجاز
    ضمنا بهتره از stored procedure استفاده کنی و مقادیر فیلدها رو بعنوان پارامتر براش بفرستی تا اینکه جمله sql رو با بهم چسبوندن چند رشته حرفی بسازی.

    بقیه اش رو هم اساتید میان میگن.
     
  3. hamidch56

    hamidch56 کاربر تازه وارد

    تاریخ عضویت:
    ‏25 نوامبر 2005
    نوشته ها:
    26
    تشکر شده:
    0
    مرسی

    من این می خوام برای قسمت ورود کاربر استفاده کنم که تنها دو فیلد نام کاربری و کلمه عبور است

    می خواستم بدونم در این حالت این کد که نوشتم کفایت می کنه یا نه :)
     
  4. KambizZandi

    KambizZandi کاربر تازه وارد

    تاریخ عضویت:
    ‏4 آپریل 2004
    نوشته ها:
    59
    تشکر شده:
    5
    محل سکونت:
    Iran - Tehran
    سلام

    روش زير رو استفاده كنيد بهتره:
    يك فيلد در db داشته باشيد مثلا به اسم UserPassHash كه نام كاربري و نام رمز رو در يك string بذاريد و با يك سيستم Hashing اونو Hash كنيد و در اين فيلد بذاريد.
    اگر نام رمز كاربري عوض شد بايد اين فيلد رو هم Update كنيد.
    مرحله بعدي براي چك كردن اينه كه نام كاربري و نام رمزي كه يوزر داده براي Login شدن رو مقل حالت قبل ازش Hash بگيريد و با Hash موجود در فيلد بالايي مطابقت بديد.
    اينجوري هيچ SQL Injection اي نميتونه كاري انجام بده.
     
  5. mazoolagh

    mazoolagh Registered User

    تاریخ عضویت:
    ‏10 آپریل 2004
    نوشته ها:
    2,940
    تشکر شده:
    7
    دقیقا همین که آقای زندی گفت