هل هناك طريقة لمنع تطبيقنا من تحليلها أو حقنها؟ (ج #)

StackOverflow https://stackoverflow.com/questions/893658

  •  23-08-2019
  •  | 
  •  

سؤال

هناك الكثير من المهامين ومحللات التعليمات البرمجية الثابتة هناك تجمعات C #.

فقط أتساءل عما إذا كانت هناك أي طرق لمنع تحليلها، لأنها تجعلني أشعر بالتوتر قليلا عند تجريدها.

لقد بحثت في جميع أنحاء الإنترنت و Stackoverflow. يبدو أن هناك لعجبتي.

ما لدي فقط بعض الألقاب أكثر مخيفة مثل هذه (عذرا، لا يمكن للمستخدم الجديد نشر روابط فرط، يرجى جوجل لهم):

"التلمذة التجميعية و I # / VB.NET Code Injection"

"كيفية ضخ جمعية .NET المدارة (DLL) في عملية أخرى"

هل هو مجرد أن أكون قلقا جدا أم ماذا؟

راجع للشغل، مع C #، نحن نبني عميل Winform جديد لعملاء البنك للقيام بالمعاملات عبر الإنترنت. يجب ألا نفعل ذلك بطريقة WinForm أو يجب أن نستخدم لغة أخرى مثل Delphi، C ++؟ لدينا حاليا عميل WinForm بنيت مع C ++ Builder.

هل كانت مفيدة؟

المحلول

فقط حول أي تطبيق يمكن "تحليلها وحقنها". بعض أكثر من غيرها. لهذا السبب لا تثق في إدخال المستخدم أبدا. يمكنك التحقق من صحة طلبات المستخدم الخاصة بك بالكامل على نهاية الخادم، والتأكد من أنك غير عرضة للتجاوزات المخزن المؤقت وحقن SQL وغيرها من مواعيد الهجوم.

يمكن أن يقوم Obfuscators بإجراء مجموعات .NET أصعب لتحليله. باستخدام مفتاح آمن للإسم القوي يمكن أن يجعلها أكثر صعوبة في تغيير التعليمات البرمجية الخاصة بك. ولكن، مثل كل شيء آخر في العالم الرقمي، يمكن لشخص ما استغلال ضعف والحصول على أي ضمانات تضعها في مكانها.

نصائح أخرى

إذا كان من خلال تحليلك يعني أن شخصا ما يقوم بعمل الرمز والنظر إليه، ثم DotFucstor الذي يشحن مع VS Pro وما فوقه هو أداة بسيطة (مجانية) للمساعدة هنا. هناك نسخة كاملة (ولكن المدفوعة مقابل) التي يمكن أن تفعل المزيد.

لمنع شخص يتعثر مع مؤسساتك المنشورة، استخدم أسماء قوية.

حيث توجد إرادة، هناك طريقة، سواء كانت شفرة مدارة أو التجميع الأصلي. المفتاح هو الحفاظ على المعلومات المهمة على نهاية الخادم والحفاظ على السيطرة على ذلك.

أول شيء تحتاج إلى اتخاذ قرار ضد ما تحاول حمايته؟ يعد Obfuscators مفيدا فقط لحماية خوارزميات "الصلصة السرية"، لكن المهاجم يمكنه ببساطة استخراج الرمز واستخدامه كمربع أسود. في 99٪ من الحالات، يضيع Obfuscators المال. إذا كان المهاجم لديه وصول بدني ليس هناك الكثير الذي يمكنك القيام به.

إذا كان المستخدم النهائي قيد التشغيل مع امتيازات إدارية، فسيكون قادرا على إرفاق مصحح الأخطاء وتعديل التعليمات البرمجية الخاصة بك، بما في ذلك تفاصيل الحساب المستهدف. أعطاني بنك الصديق المحلي قارئ رقاقة ودبوس يجب علي إدخال أرقام N الأخيرة من الحساب المستهدف، والتي تقوم بها / تشفير مع رقاقة بطاقتي المصرفية؛ ثم أدخل التعليمات البرمجية من الجهاز إلى تطبيق الويب الخاص بالبنك والتي يمكن التحقق منها في نهاية البنك أيضا. هذا يخفف من الهجمات "الرجل في الوسط" ...

الأمان ممكن فقط على الأنظمة التي تتحكم بها جسديا في الحصول عليها، وحتى بعد ذلك غير مضمون، فقط قابلة للتحقيق. يجب أن تفترض أي رمز لا ينفذ على نظام يمكنك التحكم فيه وسوف يتم اختراقه. كما ذكر Showland Shaw، فإن أفضل رهان للمؤسسة المالية هو نوع من الرمز المادي الذي يضيف مكون فريد حاليا بشكل فعال لجميع المعاملات التي لا يمكن أن تكون معروفة (بسهولة) في وقت مبكر من قبل المهاجم الذي يعمل من نظام للخطر. حتى بعد ذلك، يجب أن تكون على دراية بحقيقة أنه إذا تم اختراق جهاز الكمبيوتر المستخدمين ويقوم بتسجيل الدخول مع رمز مميز آمن من هذه النقطة إلى الأمام حتى تنتهي الجلسة أن المهاجم مجاني لأداء أي إجراءات يكون للمستخدم إذنا به، ولكن على الأقل في هذه الحالة، من المرجح أن يلاحظ المستخدم النشاط الاحتيالي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top