تکنولوژی

Sigma - Generic Signature Format for SIEM Systems چیست ؟

امتیاز کاربران

ستاره فعالستاره فعالستاره فعالستاره فعالستاره غیر فعال
 

سلام معرفی پروژه Sigma Rule ابزار SIGMA یکی از زبان های مشترک سیستم های امنیتی مانند EDR ها و SIEM ها میباشد. به واسطه این فرمت ما توانایی این را داریم که قوانینی را برای شناسایی تهدیدات ایجاد کنیم.

پروژه Sigma یک استاندارد عمومی برای توصیف قوانین (قاعده‌ها) امضایی است که برای سیستم‌های SIEM (سامانه مدیریت رویداد و اطلاعات امنیتی) استفاده می‌شود. این استاندارد به صورت خاص برای تعریف الگوهای تشخیص حوادث و الگوهای امنیتی در قالبی استاندارد و چندان خودگردان طراحی شده است.

Sigma این امکان را فراهم می‌کند تا قوانین تشخیص حوادث در قالب یک فرمت یکپارچه و قابل فهم توسط ماشین (Machine Readable) تعریف شوند. این به افراد حوزه امنیت اجازه می‌دهد که الگوهای تشخیص حوادث را به سرعت و به راحتی در محیط SIEM خود پیاده‌سازی کنند.

با استفاده از Sigma، افراد می‌توانند قوانین تشخیص حوادث را بر اساس الگوهای مشخص و قابل خواندن توسعه دهند و از آنها در جلب و تحلیل رویدادهای امنیتی بهره‌مند شوند. این استاندارد توسط جامعه امنیت اطلاعات پشتیبانی می‌شود و در جهت ایجاد یک رویکرد مشترک برای تعریف الگوهای امنیتی در SIEM ها تلاش می‌کند.

 

برای نوشتن قوانین (قاعده‌ها) در فرمت Sigma، می‌توانید از یک زبان خاص به نام Sigma Rule Language استفاده کنید. این زبان به شما این امکان را می‌دهد که الگوهای تشخیص حوادث خود را به شکلی متونی و قابل فهم برای SIEM ها بنویسید. در زیر چند نکته مهم برای نوشتن قوانین Sigma آورده شده است:

1. منبع داده (Log Source): در قوانین Sigma، شما باید منبع داده مورد نظر خود را مشخص کنید. این منبع ممکن است یک لاگ خاص، یک ایونت خاص یا دیگر منابع امنیتی باشد که قصد دارید قاعده را بر اساس آن اعمال کنید.

2. قاعده الگو: شما باید الگویی برای شناسایی الگوهای مورد نظر تعریف کنید. این الگو می‌تواند شامل الگوهای رشته‌ای (Regex)، شناسه‌ها، ترکیب‌های اطلاعات مختلف و موارد دیگر باشد.

3. **شرایط (Conditions): مشخص کنید که زمانی که یک الگو تشخیص داده شد، چه شرایطی باید برقرار باشند تا قاعده اعمال شود. این شرایط می‌توانند شامل فیلترهای زمانی، محدودیت‌های آدرس IP و سایر شرایط باشند.

4. عملیات (Operations):مشخص کنید که وقتی یک قاعده اعمال می‌شود، چه اقداماتی انجام شود. این می‌تواند شامل ارسال هشدار، ثبت لاگ، یا سایر اقدامات مورد نیاز باشد.

5. تنظیمات (Options): قرار دهید تنظیمات مربوط به اجرای قاعده را مشخص کنید. این می‌تواند شامل تنظیماتی مانند حداکثر تعداد ارسال هشدارها، نحوه ارتباط با سایر قوانین، و دیگر تنظیمات باشد.

با استفاده از این نکات و با مطالعه مستندات Sigma Rule Language، می‌توانید قوانین Sigma خود را بر اساس نیازهای امنیتی خود تعریف کنید و آن‌ها را در SIEM خود پیاده‌سازی کنید.

البته کدهای Sigma به صورت پیچیده‌تر از یک توضیح کلی می‌باشد و نیازمند مطالعه دقیق توضیحات مربوطه است. اما برای نمونه، یک قاعده ساده با الگوی تشخیص حوادث بر اساس رخدادهای ورود به سیستم (Logon Events) می‌تواند به صورت زیر باشد:

```yaml
title: Detect Successful Logon to Windows
id: 12345678-1234-5678-1234-567812345678
description: Detects a successful logon to a Windows system
author: Your Name
logsource:
    category: authentication
detection:
    selection:
        EventID: 4624
    condition: "'Logon Type' == 2"
    fields:
        - TargetUserName
        - TargetDomainName
    falsepositives:
        - "Rare user login scenarios"
    level: critical
    tags:
        - attack.authentication
    references:
        - https://example.com/12345
    status: experimental
```

این قاعده به طور خلاصه یک الگو برای تشخیص ورود موفق به سیستم‌های ویندوز ارائه می‌دهد. الگو بر اساس شناسه رویداد 4624 (مربوط به ورود موفق)، نوع ورودی (Logon Type) و نام کاربری هدف (TargetUserName) ایجاد شده است.

یک مثال دیگر ممکن است به شکل زیر باشد:

```yaml
title: Detect Brute Force SSH Login Attempts
id: 87654321-4321-8765-4321-987654321098
description: Detects multiple failed SSH login attempts within a short time
author: Your Name
logsource:
    category: authentication
detection:
    selection:
        event_id: 4625
    condition: "'Failure Reason' == 'Unknown user name or bad password'"
    timeframe: last 5 minutes
    threshold: 5
    fields:
        - TargetUserName
        - IpAddress
    level: high
    tags:
        - attack.brute_force
    falsepositives:
        - "Legitimate user mistypes"
    references:
        - https://example.com/67890
    status: stable
```

در این مثال، قاعده برای تشخیص تلاش‌های ورود ناموفق به سیستم از طریق SSH ارائه شده است. الگو بر اساس شناسه رویداد 4625 (ورود ناموفق)، دلیل شکست (Failure Reason) و تعداد تلاش‌ها در یک بازه زمانی کوتاه تعیین شده است.

🔗لینک پروژه : 
https://github.com/SigmaHQ/sigma

🔗لینک اموزش کامل نصب راه اندازی sigma rule :
https://hellodigi.ir/component/tags/tag/mitre-att-ck.html

 


 

 

تمام حقوق سایت برای سلام دیجی و نويسندگان آن محفوظ می باشد