
كشف الصور التي يُحتمل أن تستغل CVE-2022-44268
cve-2022-44268-detector هو برنامج بلغة Go يستهلك ملفات PNG ويبلّغ عما إذا كانت تبدو كصور خبيثة ناتجة عن استغلال CVE-2022-44268، وهي ثغرة في ImageMagick تتيح للمهاجمين قراءة محتويات ملفات عشوائية باستخدام صور مصمّمة خصيصًا.
لتثبيت cve-2022-44268-detector، استخدم go install:
$ go install github.com/jnschaeffer/cve-2022-44268-detector@latest
يرجى توخي الحذر عند التعامل مع بيانات غير موثوقة. يمكن للمهاجم صياغة chunk في PNG قد يحتوي على بيانات غير zlib (مثل سكربت شل، أو كود يستغل خللًا في سير عمل الكشف لديك). قد تؤدي كتابة كود مقدَّم من المهاجم بطريق الخطأ إلى طرفية أو شل إلى تنفيذ كود خبيث. يُنصح بشدة بتنفيذ الكاشف داخل جهاز افتراضي أو بيئة حوسبة معزولة للمساعدة في تخفيف مثل هذه الإخفاقات الأمنية.
cve-2022-44268-detector هو تطبيق سطر أوامر. يمكنك تشغيله على النحو التالي:
$ cve-2022-44268-detector -filename image.png
***POTENTIAL INDICATOR OF COMPROMISE*** - keyword: 'Raw profile type' | compressed: true | id: 0 | offset: 0x72 | len: 666
يمكن للمستخدمين اختياريًا إخراج محتويات كل chunk مُهرَّب إلى stdout عبر توفير الوسيط -print. يُرجى ملاحظة أن قيمة كل chunk غالبًا ما تكون بيانات ثنائية مضغوطة عبر zlib (أي غير قابلة للقراءة البشرية). يُنصح المستخدمون بشدة بتوجيه هذه البيانات إلى ملف.
ملاحظة: كن حذرًا جدًا عند استخدام -print. قد تحتوي ملفات PNG غير الموثوقة على بيانات قد تُفسَّر ككود قابل للتنفيذ إذا عُرضت على طرفية أو شل. يرجى اتخاذ تدابير احترازية مناسبة عند استخدام هذه الميزة.
يقبل الوسيط -print القيم التالية:
raw - كتابة قيمة الـ chunk كما هي إلى stdoutdecompress - فك ضغط قيمة الـ chunk قبل كتابتها إلى stdoutdecompress-hexdecode - فك ضغط قيمة الـ chunk وفك ترميزها السداسي عشر
قبل كتابتها إلى stdout. يبدو أن ImageMagick يقوم أولاً بالترميز السداسي عشر
ثم بضغط البيانات باستخدام ضغط zlib$ cve-2022-44268-detector -filename image.png -print raw > /tmp/out
***POTENTIAL INDICATOR OF COMPROMISE*** - keyword: 'Raw profile type' | compressed: true | id: 0 | offset: 0x72 | len: 666
$ hexdump -C /tmp/out