دفاع سایبری با ابزارهای 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 |
Deception / Honeypot
| ابزار | توضیح | منبع |
|---|---|---|
| OpenCanary | Honeypot سبک و قابل تنظیم | github.com/thinkst/opencanary |
| T-Pot | پلتفرم جامع honeypot | github.com/telekom-security/tpotce |
سناریوی واقعی — مسلحسازی سازمان با 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 ایجاد میکند — چون هیچ کاربر قانونی نباید به این سرویسها وصل شود.
خلاصه منابع کل زیرساخت
| سرور | CPU | RAM | Disk | نقش |
|---|---|---|---|---|
| Wazuh Manager | 8 Core | 16 GB | 500 GB SSD | EDR / SIEM Agent |
| Network Sensor | 8 Core | 32 GB | 4 TB HDD | Zeek + Suricata + Arkime |
| SIEM (OpenSearch) | 16 Core | 64 GB | 2TB NVMe + 8TB HDD | لاگ مرکزی |
| TI Platform | 4 Core | 16 GB | 200 GB SSD | MISP + OpenCTI |
| IR Platform | 4 Core | 8 GB | 100 GB SSD | TheHive + Velociraptor |
| Honeypot | 1 Core | 1 GB | 20 GB | OpenCanary |
جمع کل تقریبی: 41 Core CPU | 137 GB RAM | ~15 TB Storage
این زیرساخت میتواند جایگزین ترکیبی از Splunk Enterprise + CrowdStrike Falcon + Recorded Future شود که هزینه سالانه آن برای یک سازمان ۳۰۰ نفره میتواند بیش از 200,000 دلار باشد، در حالی که هزینه این stack متنباز تنها هزینه سرور و نیروی انسانی است.