
وظيفة Azure بلغة C# مع مشغل HTTP تقوم بإنشاء مقتطفات PowerShell مُبهمة تعمل على تعطيل أو كسر AMSI للعملية الحالية.
في الأصل دالة Azure بلغة C# (تم نقلها لاحقًا إلى JS) مع مشغل HTTP يُنشئ مقاطع PowerShell مبهمة تعمل على كسر أو تعطيل AMSI للعملية الحالية.
يتم اختيار المقاطع عشوائيًا من مجموعة صغيرة من التقنيات/الاختلافات قبل إبهامها. يتم إبهام كل مقطع في وقت التشغيل/الطلب بحيث لا تشارك أي مخرجات مُولّدة نفس التوقيعات.
تفقّد https://amsi.fail/ للحصول على عرض توضيحي حي وعملي!
كما شرحته F-Secure في إحدى مقالاتهم الممتازة:
AMSI هي واجهة يمكن للتطبيقات أو الخدمات (بما في ذلك الجهات الخارجية) من خلالها فحص محتوى النص بحثًا عن الاستخدام الضار. إذا تم تسجيل توقيع في النص بواسطة مزود خدمة مكافحة البرامج الضارة لـ AMSI (Windows Defender افتراضيًا)، فسيتم حظره.
لوضع هذا في سياقه، ضع في اعتبارك الخطوات التالية التي يتخذها PowerShell للاندماج مع AMSI:
AmsiScanBuffer()، وهي الدالة المستخدمة بشكل أساسي لفحص محتوى النص.AmsiScanBuffer()، قبل تنفيذ أي إجراء.AmsiScanBuffer() من برنامج مكافحة الفيروسات المسجل لتحديد ما إذا تم إنشاء أي توقيعات.نظرًا لأن AMSI يعتمد على التحميل داخل العملية التي تنفذ النص الفعلي، فإن تقنيات كسر أو تصحيح وظائف محددة داخل amsi.dll معروفة جيدًا.