الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية تجنب اختراق مواقع ال Asp.net

بدأه ananabha في 12 يوليو 2009 · 6 رد · 2,547 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله

اخواني الكرام خبراء الدوت نت

اريد ان اعرف كيف احمي موقعي المبرمج بــ

Asp.net

من الاختراقات

انا قرأت انا هناك ما يسمى بالــ

Sql Injection

وانني لا اجب ان استعمل جملة

Select

بهذا الشكل

Select * From Tablename where Feildname ='" & textbox1.text & "'

طب كيف أستعمل جملة سلكت

وهل هذه الخطورة ايضا تنطبق على جملة

update

وما هي الاحتياطات الاخرى التي اتخذها لحماية موقعي

أرجو المساعدة

#2

http://msdn.microsoft.com/en-us/library/bb355989.aspx

لا تثق في اي مستخدم للموقع ,, راجع مدخلات مرتين قبل ان تستخدمها , استخدم validation لكل المدخلات ,,وحسب مستوى الامان المطلوب

يمكنك استخدام server/client validation

اعمل Encode للبيانات التي تريد عرضها للمستخدم سواء كانت من كنترول او داتابيز

استخدم exception handling في كل مراحل الكود

تعامل مع parameters دائما

هناك ايضا ViewState يجب حمايته و التعامل معه بشكل جيد

The World Must Be Crazy

#3

وعليكــم السـلام ورحمة الله وبركاتـه..

حل sql injection

هو استخدام الاجراءات المخزنه stored procedures

أُحبُّ الصَّالِحِينَ وَلسْتُ مِنْهُمْ ××× لَعَلِّي أنْ أنَالَ بهمْ شَفَاعَهْ

وَأكْرَهُ مَنْ تِجَارَتُهُ المَعَاصِي ××× وَلَوْ كُنَّا سَواءً في البضَاعهْ

#4

ليس شرطاً استخدام الـstored procedure لمنع الـsql injection. استخدام البارامترز كافي.

و لكن ما قال الأخوة دائماً تأكد من المدخلات قبل استخدامها.

#5

هناك ادوات قد تعينك في اكتشاف الأخطاء قبل ان تنشر موقعك

Microsoft Source Code Analyzer for SQL Injection

Microsoft Code Analysis Tool .NET (CAT.NET)

Microsoft FxCop 1.35

http://www.microsoft.com/downloads/details...;displaylang=en

The World Must Be Crazy

#6

اخواني الكرام

اولا اشكركم على ردودكم جميعا فقد افادتني كثيرا

ولكني عندما استخدمت الــ Parameters

في جملة Update

نتج عن ذلك مشكلة اللغة العربية

ولتوضيح المشكلة

هذه هي جملة Update التي كنت استخدمها قبل استخدام البارمترز

update[Cart] set [URName]=N'" & txturname.Text & "' where ...... "

كما تعلمون ان حرف N علشان تدخل القيم بالعربي

ولكني بعد ما استخدمت البارمتر اصبحت الجملة كالتالي

update[Cart] set [URName]=@URName"
Dim para As SqlParameter = cmd.Parameters.Add("@URName", SqlDbType.VarChar)
para.Value = txturname.Text

ونتج عن ذلك ان القيم دخلت في قاعدة البيانات على شكل علامات استفهام

وليست لغة عربية

فما هو حل هذه المشكلة ..؟؟؟؟

تم تعديل هذه المشاركة بواسطة ananabha في 14 يوليو 2009 في 02:11

#7

السلام عليكم ورحمة الله وبركاته

سؤالك الأخير بعيد تماما عن موضوع الحماية

على كل حال راجع الموضوع ده

/index.php?showtopic=199379

إذا أردت أن تـجـعـلـنـي سـعـيـداً ... فـعـلـمـنـي شـيـئـاً جـديـداً

مواضيع مشابهة