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

نام تاپیک: جلوگیری از حملات sql در سی شارپ

  1. #1
    کاربر دائمی
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    ایران زمین
    پست
    412

    جلوگیری از حملات sql در سی شارپ

    ما یک صفحه login داریم که یوزر و پس رو میگیره در php قابلیتی به نام pdo است که از حملات sql جلوگیری میکند آیا سیشارپ هم همچین قابلیتی دارد.
    اگر کسانی در این باره مطالبی دارند بگذارند تا استفاده کنیم
    متشکر

  2. #2
    کاربر تازه وارد آواتار Sp|R|T
    تاریخ عضویت
    اردیبهشت 1390
    پست
    72

    نقل قول: جلوگیری از حملات sql در سی شارپ

    بله!

    یک روش جلو گیری از وارد کردن کاراکتر های خطرناک و یا Replace کردن کاراکتر ها به کارکترهای دیگه

    و روش دیگه ای اینکه مقدارهایی که برای sql فرستاده میشه رو انکریپت کنید ( MD5 ) و خوندنش هم دکریپت که این روش بسیار امنیت میره بالا

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

    نقل قول: جلوگیری از حملات sql در سی شارپ

    سلام اینها که شما بیان کردید روشهای دستی و حتی MD5 هم گاهی اوقات تبدیل به کامنت میشه میخوام بدونم تکنولوژی برای این کار هست که مثلا کارهای replaceو ... رو خودش انجام بده و یا کار رو راحت تر کنه

  4. #4
    کاربر دائمی آواتار ardeshir1365
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    همدان
    سن
    37
    پست
    122

    نقل قول: جلوگیری از حملات sql در سی شارپ

    نقل قول نوشته شده توسط Sp|R|T مشاهده تاپیک

    و روش دیگه ای اینکه مقدارهایی که برای sql فرستاده میشه رو انکریپت کنید ( MD5 ) و خوندنش هم دکریپت که این روش بسیار امنیت میره بالا
    سلام
    دوست عزیز md5 یا هر الگوریتم hach دیگه اگه قرار بشه دکریپت بشه که امنیت نداره
    پس md5 هم دکریپت نمیشه

  5. #5
    کاربر دائمی آواتار ferankyy
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    خونه
    پست
    277

    نقل قول: جلوگیری از حملات sql در سی شارپ

    استفاده از Linq

  6. #6
    کاربر دائمی آواتار Hajivandian
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    تهران
    سن
    35
    پست
    368

    نقل قول: جلوگیری از حملات sql در سی شارپ

    استفاده از SqlCommand.Parameters

  7. #7
    کاربر تازه وارد آواتار Sp|R|T
    تاریخ عضویت
    اردیبهشت 1390
    پست
    72

    نقل قول: جلوگیری از حملات sql در سی شارپ

    نقل قول نوشته شده توسط ardeshir1365 مشاهده تاپیک
    سلام
    دوست عزیز md5 یا هر الگوریتم hach دیگه اگه قرار بشه دکریپت بشه که امنیت نداره
    پس md5 هم دکریپت نمیشه
    بنده منظورم استفاده از MD5 بخاطر این هستش که کاراکترها بصورت کد شده ارسال بشه و یا اینکه چک بشه !

    یعنی من اگر در یک تکست باکس که مثلآ مربوط به صفحه لوگین هستش را یک کاراکتر ' را وارد کنم، این کاراکتر مستقیمآ داخل دیتابیس چک نشه ! اول این کاراکتر تبدیل به MD5 یا هش بشه سپس اون الگریتمی که بدست اومده رو داخل دیتابیس چک و یا اینسرت و یا ....کنه !

    مزیت بسیار بالای این کار اینه که هیـــــــــــــــــــــچ کاراکتری مستقیمآ وارد دیتابیس نمیشه ! و تزمین میکنم امنیت دیتابیس 99.99.99% خواهد بود ( 0.00001 شاید کشف کردن)

    و اینکه شما عرض میکنید هر hash یی که دکریپت بشه امنیت نداره، میگویم حق با شماست ولی این چیزی و یا متودی که من مطرح کردم قرار نیس کسی بخواد هشی رو دکریپت کنه ! چرا ؟ چون کسی نمیتونه هشی که وارد دیتابیس شده رو بکشه بیرون ( بجز خوده پروگرمر و یا حالا ادمین خوده برنامه )

    مشکل اکثر برنامه نویسان و طراحان وب اینه که میان اطلاعات داخل sql رو فقط کد میکنن که اگر کسی از تریق تزریق کد، اطلاعات دیتابیس رو بدست آورد نتونه دکریپت کنه (بگو هر چقد هم قوی باشه ولی یه روز دکریپت میشه ) و حالا من اینو میگم باید یه کاری که کرد اصلآ کسی نتونه اطلاعات رو از دیتابیس بگیره ( مهرامانه هارو میگم)

    که بحث MD5 که آوردم بخاطر همین بود؛

    =======> اعداد، کارکترها، حروف ها و ... اول انکریپت کنه سپس بصورت انکرپت شده توی دیتابیس چک کنه

    وسلام :دی

  8. #8
    کاربر دائمی آواتار s3rv3r
    تاریخ عضویت
    آذر 1389
    محل زندگی
    Cyber
    پست
    243

    نقل قول: جلوگیری از حملات sql در سی شارپ


    txt_user.text.replace("'","")

    مسخره بازيه كه نام كاربرو هم بيايي كد كني.

    شما نزار كاراكتر ' تو رشته باشه ديگه نيازي به كد كردن نيست كسي كه بدوني SQL Injection يعني چي ديگه نيازي به اين همه كار نداره.
    اقا شما يه متد بنويس كه كاراكتراي خطري SQL رو پاك كنه از رشته وروديت همين.


    select uid from users where username='{0}' and password ='{1}'

    Normal
    {0} = admin
    {1} = adminpass
    select uid from users where username='admin' and password ='adminpass'

    Attacker
    {0} = admin
    {1} = adminpass' or '1'='1
    select uid from users where username='admin' and password ='adminpass' or '1'='1'
    hacked


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

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