VulnCity

دفاع سایبری با ابزارهای Open Source

نویسنده: یاسین عابدینی · دسته: Blue-Team · تاریخ انتشار: ۱۴۰۵/۳/۱۷

ابزارهای Open Source در امنیت سایبری

۱. Endpoint Security — امنیت نقطه پایانی

OSQuery

فریم‌ورکی که سیستم‌عامل را به‌صورت یک پایگاه داده SQL نمایش می‌دهد. با کوئری SQL می‌توان وضعیت سیستم را بررسی کرد.

نصب


# Ubuntu/Debian
apt install osquery

# RHEL/CentOS
yum install osquery

# macOS
brew install osquery
      

کاربرد

مانیتورینگ real-time فرآیندها، کانکشن‌های شبکه، فایل‌های باز و کاربران لاگین‌کرده.

مزایا نسبت به CrowdStrike / Carbon Black

  • رایگان و متن‌باز
  • کوئری SQL ساده و قدرتمند
  • سبک و cross-platform

معایب

  • قابلیت response خودکار ندارد
  • نیاز به SIEM جداگانه برای آنالیز

منبع رسمی: osquery.io

Velociraptor

پلتفرم DFIR (Digital Forensics & Incident Response) برای جمع‌آوری آرتیفکت‌ها از endpoint در مقیاس بزرگ.

نصب


wget https://github.com/Velocidex/velociraptor/releases/latest/download/velociraptor-linux-amd64
chmod +x velociraptor-linux-amd64
./velociraptor-linux-amd64 config generate -i
./velociraptor-linux-amd64 --config server.config.yaml frontend -v
      

کاربرد

Threat Hunting، جمع‌آوری آرتیفکت، تریاژ سریع در IR.

مزایا نسبت به Tanium / Cortex XDR

  • کاملاً رایگان
  • VQL بسیار قدرتمند
  • دیپلوی سریع

معایب

  • یادگیری VQL نیاز به زمان دارد
  • UI نسبت به رقبای تجاری ساده‌تر است

منبع رسمی: velocidex.com

GRR — Google Rapid Response

فریم‌ورک IR توسعه‌یافته توسط Google برای آنالیز remote endpoint در مقیاس enterprise.

نصب


docker pull grrdocker/grr
docker run -e EXTERNAL_HOSTNAME="localhost" \
           -e ADMIN_PASSWORD="password" \
           -p 0.0.0.0:8000:8000 -p 0.0.0.0:8080:8080 \
           grrdocker/grr
      

کاربرد

آنالیز forensic از راه دور، هانتینگ در محیط‌های بزرگ.

مزایا و معایب

  • ✅ مقیاس‌پذیری بالا، پشتیبانی از Windows/Linux/macOS
  • ❌ نصب و نگهداری پیچیده، مستندات کمتر نسبت به Velociraptor

منبع رسمی: github.com/google/grr

۲. IOC Matching — تطبیق شاخص‌های تهدید

YARA

استاندارد صنعتی برای نوشتن rule جهت شناسایی malware بر اساس pattern فایل یا حافظه.

نصب


apt install yara
      

مثال Rule


rule Ransomware_Generic {
    strings:
        $s1 = "Your files have been encrypted"
        $s2 = ".locked" ascii
    condition:
        any of them
}
      

مزایا و معایب

  • ✅ انعطاف‌پذیری بالا، قابل سفارشی‌سازی
  • ❌ False positive بالا اگر rule خوب نوشته نشود

منبع رسمی: virustotal.github.io/yara

SIGMA

فرمت استانداردی برای نوشتن detection rule روی log که می‌توان آن را به Splunk، Elastic، QRadar و دیگران تبدیل کرد.

نصب


pip install sigma-cli
      

تبدیل Rule


sigma convert -t elastic -f kibana-ndjson rules/windows/process_creation/
      

مزایا و معایب

  • ✅ قابل حمل، community-driven، یک‌بار بنویس همه‌جا استفاده کن
  • ❌ تبدیل به برخی SIEMها ممکن است ۱۰۰٪ دقیق نباشد

منبع رسمی: github.com/SigmaHQ/sigma

Hayabusa

ابزار Fast Forensics نوشته‌شده با Rust برای آنالیز Windows Event Log با استفاده از SIGMA rules.

نصب و اجرا


wget https://github.com/Yamato-Security/hayabusa/releases/latest/download/hayabusa-linux-x64-musl.zip
unzip hayabusa-linux-x64-musl.zip
./hayabusa scan --directory /mnt/evtx_logs --output results.csv
      

مزایا و معایب

  • ✅ سرعت بالا (Rust)، یکپارچه با SIGMA، timeline generation
  • ❌ فقط Windows Event Log

منبع رسمی: github.com/Yamato-Security/hayabusa

Chainsaw

مشابه Hayabusa، نوشته‌شده با Rust برای آنالیز سریع Windows Event Log.


./chainsaw hunt evtx_logs/ --sigma sigma/ --mapping mappings/sigma-event-logs-all.yml
      

منبع رسمی: github.com/WithSecureLabs/chainsaw

۳. Log Investigation — تحلیل لاگ

Graylog

پلتفرم مدیریت لاگ متمرکز با UI قوی، alerting و داشبورد.

نصب (Docker Compose)


version: '3'
services:
  mongo:
    image: mongo:5.0
  opensearch:
    image: opensearchproject/opensearch:2.4.0
    environment:
      - discovery.type=single-node
  graylog:
    image: graylog/graylog:5.1
    environment:
      GRAYLOG_PASSWORD_SECRET: "somepasswordpepper"
      GRAYLOG_ROOT_PASSWORD_SHA2: "8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918"
    ports:
      - "9000:9000"
      - "12201:12201/udp"
      

مزایا و معایب

  • ✅ UI بهتر از ELK برای تیم‌های کوچک‌تر، رایگان تا حجم مشخص
  • ❌ به MongoDB و OpenSearch وابسته، سنگین

منبع رسمی: graylog.org

OpenSearch

Fork متن‌باز Elasticsearch توسط AWS پس از تغییر لایسنس Elastic.


docker run -p 9200:9200 -p 9600:9600 \
  -e "discovery.type=single-node" \
  opensearchproject/opensearch:latest
      

مزایا و معایب

  • ✅ رایگان، مقیاس‌پذیر، API سازگار با Elasticsearch
  • ❌ نیاز به تیم DevOps برای نگهداری

منبع رسمی: opensearch.org

Elasticsearch + Kibana (ELK Stack)

محبوب‌ترین stack برای log analytics. Elasticsearch برای ذخیره‌سازی، Kibana برای visualization.


docker network create elastic
docker run -d --name elasticsearch --network elastic \
  -e "discovery.type=single-node" \
  -e "xpack.security.enabled=false" \
  -p 9200:9200 elasticsearch:8.11.0

docker run -d --name kibana --network elastic \
  -e "ELASTICSEARCH_HOSTS=http://elasticsearch:9200" \
  -p 5601:5601 kibana:8.11.0
      

مزایا و معایب

  • ✅ اکوسیستم بزرگ، رایگان (نسخه Basic)
  • ❌ لایسنس SSPL، منابع زیاد مصرف می‌کند

منبع رسمی: elastic.co

Wazuh — SIEM + EDR یکپارچه

پلتفرم کامل SIEM/XDR متن‌باز با قابلیت agent-based روی endpoint.


curl -sO https://packages.wazuh.com/4.7/wazuh-install.sh
bash wazuh-install.sh -a
      

مزایا و معایب

  • ✅ SIEM + EDR در یک پلتفرم، رایگان، جایگزین خوب برای Splunk+CrowdStrike
  • ❌ نیاز به منابع سرور قابل توجه

منبع رسمی: wazuh.com

۴. Network Hunting — شکار تهدید در شبکه

Zeek

پلتفرم آنالیز ترافیک شبکه که لاگ‌های structured از ترافیک تولید می‌کند (DNS, HTTP, SSL و ...).


apt install zeek
zeek -i eth0 local.zeek
      

مزایا و معایب

  • ✅ لاگ ساختارمند، مقیاس‌پذیر، scripting قوی
  • ❌ real-time blocking ندارد، فقط visibility

منبع رسمی: zeek.org

Suricata

IDS/IPS/NSM با سرعت بالا که از rule مشابه Snort پشتیبانی می‌کند.


apt install suricata
suricata-update
suricata -i eth0 -c /etc/suricata/suricata.yaml
      

مزایا و معایب

  • ✅ multi-threading بومی، سریع‌تر از Snort، پشتیبانی از Lua
  • ❌ False positive زیاد اگر rule tune نشود

منبع رسمی: suricata.io

Arkime

پلتفرم capture و جستجوی full packet برای آنالیز ترافیک کامل.


wget https://github.com/arkime/arkime/releases/download/v4.3.1/arkime_4.3.1-1.ubuntu2204_amd64.deb
dpkg -i arkime_4.3.1-1.ubuntu2204_amd64.deb
/opt/arkime/bin/Configure

مزایا و معایب

  • ✅ مقیاس‌پذیر، integration با Elasticsearch
  • ❌ نیاز به فضای ذخیره‌سازی بسیار زیاد

منبع رسمی: arkime.com

۵. Threat Intelligence Enrichment

OpenCTI

پلتفرم مدیریت Threat Intelligence با پشتیبانی از STIX 2.1.


git clone https://github.com/OpenCTI-Platform/docker.git
cd docker && cp .env.sample .env
docker compose up -d
      

مزایا و معایب

  • ✅ رایگان، STIX native، گراف ارتباط بین IOC/TTPs
  • ❌ سنگین (نیاز به ElasticSearch + Redis + RabbitMQ)

منبع رسمی: opencti.io

MISP — Malware Information Sharing Platform

پلتفرم استاندارد صنعتی برای اشتراک‌گذاری IOC بین سازمان‌ها.


git clone https://github.com/MISP/MISP.git /var/www/MISP
cd /var/www/MISP
bash INSTALL/INSTALL.sh
      

مزایا و معایب

  • ✅ رایگان، community بزرگ، پشتیبانی از فرمت‌های زیاد
  • ❌ UI قدیمی، نصب پیچیده

منبع رسمی: misp-project.org

YETI

پلتفرم سازماندهی IOC و ارتباط بین آرتیفکت‌های تهدید.


git clone https://github.com/yeti-platform/yeti.git
cd yeti && pip install -r requirements.txt
docker compose up -d
      

مزایا و معایب

  • ✅ سبک‌تر از OpenCTI، API قوی
  • ❌ community کوچک‌تر

منبع رسمی: github.com/yeti-platform/yeti

TheHive — Case Management

پلتفرم مدیریت incident response که با MISP یکپارچه می‌شود.


docker compose up -d  # از repo رسمی
      

مزایا

  • ✅ جایگزین رایگان ServiceNow/Jira برای تیم SOC

منبع رسمی: thehive-project.org

۶. دسته‌های تکمیلی

Vulnerability Management

ابزارتوضیحجایگزینمنبع
OpenVAS / Greenbone اسکنر جامع آسیب‌پذیری Nessus openvas.org
Nuclei اسکنر سریع template-based Burp Suite Pro projectdiscovery.io
Trivy اسکن container/IaC Prisma Cloud trivy.dev

SAST / DAST — امنیت کد

ابزارتوضیحمنبع
Semgrep Static analysis چندزبانه semgrep.dev
Bandit Static analysis برای Python bandit.readthedocs.io
OWASP ZAP Dynamic web app testing zaproxy.org

سناریوی واقعی — مسلح‌سازی سازمان با Open Source SOC

سازمان فرضی: یک شرکت مالی (Fintech) با ۳۰۰ کارمند، ۵ سرور داخلی، ۱۵۰ ایستگاه کاری Windows، یک اپلیکیشن وب و یک محیط Docker/Kubernetes روی ابر. هدف: پیاده‌سازی یک SOC کامل با صفر هزینه لایسنس.

لایه اول — جمع‌آوری داده از Endpoint

ابزار: Wazuh Agent روی همه ۱۵۰ ایستگاه + ۵ سرور | ابزار کمکی: OSQuery برای کوئری on-demand

منابع مورد نیاز (سرور Wazuh Manager)

  • CPU: 8 Core
  • RAM: 16 GB
  • Disk: 500 GB SSD (برای نگهداری ۹۰ روز لاگ)
  • OS: Ubuntu 22.04 LTS

Wazuh agent روی هر endpoint نصب می‌شود و لاگ‌های سیستمی، تغییر فایل (FIM)، رویدادهای Windows Event Log و vulnerability scan را به سرور مرکزی می‌فرستد.

لایه دوم — مانیتورینگ شبکه

ابزار: Suricata (IDS/IPS) + Zeek (NSM) + Arkime (Full PCAP)

منابع مورد نیاز (سرور Network Sensor)

  • CPU: 8 Core (Suricata از multi-thread بهره می‌برد)
  • RAM: 32 GB (Arkime + Zeek + Suricata همزمان)
  • Disk: 4 TB HDD برای ذخیره PCAP (چرخشی ۳۰ روزه)
  • NIC: حداقل ۲ کارت شبکه (یکی برای capture، یکی برای management)

یک تپ یا SPAN port روی سوئیچ core کانفیگ می‌شود. ترافیک به sensor هدایت می‌شود.Suricata alert تولید کرده و به Wazuh/Graylog ارسال می‌کند. Zeek لاگ DNS/HTTP/TLS ساختارمند تولید می‌کند. Arkime آماده است تا در زمان حادثه از شبکه FPC بگیرد.

لایه سوم — SIEM و تحلیل مرکزی

ابزار: Graylog (لاگ‌های application) + Wazuh Dashboard (security events) + OpenSearch (backend مشترک)

منابع مورد نیاز (سرور SIEM)

  • CPU: 16 Core
  • RAM: 64 GB (OpenSearch به RAM زیاد نیاز دارد — heap حداقل 32 GB)
  • Disk: 2 TB NVMe SSD (hot data 30 روز) + 8 TB HDD (cold data)
  • OS: Ubuntu 22.04 LTS

همه لاگ‌ها (Wazuh، Zeek، Suricata، App logs) به OpenSearch وارد می‌شوند. Graylog داشبورد عملیاتی را فراهم می‌کند.SIGMA rules روی لاگ‌های Windows Event Log اجرا می‌شوند.

لایه چهارم — Threat Intelligence

ابزار: MISP (دریافت feed) + OpenCTI (تحلیل و گراف)

منابع مورد نیاز (سرور TI)

  • CPU: 4 Core
  • RAM: 16 GB (OpenCTI با ElasticSearch، Redis و RabbitMQ)
  • Disk: 200 GB SSD

MISP به صورت خودکار از منابع رایگان مثل AlienVault OTX، Abuse.ch و CIRCL feed دریافت می‌کند. IOCها با لاگ‌های SIEM match می‌شوند.OpenCTI ارتباط بین IOC، بازیگران تهدید و TTPs را نمایش می‌دهد.

لایه پنجم — Incident Response و Case Management

ابزار: TheHive (case management) + Velociraptor (live response)

منابع مورد نیاز (سرور IR)

  • CPU: 4 Core
  • RAM: 8 GB
  • Disk: 100 GB SSD

وقتی Wazuh یا SIEM یک alert ایجاد می‌کند، به صورت خودکار یک case در TheHive باز می‌شود. تحلیل‌گر با Velociraptor به endpoint مربوطه وصل شده و artifact جمع‌آوری می‌کند. YARA rules روی حافظه و فایل‌ها اجرا می‌شوند. Hayabusa برای تریاژ سریع Windows Event Log استفاده می‌شود.

لایه ششم — Deception و Early Warning

ابزار: OpenCanary روی شبکه داخلی

منابع مورد نیاز

  • CPU: 1 Core (ماشین مجازی سبک)
  • RAM: 1 GB
  • Disk: 20 GB

چندین honeypot با سرویس‌های جعلی (SMB، RDP، SSH، HTTP) در VLAN داخلی راه‌اندازی می‌شود. هر اتصال به honeypot یک alert فوری در SIEM ایجاد می‌کند — چون هیچ کاربر قانونی نباید به این سرویس‌ها وصل شود.

خلاصه منابع کل زیرساخت

سرورCPURAMDiskنقش
Wazuh Manager8 Core16 GB500 GB SSDEDR / SIEM Agent
Network Sensor8 Core32 GB4 TB HDDZeek + Suricata + Arkime
SIEM (OpenSearch)16 Core64 GB2TB NVMe + 8TB HDDلاگ مرکزی
TI Platform4 Core16 GB200 GB SSDMISP + OpenCTI
IR Platform4 Core8 GB100 GB SSDTheHive + Velociraptor
Honeypot1 Core1 GB20 GBOpenCanary

جمع کل تقریبی: 41 Core CPU | 137 GB RAM | ~15 TB Storage

این زیرساخت می‌تواند جایگزین ترکیبی از Splunk Enterprise + CrowdStrike Falcon + Recorded Future شود که هزینه سالانه آن برای یک سازمان ۳۰۰ نفره می‌تواند بیش از 200,000 دلار باشد، در حالی که هزینه این stack متن‌باز تنها هزینه سرور و نیروی انسانی است.