الاستعمالات الكاملة للأداة ClamAV sigtool

سبق أن تكلمنا عن إضافةتعريفات فيروس إلى قاعدة بيانات البرنامج ClamAV. كذلك تكلمنا عن كيفية ذلك بالنسبة إلى بعض أنواع الملفات الخاصة وعن حذف تعريف من قاعدة بيانات البرنامج.

وأثناء حديثنا عن ثلاث المواضيع السابقة قمنا كثيراً باستخدام الأداة sigtool التي تيسر العمل كثيراً.

سأقوم هنا بشرح الوظائف السابقة مرتبة ومختصرة وأتكلم عن بعض الوظائف والاستخدامات لهذه الأداة والتي لم نتكلم عنها بعد.

خيارات الأداة:

1
2
3
4
-h, --help للمساعدة.
-V, --version لمعرفة إصدار الأداة.
--quiet عدم عرض شيء على جهاز الخرج، فقط الأخطاء
--stdout طباعة جميع الخرج على جهاز الخرج القياسي (الشاشة)

خيارات كتابة التعريفات:

--hex-dump تحويل بيانات الدخل إلى رماز مكتوب بنظام العد الستة عشري.

مثال:

1
2
3
4
5
$sigtool --hex-dump
aborazmeh
61626f72617a6d65680a
$sigtool --hex-dump <test.exe >test.hex
--md5 [FILES] تحويل بيانات الدخل إلى رماز MD5، أو توليد رماز MD5 للملف المعطى

مثال:

1
2
3
4
5
6
$sigtool --md5 <test.exe
a7a383fc897691d856a0e1ae3a35fd61
$sigtool --md5 test.exe
a7a383fc897691d856a0e1ae3a35fd61:4969:test.exe
$sigtool --md5 test.exe >test.hdb
--mdb [FILES] توليد تعريفات

مثال:

1
2
3
4
5
$sigtool --mdb <test.exe
a7a383fc897691d856a0e1ae3a35fd61
$sigtool --mdb test.exe
4969:a7a383fc897691d856a0e1ae3a35fd61:test.exe
$sigtool --mdb test.exe >test.mdb

التعامل مع بعض الملفات الخاصة:

--html-normalise FILE, --html-normalise=FILE تعديل ملفات HTML إلى صيغتها البدائية، وإنشاء الملفات المعدلة في المجلد الحالي.

مثال:

1
2
$sigtool --html-normalise index.html
--utf16-decode FILE, --utf16-decode=FILE فك ترميز ملف مرمز بـUTF16 وإنشاء ملف ASCII.

مثال:

1
2
$sigtool ----utf16-decode ascii.txt
--vba FILE, --vba=FILE لاستخراج ماكروات لغة VBA من مستندات Mircosoft Office.

مثال:

1
2
$sigtool --vba test.doc
--vba-hex FILE, --vba-hex=FILE لاستخراج ماكروات لغة VBA من مستندات Microsoft Office ثم عرض قيمة رمازه بنظام العد الستة عشري.

مثال:

$sigtool --vba-hex test.doc

التعامل مع ملفات قاعدة البيانات:

-i, --info طباعة معلومات عن قاعدة البيانات من نوع CVD والتحقق من رماز الـMD5.

مثال:

1
2
3
4
5
6
7
8
9
10
11
12
sigtool -i main.cvd
ile: main.cvd
uild time: 14 May 2009 10:28 -0400
ersion: 51
ignatures: 545035
unctionality level: 42
uilder: sven
D5: 4e3fb7ff64c71cd4b79147ac30a382d3
igital signature: RwTRRq4AMwgXuveEwXHfEGxHWZcuM/lzqJ17PesQxv7VHZozmONMjW63o3xSSYcPn9XKk3JXDcYlQ0RnDuUPih7td3szP4GnRAIhWWwPULzLi8JuZJQmi0bh2lN63vxfHkYQfOOUueogexH4CTz1Pst1x6bPyMTInY/WfzzoJaf
erification OK.
--server لإخبار الأداة عن عنوان خدمات التعريفات. ضروري لفريق البرنامج أو لمرسلي الفيروسات بكثرة أو لمن يريد تجميع قاعدة البيانات وهي مفككة.
-u FILE, --unpack FILE تفكيك قاعدة البيانات إلى ملفاتها الأساسية:

مثال:

$sigtool -u main.cvd

وهذه الملفات هي:

1
2
**COPYING:رخصة الاستخدام وهي هنا GPL2
**main.info: معلومات عن إصدار قاعدة البيانات ورمازات MD5 للملفات الأخرى

مثال:

1
2
3
4
5
6
7
ClamAV-VDB:14 May 2009 10-28 -0400:51:545035:42:X:X:sven:1242311325
main.db:f54fe28d3b23b1ee14a6f1b4f69d9bfa
main.hdb:a400e66195b1b25def52e3e71fe6777c
main.mdb:6a06dd08ac7ee955255c82af942e8dc5
main.ndb:4a30b22cf1cc38dd6fb26a104e4f7721
main.zmd:a3299e73c4103607ec4df777db9a6f07
main.fp:2eea3ced8da09e0550c325d50d0612c1
  • main.db: تعريفات مكتوبة بواسطة رمازات نظام العد الستة عشري بالطريقة البدائية.
  • main.hdb: تعريفات متكوبة بواسطة رمازات MD5.
  • main.mdb: تعريفات مكتوبة بواسطة رمازات MD5 المولدة عن طريق --mdb
  • main.ndb: تعريفات مكتوبة بواسطة رمازات نظام العد الستة عشري بالطريقة الموسعة.
  • main.fp: قائمة الملفات التي سيتجنبها البرنامج أثناء البحث
  • main.zmd: الملفات التي تنتشر بواسطة ملفات ZIP مشفرة والتي في اسمها اللاحقة: -zippwd
1
2
3
--unpack-current
Unpack a local CVD file (main or daily) to current directory.
-b, --build لتجميع قاعدة البيانات CVD من ملفاتها الأساسية (تحتاج إلى الوسيط --server)

مثال:

$sigtool --server database.clamav.net -b main.cvd

يجب توفر الملفات التي ذكرتها قبل قليل (التي نتجت عن فك main.cvd مثلاً)، أو زيادة عليها ما ذكرته في المقالات السابقة.

في ويندوز، وفي حال وجود أي خطأ سيقوم البرنامج بإنشاء ملف ثنائي Binary باسم sigtool.exe.dmp يمكنك إيصاله لفريق العمل لحل المشكلة.

-d OLD NEW, --diff=OLD NEW إنشاء ملف يبين الاختلافات بين ملفي CVD أو مجلدين يحويات ملفات CVD

مثال:

$sigtool -d o_main.cvd main.cvd > update_50_51.cdiff

يجب أن تكون قاعدة البيانات القديمة أقدم من الإصدار الحالي (الإصدار الحالي 51)

يستعمل هذا الملف لعمل تحديث لقاعدة بيانات أخرى كما سيأتي.

-r FILE, --run-cdiff=FILE

عمل تحديث لقاعدة بيانات مفكوكة عن طريق سكربت تحديث.

مثال:

$sigtool -r update.script

لاحقة الملف يجب أن تكون .script/.cdiff

-r FILE, --verify-cdiff=FILE

التحقق من ملف .cdiff

-l, --list-sigs لسرد أسماء التعريفات

مثال:

$sigtool -l main.cvd