📦 فایل کامل README.md — APZ Manager
<div align="center">
# 🛡️ APZ Manager
### پلتفرم جامع تحلیل امنیتی APK
**ترکیب تحلیل ایستا، اعتبارسنجی چندمنبعی، YARA، MITRE ATT&CK، فیوژن ریسک، AI محلی، Kubernetes، GitOps و Observability**
[](LICENSE)
[](https://python.org)
[](https://docker.com)
[](https://kubernetes.io)
[](VERSION)
[](#-نصب-و-راهاندازی)
[معرفی](#-معرفی) • [ویژگیها](#-ویژگیهای-اصلی) • [نصب](#-نصب-و-راهاندازی) • [استفاده](#-نحوهی-استفاده) • [معماری](#-معماری-و-زنجیرهی-apz) • [مستندات](#-مستندات-کامل)
</div>
---
## 📋 فهرست مطالب
- [معرفی](#-معرفی)
- [ویژگیهای اصلی](#-ویژگیهای-اصلی)
- [معماری و زنجیرهی APZ](#-معماری-و-زنجیرهی-apz)
- [پیشنیازها](#-پیشنیازها)
- [نصب و راهاندازی](#-نصب-و-راهاندازی)
- [نصب روی PC / Server](#نصب-روی-pc--server)
- [نصب روی Android (Termux)](#نصب-روی-android-termux)
- [نصب با Docker](#نصب-با-docker)
- [نصب با Docker + GPU (AI محلی)](#نصب-با-docker--gpu-ai-محلی)
- [نصب روی Kubernetes](#نصب-روی-kubernetes)
- [Provision با Terraform](#provision-با-terraform)
- [نحوهی استفاده](#-نحوهی-استفاده)
- [حالت CLI](#a-حالت-cli)
- [حالت GUI](#b-حالت-gui)
- [RESTful API](#c-restful-api)
- [Kubernetes / GitOps](#d-kubernetes--gitops)
- [پکیجهای تکمیلی](#-پکیجهای-تکمیلی)
- [AIOps – تشخیص ناهنجاری](#1-aiops--تشخیص-ناهنجاری)
- [ML Training – آموزش مدل اختصاصی](#2-ml-training--آموزش-مدل-اختصاصی)
- [Forensics – جرمشناسی خودکار](#3-forensics--جرمشناسی-خودکار)
- [Compliance – ISO 27001 / SOC 2](#4-compliance--iso-27001--soc-2-as-code)
- [Red-Team – تست نفوذ خودکار](#5-red-team--تست-نفوذ-خودکار)
- [Cost – Kubecost + FinOps](#6-cost--kubecost--finops)
- [Chaos – Chaos Mesh](#7-chaos--chaos-mesh)
- [SBOM – Syft + Grype](#8-sbom--syft--grype)
- [Secrets – Vault + ESO](#9-secrets--vault--external-secrets)
- [OnCall – PagerDuty + Opsgenie](#10-oncall--pagerduty--opsgenie)
- [ArgoCD – GitOps](#11-argocd--gitops)
- [Policy – OPA / Gatekeeper](#12-policy--opa--gatekeeper)
- [Metrics – Prometheus + Grafana](#13-metrics--prometheus--grafana)
- [Backup – CronJob + Velero](#14-backup--cronjob--velero)
- [ساختار پروژه](#-ساختار-پروژه)
- [پیکربندی](#-پیکربندی)
- [نمونهی خروجی](#-نمونهی-خروجی)
- [مستندات کامل](#-مستندات-کامل)
- [نکات امنیتی](#-نکات-امنیتی-مهم)
- [عملکرد و مقیاس](#-عملکرد-و-مقیاس)
- [عیبیابی](#-عیبیابی-سریع)
- [مشارکت](#-مشارکت)
- [مجوز](#-مجوز)
- [ارتباط با تیم](#-ارتباط-با-تیم)
- [قدردانی](#-قدردانی)
---
## 🔰 معرفی
**APZ Manager** یک پلتفرم جامع، ماژولار و متنباز برای **تحلیل امنیتی APK** است که بهصورت **آفلاین** و **بدون نیاز به Android SDK** کار میکند. این ابزار با ترکیب:
- تحلیل ایستای پیشرفته
- اعتبارسنجی چندمنبعی (VirusTotal، Hybrid Analysis، MetaDefender)
- موتور YARA با قوانین سفارشی
- نگاشت به MITRE ATT&CK
- موتور فیوژن ریسک قابل توضیح (XAI)
- شبیهسازی رفتار پویا (Sandbox)
- **قابلیت اجرا روی Android، Docker، Kubernetes و Clusterهای Cloud**
- **AI محلی با Ollama (بدون ارسال داده به بیرون)**
- **Observability کامل (Metrics + Logs + Traces)**
- **GitOps، Policy as Code، Compliance as Code**
یک **گزارش امنیتی جامع، قابل اعتماد و مقیاسپذیر** ارائه میدهد.
### 🎯 چرا APZ Manager؟
| چالش | راهحل APZ |
|---|---|
| دادههای حساس را نمیتوان به سرویسهای ابری فرستاد | **AI محلی با Ollama** – هیچ دادهای خارج نمیشود |
| تحلیل دستهای APKها زمانبر است | **پردازش موازی + Queue** با Redis |
| نیاز به استقرار روی cloud/on-prem | **Docker + K8s + Terraform** |
| Compliance و Audit | **ISO 27001 / SOC 2 as Code** |
| مقیاسپذیری و پایداری | **ArgoCD + HPA + Chaos Engineering** |
| تحلیل فوری روی دستگاه | **اجرا روی Android با Termux** |
---
## ✨ ویژگیهای اصلی
| ویژگی | توضیح |
|---|---|
| 🔍 **تحلیل ایستای پیشرفته** | استخراج رشتههای مشکوک، کتابخانههای native، فایلهای DEX، ABI، حجم و entropy |
| 📄 **دیکودر AndroidManifest** | با `androguard` – مجوزها، فعالیتها، سرویسها، receiverها و کامپوننتهای exported |
| 🧠 **موتور فیوژن ریسک ۲.۰** | ترکیب ۷ دسته شواهد با وزندهی هوشمند و خروجی قابل توضیح (XAI) |
| 🌐 **اعتبارسنجی چندمنبعی** | VirusTotal، Hybrid Analysis، MetaDefender Cloud، IOC محلی |
| 🐍 **اسکنر YARA** | قوانین داخلی + قوانین سفارشی `.yar` با پشتیبانی از meta-data |
| 🎯 **نگاشت MITRE ATT&CK** | اتصال یافتهها به تکنیکهای شناختهشده |
| 📊 **گزارشدهی حرفهای** | JSON، HTML (قابل چاپ)، PDF (با weasyprint) |
| 🖥️ **رابط گرافیکی (GUI)** | محیط Tkinter با درختواره، Progress Bar و دکمههای عملیاتی |
| ⌨️ **CLI کامل** | اجرا بدون رابط برای اتوماسیون و CI/CD |
| 🗄️ **پایگاه داده SQLite** | ذخیرهسازی تاریخچه، Reputation و IOCها |
| 🌐 **RESTful API** | سرور Flask برای یکپارچگی با SIEM/SOAR |
| 🧩 **Orchestrator** | مدیریت زنجیره، پردازش همزمان، خلاصههای آماری |
| 🧪 **Sandbox (اختیاری)** | شبیهسازی رفتار بدون اجرای واقعی کد |
| 🤖 **AI محلی (Ollama)** | خلاصه، توضیح ریسک، توصیهها، طبقهبندی family |
| 📱 **اجرا روی Android** | با Termux – نصب یکدستوری با `make install` |
| 🐳 **Docker + GPU** | ایمیجهای slim / main / gpu / aiops / ml-training / redteam |
| ☸️ **Kubernetes Native** | Manifestهای کامل + HPA + PDB + NetworkPolicy |
| 🚀 **GitOps با ArgoCD** | ApplicationSet برای dev/staging/prod |
| 🔐 **Secrets Management** | Vault + External Secrets Operator |
| 📈 **Observability کامل** | Prometheus + Grafana + Loki + AIOps |
| 💰 **FinOps** | Kubecost + گزارش هزینه به تفکیک namespace |
| 🧪 **Chaos Engineering** | Chaos Mesh با ۱۰ experiment آماده |
| 📜 **Compliance as Code** | Conftest + ISO 27001 + SOC 2 |
| 🕵️ **Forensics** | Volatility + Velero + Memory Dump خودکار |
| 🔴 **Self Red-Team** | ۸ ماژول تست نفوذ خودکار روی خود APZ |
---
## 🏗️ معماری و زنجیرهی APZ
┌──────────────────────────────────────────────────────────────────────┐ │ APZ Manager Stack │ ├──────────────────────────────────────────────────────────────────────┤ │ │ │ ╔═══════════════ Entrypoints ═══════════════╗ │ │ ║ CLI │ GUI │ REST API │ K8s ║ │ │ ╚══════════════╤════════════════════════════╝ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ APZ Orchestrator │ │ │ └────────────────────┬────────────────────────────────┘ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ تحلیل ایستا (androguard + strings) │ │ │ └────────────────────┬────────────────────────────────┘ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ اعتبارسنجی چندمنبعی (Reputation) │ │ │ │ VT | HA | MD | IOC Local │ │ │ └────────────────────┬────────────────────────────────┘ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ Threat Platform (YARA + IOC + MITRE) │ │ │ └────────────────────┬────────────────────────────────┘ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ Risk Fusion Engine 2.0 (XAI) │ │ │ │ 7 categories × smart weighting │ │ │ └────────────────────┬────────────────────────────────┘ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ AI Enrichment (Ollama) │ │ │ │ Summary | Risk Explain | Family | Recommends │ │ │ └────────────────────┬────────────────────────────────┘ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ Database (SQLite) + Report (JSON/HTML/PDF) │ │ │ └─────────────────────────────────────────────────────┘ │ │ │ └──────────────────────────────────────────────────────────────────────┘
### 🧩 معماری پلتفرمی (K8s + Observability + AIOps)
┌──────────────────────────────────────────────────────────────────────┐ │ Kubernetes Cluster │ ├──────────────────────────────────────────────────────────────────────┤ │ │ │ GitHub ──► ArgoCD ──► [apz-dev, apz-staging, apz-prod] │ │ │ │ │ ┌────────────────────────▼────────────────────────────┐ │ │ │ apz namespace │ │ │ │ API • Worker • Ollama • Redis • Metrics Exporter │ │ │ └────────────────────────┬────────────────────────────┘ │ │ │ │ │ ┌────────────────────────▼────────────────────────────┐ │ │ │ Observability Layer │ │ │ │ Prometheus ──► Alertmanager ──► OnCall │ │ │ │ │ │ │ │ │ │ ▼ ▼ │ │ │ │ Grafana PagerDuty/Opsgenie/Slack │ │ │ │ │ │ │ │ │ └─► Dashboards: Overview, Security, Cost, AIOps│ │ │ └─────────────────────────────────────────────────────┘ │ │ │ │ ┌────────────┐ ┌────────────┐ ┌──────────────┐ │ │ │ Kubecost │ │ Chaos Mesh │ │ Gatekeeper │ │ │ │ (FinOps) │ │ (Chaos) │ │ (Policy) │ │ │ └────────────┘ └────────────┘ └──────────────┘ │ │ │ │ ┌────────────┐ ┌────────────┐ ┌──────────────┐ │ │ │ Vault │ │ Velero │ │ Syft + │ │ │ │ + ESO │ │ (Backup) │ │ Grype │ │ │ └────────────┘ └────────────┘ └──────────────┘ │ │ │ │ ┌────────────┐ ┌────────────┐ ┌──────────────┐ │ │ │ AIOps │ │ ML Train │ │ Forensics │ │ │ │ Prophet/L │ │ (GPU) │ │ (Volatility) │ │ │ └────────────┘ └────────────┘ └──────────────┘ │ │ │ └──────────────────────────────────────────────────────────────────────┘
---
## 📋 پیشنیازها
### عمومی
- **Python 3.8+** (توصیه: 3.11+)
- **اتصال اینترنت** (برای دانلود کتابخانهها)
- **کلیدهای API** (اختیاری): VirusTotal، Hybrid Analysis، MetaDefender، OpenAI
### برای Android (Termux)
- **Termux** از [F-Droid](https://f-droid.org/packages/com.termux/)
- ~2 GB حافظهی آزاد
- Android 7+
### برای Docker
- **Docker 24+**
- **Docker Compose 2.20+**
- (برای GPU): **NVIDIA Driver 535+** + **nvidia-container-toolkit**
### برای Kubernetes
- **Kubernetes 1.27+**
- **kubectl 1.27+**
- **Helm 3.13+**
- (اختیاری) **ArgoCD 2.10+**
---
## ⚙️ نصب و راهاندازی
### نصب روی PC / Server
```bash
# 1) کلون
git clone https://github.com/your-org/apz-manager.git
cd apz-manager
# 2) محیط مجازی
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
# 3) نصب وابستگیها
pip install -r requirements.txt
# 4) تنظیم کلیدهای API (اختیاری)
cp .env.android.example .env
nano .env
نصب روی Android (Termux)
# 1) نصب پیشنیازها
pkg install -y python git make
git clone https://github.com/your-org/apz-manager.git
cd apz-manager
# 2) نصب کامل با یک دستور
make install
# 3) دسترسی به حافظه
make storage
# 4) تحلیل APK
make run APK=/sdcard/Download/app.apkراهنمای کامل: docs/ANDROID.md
نصب با Docker
# 1) ساخت فایلهای Docker
bash docker_setup.sh gen
# 2) Build و اجرا
bash docker_setup.sh build
bash docker_setup.sh run
# 3) API روی http://localhost:5000
curl http://localhost:5000/statsنصب با Docker + GPU (AI محلی)
# 1) پیشنیاز: nvidia-container-toolkit
sudo apt install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
# 2) راهاندازی کامل
bash setup_gpu.sh
# 3) سرویسها:
# - Ollama: http://localhost:11434
# - APZ API: http://localhost:5000
# - Web UI: http://localhost:3000نصب روی Kubernetes
# 1) نصب APZ
bash k8s_setup.sh apply
# 2) اجرای ArgoCD (GitOps)
bash argocd/argocd_setup.sh bootstrap
# 3) نصب Policyها (Gatekeeper)
bash policy/policy_setup.sh bootstrap
# 4) نصب Observability
bash metrics/metrics_setup.sh apply
bash cost/cost_setup.sh install
# 5) نصب Secrets
bash secrets/secrets_setup.sh install
# 6) نصب OnCall
bash oncall/oncall_setup.sh applyProvision با Terraform
# 1) تنظیم متغیرها
cd terraform
cp terraform.tfvars.example terraform.tfvars
nano terraform.tfvars
# 2) ساخت زیرساخت
bash terraform_setup.sh apply
# 3) اتصال به سرور
bash terraform_setup.sh ssh🚀 نحوهی استفاده
A) حالت CLI
# --- تحلیل یک فایل ---
python apz_manager.py --file malware.apk --output result.json --db
# --- تحلیل دستهای ---
echo "/samples/a.apk" > list.txt
echo "/samples/b.apk" >> list.txt
python apz_manager.py --batch list.txt --output batch.json
# --- اسکن پوشهای ---
./scan.sh --dir /samples --once
# --- مانیتور دائمی ---
./scan.sh --watch /samples
# --- ارسال به API بهجای تحلیل محلی ---
./scan.sh --dir /samples --api http://apz:5000
# --- AI Enrichment روی گزارش ---
python ai_analyzer.py --report result.json --mode allB) حالت GUI
python apz_manager.py· دکمهی «انتخاب و تحلیل APK» را بزنید · پیشرفت را در Progress Bar ببینید · یافتهها در درختواره نمایش داده میشوند · دکمههای ذخیره گزارش، AI Assistant، Multi-Reputation و Threat Platform در دسترس
C) RESTful API
# اجرای سرور
python apz_api.py
# یا
python apz_manager.py --apiنمونه درخواست:
curl -X POST http://localhost:5000/analyze \
-H 'Content-Type: application/json' \
-d '{"apk_path": "/samples/app.apk"}'Endpoint متد توضیح /analyze POST تحلیل یک APK /batch POST تحلیل دستهای /summary/ GET خلاصهی یک SHA /stats GET آمار کلی /metrics GET متریکهای Prometheus /health GET بررسی سلامت
D) Kubernetes / GitOps
# سینک دستی
argocd app sync apz-prod
# مشاهده وضعیت
argocd app list
# مشاهده لاگ
kubectl -n apz logs -l app.kubernetes.io/name=apz-api -f🧩 پکیجهای تکمیلی
- AIOps – تشخیص ناهنجاری
تشخیص ناهنجاری روی متریکهای Prometheus با Prophet + LSTM.
cd aiops
bash aiops_setup.sh install
bash aiops_setup.sh listویژگیها:
· Prophet (روند + فصلی) · LSTM Autoencoder (الگوهای پیچیده) · Ensemble (ترکیب هر دو) · آستانهی پویا بر اساس MAD · Alert به Alertmanager + Slack
- ML Training – آموزش مدل اختصاصی
Fine-tune مدل Transformer روی دیتاست malware برای طبقهبندی family.
cd ml-training
bash ml_training_setup.sh install
bash ml_training_setup.sh extract # استخراج دیتاست از گزارشهای APZ
bash ml_training_setup.sh train # آموزش
bash ml_training_setup.sh eval models/apz-xxx # ارزیابیویژگیها:
· استخراج خودکار feature از گزارشهای APZ · Class weighting برای دادههای نامتوازن · Early stopping + MLflow tracking · Export به ONNX + INT8 Quantization · Fine-tune روی GPU
- Forensics – جرمشناسی خودکار
جمعآوری و تحلیل شواهد از Podهای مشکوک.
cd forensics
bash forensics_setup.sh install
bash forensics_setup.sh case CASE-2026-001
bash forensics_setup.sh analyze CASE-2026-001
bash forensics_setup.sh listویژگیها:
· Memory dump با gcore یا /proc/kcore · Volatility 3 با ۱۰ پلاگین · استخراج خودکار IOC · Hash + Sign با Cosign · آپلود به S3 · Chain of Custody
- Compliance – ISO 27001 / SOC 2 as Code
بررسی انطباق با Conftest + Rego.
cd compliance
bash compliance_setup.sh install
bash compliance_setup.sh check # همه
bash compliance_setup.sh iso # فقط ISO
bash compliance_setup.sh soc2 # فقط SOC 2
bash compliance_setup.sh evidence # جمعآوری شواهدکنترلهای پیادهسازیشده:
ISO 27001 SOC 2 A.8 Asset Management CC6 Logical Access A.9 Access Control CC7 System Operations A.10 Cryptography CC8 Change Management
- Red-Team – تست نفوذ خودکار
۸ ماژول تست نفوذ روی خود APZ.
cd red-team
bash redteam_setup.sh dry-run
bash redteam_setup.sh scan http://apz-dev:5000
bash redteam_setup.sh module auth_bypassماژولها:
ماژول شدت توضیح api_fuzz medium-high Fuzzing پارامترها auth_bypass critical دور زدن احراز هویت rate_limit medium نبود rate limit info_disclosure high مسیرهای حساس ssrf critical SSRF به metadata injection critical SQLi و Command k8s_rbac high بررسی RBAC secret_scan high جستجوی secret
- Cost – Kubecost + FinOps
cd cost
bash cost_setup.sh install
bash cost_setup.sh dashboard· گزارش هزینه به تفکیک namespace، component، pod · هزینهی GPU جدا · Alert روی spike هزینه · Dashboard در Grafana
- Chaos – Chaos Mesh
cd chaos
bash chaos_setup.sh install
bash chaos_setup.sh apply # experimentها
bash chaos_setup.sh list
bash chaos_setup.sh stop <name>۱۰ Experiment آماده:
· Network partition, delay, DNS error · CPU/Memory/IO stress · Pod kill, failure · HTTP abort · Workflow ترکیبی (سناریوی واقعی)
- SBOM – Syft + Grype
cd sbom
bash sbom_setup.sh install-tools
bash sbom_setup.sh ci apz-manager:latest
bash sbom_setup.sh k8s· تولید SBOM از ایمیج + سورس · اسکن آسیبپذیری با Grype · Export به SARIF · امضا با Cosign · آپلود به S3
- Secrets – Vault + External Secrets
cd secrets
bash secrets_setup.sh install
bash secrets_setup.sh populate
bash secrets_setup.sh apply
bash secrets_setup.sh verify· Vault بهعنوان Source of Truth · ExternalSecretها به K8s Secret sync میکنند · چرخش خودکار با rotate · هیچ secret در Git نیست
- OnCall – PagerDuty + Opsgenie
cd oncall
bash oncall_setup.sh apply
bash oncall_setup.sh test critical
bash oncall_setup.sh runbooks
bash oncall_setup.sh show api-down.md· AlertmanagerConfig با routeهای تفصیلی · PagerDuty + Opsgenie + Slack · ۹ Runbook آماده · Postmortem template
- ArgoCD – GitOps
cd argocd
bash argocd_setup.sh bootstrap
bash argocd_setup.sh password
bash argocd_setup.sh port· ApplicationSet برای dev/staging/prod · App of Apps · Sync Waves · Notifications به Slack · PostSync Smoke Test
- Policy – OPA / Gatekeeper
cd policy
bash policy_setup.sh bootstrap
bash policy_setup.sh audit
bash policy_setup.sh test۱۰ Constraint:
· :latest ممنوع · Resources اجباری · Privileged ممنوع · runAsNonRoot اجباری · Registry مجاز · Labels اجباری · NodePort ممنوع · StorageClass اجباری · Root user ممنوع · hostPort ممنوع
- Metrics – Prometheus + Grafana
cd metrics
bash metrics_setup.sh apply
bash metrics_setup.sh verify
bash metrics_setup.sh dashboard
bash metrics_setup.sh port-graf۳ داشبورد آماده:
· apz-main – Overview · apz-security – Security deep dive · apz-cost – Cost / FinOps · apz-aiops – Anomaly detection
- Backup – CronJob + Velero
cd backup
bash backup_setup.sh apply
bash backup_setup.sh test
bash backup_setup.sh list
bash backup_setup.sh restore· SQLite online backup (.backup) · integrity check · tar.gz گزارشها + rules · آپلود به S3 (daily/weekly/monthly) · Retention + Glacier برای weekly · Velero برای namespace snapshot
📁 ساختار پروژه
APZ-Manager/
├── README.md ← همین فایل
├── LICENSE ← GPLv3
├── VERSION ← 1.0.0
├── Makefile ← اهداف اصلی (install, run, dist)
├── requirements.txt
├── requirements-android.txt
├── .env.android.example
├── .gitignore
├── .dockerignore
│
├── apz_manager.py ← CLI + GUI
├── apz_orchestrator.py ← هماهنگکننده
├── apz_api.py ← سرور RESTful
├── ai_analyzer.py ← پل به Ollama
├── reputation_engine.py ← اعتبارسنجی چندمنبعی
├── threat_platform.py ← YARA + IOC + MITRE
├── risk_fusion_engine.py ← فیوژن ریسک 2.0
├── axml_parser.py ← دیکودر Manifest
├── sandbox_adapter.py ← آداپتور Sandbox
├── report_generator.py ← JSON/HTML/PDF
├── database.py ← SQLite
├── logger.py
├── config.yaml
│
├── scripts/ ← اسکریپتهای کمکی
│ ├── bootstrap.sh ← ساخت کل پکیج روی PC
│ ├── release.sh ← انتشار خودکار
│ ├── ci_setup.sh ← راهاندازی CI/CD
│ ├── docker_setup.sh ← Docker + Compose
│ ├── setup_gpu.sh ← GPU + Ollama
│ ├── scan.sh ← مانیتور پوشه APK
│ ├── k8s_setup.sh ← Kubernetes
│ ├── terraform_setup.sh ← Terraform
│ └── build_zip.sh
│
├── docker/
│ ├── entrypoint.sh
│ ├── healthcheck.sh
│ └── healthcheck-gpu.sh
│
├── Dockerfile ← ایمیج اصلی
├── Dockerfile.slim ← Alpine
├── Dockerfile.proot ← PDF/weasyprint
├── Dockerfile.gpu ← CUDA
├── docker-compose.yml
├── docker-compose.gpu.yml
├── docker-compose.ci.yml
├── Makefile.docker
│
├── k8s/ ← Kubernetes manifests
│ ├── 00-namespace.yaml
│ ├── 01-configmap.yaml
│ ├── 02-secret.example.yaml
│ ├── 03-storage.yaml
│ ├── 10-redis.yaml
│ ├── 11-ollama.yaml
│ ├── 20-api.yaml
│ ├── 21-worker.yaml
│ ├── 30-ingress.yaml
│ └── kustomization.yaml
│
├── terraform/ ← Infrastructure as Code
│ ├── versions.tf
│ ├── variables.tf
│ ├── main.tf
│ ├── outputs.tf
│ ├── cloud-init.yaml.tftpl
│ └── terraform.tfvars.example
│
├── argocd/ ← GitOps
│ ├── 00-project.yaml
│ ├── 01-appset-base.yaml
│ ├── 02-appset-addons.yaml
│ ├── 03-notifications.yaml
│ ├── 04-sync-waves-demo.yaml
│ ├── 05-post-sync-smoke.yaml
│ ├── kustomization.yaml
│ └── argocd_setup.sh
│
├── policy/ ← OPA / Gatekeeper
│ ├── 00-constraint-templates.yaml
│ ├── 01-constraints.yaml
│ ├── 02-psp-alternative.yaml
│ ├── 03-audit-script.sh
│ ├── kustomization.yaml
│ └── policy_setup.sh
│
├── metrics/ ← Prometheus + Grafana
│ ├── 00-servicemonitor.yaml
│ ├── 01-podmonitor.yaml
│ ├── 02-prometheusrule.yaml
│ ├── 03-grafana-dashboards.yaml
│ ├── 04-grafana-datasource.yaml
│ ├── 05-apz-metrics-exporter.yaml
│ ├── kustomization.yaml
│ └── metrics_setup.sh
│
├── backup/ ← CronJob + Velero
│ ├── 00-namespace.yaml
│ ├── 01-rbac.yaml
│ ├── 02-secret.example.yaml
│ ├── 03-configmap.yaml
│ ├── 10-cronjob-daily.yaml
│ ├── 11-cronjob-weekly.yaml
│ ├── 12-velero-schedule.yaml
│ ├── 13-restore-job.yaml
│ ├── 14-serviceaccount-irsa.yaml
│ ├── kustomization.yaml
│ └── backup_setup.sh
│
├── cost/ ← Kubecost
│ ├── 00-namespace.yaml
│ ├── 01-values.yaml
│ ├── 02-grafana-dashboard.yaml
│ ├── 03-prometheusrule.yaml
│ └── cost_setup.sh
│
├── chaos/ ← Chaos Mesh
│ ├── 00-namespace.yaml
│ ├── 01-install.sh
│ ├── 02-experiments.yaml
│ ├── 03-schedule.yaml
│ └── chaos_setup.sh
│
├── sbom/ ← Syft + Grype
│ ├── 00-config.yaml
│ ├── 01-scripts.yaml
│ ├── 02-cronjob.yaml
│ ├── 03-github-workflow.yml
│ └── sbom_setup.sh
│
├── secrets/ ← Vault + ESO
│ ├── 00-namespace.yaml
│ ├── 01-install.sh
│ ├── 02-vault-secrets.yaml
│ ├── 03-secretstore.yaml
│ ├── 04-externalsecrets.yaml
│ ├── 05-vault-config.yaml
│ ├── 06-external-secrets-in-apz.yaml
│ └── secrets_setup.sh
│
├── oncall/ ← PagerDuty + Opsgenie
│ ├── 00-namespace.yaml
│ ├── 01-alertmanagerconfig.yaml
│ ├── 02-runbooks.yaml
│ ├── 03-runbook-links.yaml
│ ├── 04-pagerduty-setup.md
│ ├── 05-opsgenie-setup.md
│ ├── 06-postmortem-template.md
│ └── oncall_setup.sh
│
├── aiops/ ← Anomaly Detection
│ ├── requirements.txt
│ ├── 00-namespace.yaml
│ ├── 01-config.yaml
│ ├── 02-cronjob.yaml
│ ├── 03-grafana-dashboard.yaml
│ ├── alert_rules.yaml
│ ├── anomaly_detector.py
│ ├── Dockerfile.aiops
│ └── aiops_setup.sh
│
├── ml-training/ ← Fine-tune
│ ├── requirements.txt
│ ├── config.yaml
│ ├── extract_features.py
│ ├── train.py
│ ├── evaluate.py
│ ├── export_onnx.py
│ ├── 03-training-job.yaml
│ ├── Dockerfile.ml-training
│ └── ml_training_setup.sh
│
├── forensics/ ← Volatility + Velero
│ ├── 00-namespace.yaml
│ ├── 01-rbac.yaml
│ ├── 02-config.yaml
│ ├── 03-scripts.yaml
│ ├── 04-case-collector.yaml
│ ├── 05-velero-hooks.yaml
│ ├── 06-case-cr.yaml
│ ├── 07-analysis-job-template.yaml
│ └── forensics_setup.sh
│
├── compliance/ ← ISO 27001 / SOC 2
│ ├── policies/
│ │ ├── iso27001/
│ │ │ ├── a.8_asset_management.rego
│ │ │ ├── a.9_access_control.rego
│ │ │ └── a.10_cryptography.rego
│ │ └── soc2/
│ │ ├── cc6_logical_access.rego
│ │ ├── cc7_monitoring.rego
│ │ └── cc8_change_management.rego
│ ├── conftest.yaml
│ ├── evidence-collector.sh
│ ├── run-checks.sh
│ ├── report-generator.py
│ ├── github-workflow.yml
│ └── compliance_setup.sh
│
├── red-team/ ← Self Red-Team
│ ├── 00-config.yaml
│ ├── 01-namespace.yaml
│ ├── 02-cronjob.yaml
│ ├── api_fuzzer.py
│ ├── Dockerfile.redteam
│ ├── README.md
│ └── redteam_setup.sh
│
├── rules/ ← قوانین YARA
│ └── android_rules.yar
│
├── tests/ ← Unit Tests
│ ├── test_axml.py
│ ├── test_fusion.py
│ └── test_yara.py
│
└── docs/ ← مستندات
├── USER_GUIDE.md
├── API_REFERENCE.md
├── ANDROID.md
├── ARCHITECTURE.md
├── DEPLOYMENT.md
├── SECURITY.md
├── RUNBOOKS.md
├── CONTRIBUTING.md
└── CHANGELOG.md
⚙️ پیکربندی
متغیرهای محیطی
متغیر پیشفرض توضیح APZ_DEFAULT_OUTDIR ~/apz-reports پوشهی گزارشها APZ_DB_PATH ~/apz-reports/apz.db مسیر SQLite APZ_LOG_LEVEL INFO سطح لاگ APZ_HTTP_HOST 0.0.0.0 آدرس bind API APZ_HTTP_PORT 5000 پورت API APZ_VT_API_KEY – VirusTotal APZ_HA_API_KEY – Hybrid Analysis APZ_MD_API_KEY – MetaDefender APZ_AI_API_KEY – OpenAI (اختیاری) APZ_AI_ENABLED 0 فعالسازی AI APZ_AI_BACKEND ollama backend AI OLLAMA_HOST http://ollama:11434 آدرس Ollama APZ_AI_MODEL qwen2.5:7b-instruct مدل پیشفرض APZ_USE_GPU 0 استفاده از GPU APZ_SLACK_WEBHOOK – Slack APZ_WEBHOOK_URL – Webhook عمومی
فایل config.yaml
analysis:
max_file_size_mb: 500
max_strings: 1000
timeout_seconds: 300
risk_fusion:
weights:
reputation: 0.25
yara: 0.20
ioc: 0.15
manifest: 0.15
mitre: 0.10
certificate: 0.08
sandbox: 0.07
reputation:
virustotal: true
hybrid_analysis: true
metadefender: true
timeout_seconds: 30
ai:
enabled: true
backend: ollama
summarize: true
explain_risk: true
recommend: true
family_classification: true
reporting:
formats: [json, html, pdf]
include_raw: false📊 نمونهی خروجی
JSON
{
"file": "/samples/malware.apk",
"sha256": "a1b2c3d4e5f6...",
"risk_score": 78,
"risk_level": "HIGH",
"confidence": 88,
"sandbox_verdict": "suspicious",
"findings": [
{
"title_fa": "مجوزهای حساس",
"weight": 35,
"detail_fa": "مجوزهای خطرناک شناسایی شد.",
"evidence": [
"android.permission.READ_SMS",
"android.permission.CAMERA"
]
},
{
"title_fa": "YARA",
"weight": 20,
"detail_fa": "قوانین YARA فعال شدند.",
"evidence": [
"Android_Accessibility_Abuse (critical)",
"Android_SMS_Interception (high)"
]
}
],
"permissions": ["android.permission.READ_SMS"],
"mitre": [
{"id": "T1417", "name": "Input Capture"},
{"id": "T1636", "name": "Protected User Data"}
],
"iocs": {
"ip": ["1.2.3.4"],
"domain": ["malicious.example.com"],
"url": ["http://malicious.example.com/payload"]
},
"ai": {
"summary": "این APK با ریسک بالا...",
"risk_explanation": "دلیل اصلی، ترکیب READ_SMS با...",
"recommendations": ["..."],
"family": {
"family_guess": "شواهد کافی نیست",
"confidence": 45
}
},
"limitations": [
"تحلیل static/heuristic است و ممکن است برخی رفتارهای داینامیک شناسایی نشوند."
]
}HTML
گزارش HTML با Tailwind-like CSS، قابل چاپ و ایمیل، شامل:
· کارت خلاصهی ریسک با رنگبندی · جدول یافتهها · لیست مجوزها، IOCها، MITRE · توصیههای AI · محدودیتها
با weasyprint (فقط روی Docker proot یا Ubuntu). مناسب برای ارسال رسمی.
📚 مستندات کامل
سند توضیح docs/USER_GUIDE.md راهنمای کاربری کامل docs/API_REFERENCE.md مستندات API docs/ANDROID.md اجرا روی اندروید docs/ARCHITECTURE.md معماری داخلی docs/DEPLOYMENT.md استقرار در محیطهای مختلف docs/SECURITY.md ملاحظات امنیتی docs/RUNBOOKS.md کتابهای واکنش به حادثه docs/CONTRIBUTING.md راهنمای مشارکت docs/CHANGELOG.md تاریخچهی تغییرات
🔐 نکات امنیتی مهم
· 🔒 کلیدهای API را در کد ذخیره نکنید – همیشه از متغیرهای محیطی یا Vault استفاده کنید. · 📁 گزارشها را محرمانه نگه دارید – ممکن است شامل IOC یا SHA-256 فایلهای مخرب باشند. · 🐳 Docker containerها را با کاربر non-root اجرا کنید (در همهی Dockerfileها رعایت شده). · ☸️ Kubernetes را با Gatekeeper + NetworkPolicy + PSA محافظت کنید. · 🔑 Secrets را در Vault نگهداری کنید، نه در Git. · 🕵️ Red-Team را فقط روی dev/staging اجرا کنید. · 📜 Compliance را بهصورت پیوسته بررسی کنید (روزانه). · 🧪 Chaos را با احتیاط و در ساعات کمترافیک اجرا کنید.
🚀 عملکرد و مقیاس
سرعت تحلیل
فاز زمان (APK 50MB) تحلیل ایستا ~2s YARA (500 rule) ~1s Manifest decode ~0.5s Reputation (3 API) ~5s (موازی) AI (Ollama 7B روی T4) ~8s کل ~16s
مقیاسپذیری
سناریو راهکار < 100 APK/روز Single node + SQLite 100–10K APK/روز K8s + Redis + 3 replicas 10K–1M APK/روز K8s + HPA (8 replicas) + S3 برای گزارشها 1M APK/روز Multi-cluster + Kafka + Celery
منابع
Component CPU RAM GPU Storage APZ API 500m – 4 1 – 8 Gi – – Ollama (7B) 4 8 Gi 6 GB VRAM 30 GB ML Training (fine-tune) 8 24 Gi 16 GB VRAM 50 GB AIOps 500m – 2 1 – 4 Gi (اختیاری) 10 GB Forensics (Volatility) 2 – 4 2 – 8 Gi – 100 GB
🔧 عیبیابی سریع
مشکل راهحل ModuleNotFoundError: androguard pip install -r requirements.txt خطای YARA compile قوانین در rules/ را بررسی کنید API key missing متغیرهای محیطی را تنظیم کنید Permission denied (ویندوز) بهعنوان Administrator اجرا کنید weasyprint روی Android از Ubuntu proot استفاده کنید یا PDF را نادیده بگیرید GPU detected but not used nvidia-container-toolkit را نصب/پیکربندی کنید Gatekeeper pod را رد میکند bash policy/policy_setup.sh audit ArgoCD OutOfSync argocd app diff Pod CrashLoopBackOff kubectl describe pod + kubectl logs --previous Ollama slow APZ_AI_MODEL=llama3.2:3b-instruct (سبکتر) PVC Pending بررسی StorageClass و kubectl get pv Backup failed kubectl -n apz-backup logs job/
راهنمای کامل: docs/TROUBLESHOOTING.md
🤝 مشارکت
ما از مشارکت شما استقبال میکنیم! برای همکاری:
- Fork کنید
- شاخهی جدید بسازید: git checkout -b feature/amazing-feature
- Commit کنید: git commit -m 'feat: add amazing feature'
- Push کنید: git push origin feature/amazing-feature
- Pull Request باز کنید
استانداردها
· PEP 8 برای Python · Conventional Commits برای پیامهای commit · Pytest برای تستها · Ruff + Black برای formatting · Conftest برای policyها
Workflow
# 1) نصب dev dependencies
pip install -r requirements.txt
pip install pytest ruff black
# 2) اجرای تستها
make test
# 3) بررسی lint
ruff check .
black --check .
# 4) بررسی policy
bash compliance/run-checks.sh all
# 5) ساخت ZIP برای تست
make distCode of Conduct
لطفاً CODE_OF_CONDUCT.md را بخوانید.
📜 مجوز
این پروژه تحت مجوز GNU General Public License v3.0 منتشر شده است.
APZ Manager – APK Security Analysis Platform
Copyright (C) 2026 APZ Security Team
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
برای جزئیات بیشتر LICENSE را ببینید.
📬 ارتباط با تیم
کانال آدرس 📧 ایمیل support@apz-security.com 🌐 GitHub github.com/your-org/apz-manager 📚 مستندات docs.apz-security.com 🐛 Issues GitHub Issues 💬 Discussions GitHub Discussions 🔒 Security security@apz-security.com (PGP: key)
🙏 قدردانی
از کتابخانهها و پروژههای متنباز زیر سپاسگزاریم:
هسته
· androguard – تحلیل APK · yara-python – اسکنر YARA · Flask – چارچوب وب · SQLAlchemy – ORM · WeasyPrint – تولید PDF
AI / ML
· Ollama – سرور LLM محلی · PyTorch – Deep Learning · HuggingFace Transformers – مدلها · Prophet – Time Series
Cloud Native
· Kubernetes · ArgoCD · Prometheus · Grafana · Chaos Mesh · Gatekeeper · Velero · Vault · Kubecost
Security
· Syft / Grype · Volatility 3 · Cosign · Conftest
🛡️ APZ Manager
ساخته شده با ❤️ برای تیمهای امنیت
⬆ بازگشت به بالا
Version: 1.0.0 | Last Updated: 2026-10-06 | License: GPLv3