yara(1) General Commands Manual yara(1)

yara - یافتن فایل‌های منطبق با الگوها و قوانین نوشته‌شده در یک زبان با کاربرد خاص

yara [OPTION]... [NAMESPACE:]RULES_FILE... FILE | DIR | PID

دستور yara فایل داده‌شده، تمام فایل‌های موجود در دایرکتوری DIR یا فرایند مشخص‌شده با PID را برای یافتن تطابق با الگوها و قوانین ارائه‌شده در یک زبان با کاربرد خاص بررسی می‌کند. این قوانین از یک یا چند RULES_FILE خوانده می‌شوند.

گزینه‌های yara(1) عبارتند از:

مسیر فایلی شامل جدول کیفیت اتم (atom quality table).
فایل RULES_FILE شامل قوانینی است که از پیش با yarac کامپایل شده‌اند.
تنها تعداد تطابق‌ها را چاپ می‌کند.
تعریف یک متغیر خارجی. این گزینه می‌تواند چندین بار استفاده شود.
در نظر گرفتن هشدارها به عنوان خطا. در صورت استفادهٔ هم‌زمان با --no-warnings هیچ اثری ندارد.
افزایش سرعت بررسی با جستجوی تنها اولین رخداد از هر الگو.
تنها قوانین با نام identifier را چاپ کرده و بقیه را نادیده می‌گیرد. این گزینه می‌تواند چندین بار استفاده شود.
هنگام بررسی حافظهٔ فرایند، داده‌ها را در تکه‌هایی به اندازهٔ مشخص‌شده با size (بر حسب بایت) می‌خواند.
متوقف کردن بررسی پس از تطابق به تعداد number از قوانین.
تنظیم حداکثر تعداد رشته‌ها در هر قانون (پیش‌فرض=10000).
ارسال محتوای فایل به عنوان دادهٔ اضافی به ماژول. این گزینه می‌تواند چندین بار استفاده شود.
چاپ قوانینی که صدق نمی‌کنند (نقیض).
غیرفعال کردن هشدارها.
چاپ فراداده‌های (metadata) مرتبط با قانون.
چاپ داده‌های ماژول.
نمایش نام ماژول‌ها.
چاپ فضای نام (namespace) مرتبط با قانون.
چاپ آمار قوانین.
چاپ رشته‌های یافت‌شده در فایل.
چاپ طول رشته‌های یافت‌شده در فایل.
چاپ کلید xor رشته‌های منطبق‌شده.
چاپ برچسب‌های مرتبط با قانون.
بررسی بازگشتی فایل‌ها در دایرکتوری‌ها. پیوندهای نمادین (symlinks) دنبال می‌شوند.
بررسی فایل‌های فهرست‌شده در FILE، در هر خط یک مورد.
هنگام بررسی یک دایرکتوری، از فایل‌های بزرگ‌تر از size مشخص‌شده (بر حسب بایت) صرف‌نظر می‌کند.
تنظیم حداکثر اندازهٔ پشته به تعداد مشخص‌شده با slots.
چاپ هشدار در صورتی که قوانین شامل عبارات گریز (escape statements) مبهم باشند.
تنها قوانین با برچسب tag را چاپ کرده و بقیه را نادیده می‌گیرد. این گزینه می‌تواند چندین بار استفاده شود.
استفاده از تعداد مشخص‌شده با number رشته (thread) برای بررسی یک دایرکتوری.
متوقف کردن بررسی پس از گذشت مدت‌زمان مشخص‌شده به seconds (بر حسب ثانیه).
نمایش اطلاعات نسخه.

$ yara /foo/bar/rules .

اعمال قوانین موجود در /foo/bar/rules بر روی تمام فایل‌های دایرکتوری جاری. زیردایرکتوری‌ها بررسی نمی‌شوند.

$ yara -t Packer -t Compiler /foo/bar/rules bazfile

اعمال قوانین موجود در /foo/bar/rules بر روی bazfile. تنها قوانینی گزارش می‌شوند که دارای برچسب Packer یا Compiler باشند.

$ cat /foo/bar/rules | yara -r /foo

بررسی تمام فایل‌های درون دایرکتوری /foo و زیردایرکتوری‌های آن. قوانین از ورودی استاندارد خوانده می‌شوند.

$ yara -d mybool=true -d myint=5 -d mystring="my string"; /foo/bar/rules bazfile

سه متغیر خارجی mybool، myint و mystring را تعریف می‌کند.

$ yara -x cuckoo=cuckoo_json_report /foo/bar/rules bazfile

اعمال قوانین موجود در /foo/bar/rules بر روی bazfile هم‌زمان با ارسال محتوای cuckoo_json_report به ماژول cuckoo.

Victor M. Alvarez <plusvic@gmail.com>;<vmalvarez@virustotal.com>

22 سپتامبر 2008 Victor M. Alvarez