{"id":47808831,"url":"https://github.com/byigitt/kovan","last_synced_at":"2026-04-03T18:01:08.131Z","repository":{"id":341433220,"uuid":"1163180987","full_name":"byigitt/kovan","owner":"byigitt","description":"Kovan — Merkezi komuta kontrol ve ağ anomali tespit sistemi. Pardus/Linux uyumlu, gerçek zamanlı ajan yönetimi, CVE tarama ve ML tabanlı trafik analizi.","archived":false,"fork":false,"pushed_at":"2026-02-22T08:06:38.000Z","size":19624,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-01T19:47:38.701Z","etag":null,"topics":["anomaly-detection","bun","command-and-control","cve-scanner","cybersecurity","fastapi","golang","machine-learning","network-monitoring","pardus","react","typescript"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/byigitt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-21T08:09:29.000Z","updated_at":"2026-02-22T08:06:42.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/byigitt/kovan","commit_stats":null,"previous_names":["byigitt/kovan"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/byigitt/kovan","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byigitt%2Fkovan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byigitt%2Fkovan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byigitt%2Fkovan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byigitt%2Fkovan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/byigitt","download_url":"https://codeload.github.com/byigitt/kovan/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byigitt%2Fkovan/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31368156,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-03T17:53:18.093Z","status":"ssl_error","status_checked_at":"2026-04-03T17:53:17.617Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["anomaly-detection","bun","command-and-control","cve-scanner","cybersecurity","fastapi","golang","machine-learning","network-monitoring","pardus","react","typescript"],"created_at":"2026-04-03T18:00:26.975Z","updated_at":"2026-04-03T18:01:08.113Z","avatar_url":"https://github.com/byigitt.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"presentation/public/assets/kovan-icon.svg\" alt=\"Kovan Logo\" width=\"120\" /\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eKOVAN\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003ePardus Tabanlı Uç Nokta Güvenlik \u0026 Yönetim Platformu\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#kurulum\"\u003e\u003cimg src=\"https://img.shields.io/badge/platform-Pardus%20%7C%20Linux%20%7C%20Windows-blue?style=flat-square\" alt=\"Platform\" /\u003e\u003c/a\u003e\n  \u003ca href=\"#\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-MIT-green?style=flat-square\" alt=\"License\" /\u003e\u003c/a\u003e\n  \u003ca href=\"#\"\u003e\u003cimg src=\"https://img.shields.io/badge/version-1.0-yellow?style=flat-square\" alt=\"Version\" /\u003e\u003c/a\u003e\n  \u003ca href=\"#\"\u003e\u003cimg src=\"https://img.shields.io/badge/HackMETU-2026-orange?style=flat-square\" alt=\"HackMETU 2026\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Ağ cihazlarınızı tek panelden yönetin, güvenlik açıklarını tarayın,\u003cbr/\u003e\n  ML tabanlı anomali tespiti yapın ve tehditlere anında müdahale edin.\n\u003c/p\u003e\n\n---\n\nhttps://github.com/user-attachments/assets/7c45cd16-4190-4d2b-9f53-969f922ca16a\n\n\n\n## Problem\n\nKamu kurumları ve işletmeler, uç nokta güvenliğinde ciddi sorunlarla karşı karşıya:\n\n| Problem | Açıklama |\n|---------|----------|\n| **Dağınık Cihaz Yönetimi** | Yüzlerce uç nokta farklı araçlarla yönetiliyor, merkezi görünürlük yok |\n| **Zafiyet Takip Eksikliği** | CVE veritabanları takip edilmiyor, kurulu paketlerdeki açıklar tespit edilemiyor |\n| **Ağ Anomali Tespiti** | Anormal ağ trafiği manuel süreçlerle tespit ediliyor, müdahale geç kalıyor |\n| **Yetki \u0026 Erişim Kontrolü** | Rol tabanlı yetkilendirme çoğu çözümde bulunmuyor |\n| **Tehdit Görünürlüğü** | Saldırı yüzeyleri bilinmiyor, tehditler algılanamıyor |\n\n\u003e Türkiye'de siber saldırılar **%68 artış** gösterdi (2024-2025). Ortalama veri ihlali tespit süresi **207 gün**, maliyeti **$4.45M** (IBM 2024).\n\n---\n\n## Kovan Nedir?\n\n**Kovan**, Pardus ve Debian tabanlı sistemler için geliştirilmiş açık kaynak bir **uç nokta güvenlik ve yönetim platformu**dur. Merkezi bir panelden tüm cihazlarınızı yönetmenizi, güvenlik açıklarını taramanızı ve ağ anomalilerini tespit etmenizi sağlar.\n\n### Temel Yetenekler\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"50%\"\u003e\n\n**Uzaktan Komut Yönetimi**\nAgent'lara terminal üzerinden anlık komut gönderin, çıktıları gerçek zamanlı izleyin. İnteraktif PTY desteği.\n\n**CVE Zafiyet Taraması**\n47.000+ CVE kaydı ile kurulu paketleri karşılaştırın. `dpkg` entegrasyonu, fuzzy search desteği.\n\n**ATTDAP Anomali Tespiti**\nML tabanlı 3 model ensemble (IF + GMM + Autoencoder) ile ağ trafiğini analiz edin.\n\n**Dosya Yöneticisi**\nUzak cihaz dosya sistemi üzerinde gezinin, dosya indirin/yükleyin/silin.\n\n\u003c/td\u003e\n\u003ctd width=\"50%\"\u003e\n\n**Ağ Keşfi \u0026 Tarama**\nYerel ağdaki cihazları otomatik keşfedin, açık portları ve servisleri haritalayın.\n\n**Zamanlanmış Görevler**\nCron tabanlı otomatik komut çalıştırma. Tekil veya grup bazlı hedefleme.\n\n**Ekran \u0026 Tuş İzleme**\nGerçek zamanlı ekran akışı (ffmpeg/PowerShell). Keylogger desteği — red team senaryoları için.\n\n**Grup Broadcast**\nAgent'ları gruplara ayırın, tek komutla tüm gruba toplu komut gönderin.\n\n\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n### Ek Özellikler\n\n- **Rol Tabanlı Erişim (RBAC)** — Admin/kullanıcı rolleri, agent bazlı yetkilendirme\n- **Sistem Metrikleri** — CPU, RAM, Disk, GPU kullanımı, uptime (gerçek zamanlı grafikler)\n- **GeoIP Harita** — Agent'ların coğrafi konumu dünya haritası üzerinde\n- **Alert Engine \u0026 Telegram** — Metrik eşik aşımı, agent çevrimdışı → otomatik bildirim\n- **Donanım Parmak İzi** — machineId, MAC, CPU model ile kalıcı agent tanıma\n- **Cross-Platform** — Windows + Linux (Pardus/Debian), otomatik OS algılama\n\n---\n\n## Mimari\n\n```mermaid\ngraph TB\n    subgraph SERVER[\"KOVAN SERVER — Bun + Hono, Port 4444\"]\n        API[\"REST API\"]\n        WS[\"WebSocket\"]\n        STORE[\"In-Memory Store\"]\n        DB[\"PostgreSQL\u003cbr/\u003eCVE + Auth DB\"]\n        API --\u003e STORE\n        WS --\u003e STORE\n        STORE --\u003e DB\n    end\n\n    subgraph AGENTS[\"Go Agent'lar (~5.5MB binary)\"]\n        A1[\"Agent 1\u003cbr/\u003eKomut exec · Dosya yönet. · Keylogger\"]\n        A2[\"Agent N\u003cbr/\u003eHeartbeat · Ekran stream · Ağ tarama\"]\n    end\n\n    subgraph DASHBOARD[\"Web Dashboard — React + Vite\"]\n        D1[\"Agent listesi · Terminal UI · CVE tarama\"]\n    end\n\n    subgraph ATTDAP[\"ATTDAP Service — FastAPI, Port 8000\"]\n        ML[\"IF + GMM + AE\u003cbr/\u003eAUC-ROC: 0.91 · F1: 0.80\"]\n    end\n\n    A1 \u003c--\u003e|\"ws://host:4444\"| WS\n    A2 \u003c--\u003e|\"ws://host:4444\"| WS\n    D1 \u003c--\u003e|\"http://host:4444\"| API\n    SERVER -.-\u003e|\"Anomali skorlama\"| ATTDAP\n```\n\n---\n\n## Hızlı Başlangıç\n\n### Gereksinimler\n\n- [Bun](https://bun.sh) v1.0+\n- [Go](https://go.dev) 1.21+ (agent derlemesi için)\n- [PostgreSQL](https://www.postgresql.org/) 15+ (CVE + Auth veritabanı)\n- [Python](https://www.python.org/) 3.10+ (anomali modeli için, opsiyonel)\n- [pnpm](https://pnpm.io/) (paket yönetimi)\n\n### 1. Veritabanı Kurulumu\n\n```bash\n# PostgreSQL'de kovan veritabanını oluşturun\ncreatedb -U postgres kovan\n\n# Auth tablolarını oluşturun\ncd server\npsql -U postgres -d kovan -f scripts/init-auth.sql\npsql -U postgres -d kovan -f scripts/init-permissions.sql\npnpm run db:seed\n\n# CVE tablolarını oluşturun ve verileri yükleyin\npnpm run db:init\npnpm run db:import    # ~47K CVE, ~32 saniye\n```\n\n### 2. Server\n\n```bash\ncd server\npnpm install\npnpm run dev\n```\n\nServer `http://0.0.0.0:4444` adresinde başlar. REST API, WebSocket ve frontend hepsi tek portta çalışır.\n\n### 3. Frontend (Geliştirme)\n\n```bash\ncd frontend\npnpm install\npnpm run dev\n```\n\nDashboard `http://localhost:5173` adresinde açılır (API proxy aktif).\n\n### 4. Frontend (Production)\n\n```bash\ncd frontend\npnpm run build\n```\n\nBuild çıktısı `frontend/dist/` klasörüne oluşur. Server otomatik olarak serve eder.\n\n### 5. Go Agent\n\n```bash\ncd client-go\n\n# Derleme\ngo build -ldflags=\"-s -w\" -o kovan-agent .\n\n# Çalıştırma (varsayılan: localhost)\n./kovan-agent\n\n# Uzak sunucuya bağlanma\n./kovan-agent --server ws://SUNUCU_IP:4444/ws/agent\n\n# Env ile bağlanma\nC2_SERVER=ws://SUNUCU_IP:4444/ws/agent ./kovan-agent\n\n# Daemon olarak kurma (Linux: systemd, Windows: Scheduled Task)\nsudo ./kovan-agent install --server ws://SUNUCU_IP:4444/ws/agent\n```\n\n#### Cross-Compilation\n\n```bash\ncd client-go\nmake linux      # Linux AMD64 (Pardus)\nmake windows    # Windows AMD64\nmake all        # Tüm platformlar\n```\n\n### 6. ATTDAP Anomali Servisi (Opsiyonel)\n\n```bash\ncd anomaly-model\npython3 -m venv .venv \u0026\u0026 source .venv/bin/activate\npip install -r requirements.txt\n\n# Veri setlerini indir\npython -m data.download_datasets\n\n# Modelleri eğit\npython -m pipeline.train\n\n# API'yi başlat\nuvicorn api.main:app --host 0.0.0.0 --port 8000 --reload\n```\n\n---\n\n## API Referansı\n\n### REST API (Port 4444)\n\n| Method | Endpoint | Açıklama | Auth |\n|--------|----------|----------|------|\n| `GET` | `/api/health` | Sağlık kontrolü | Hayır |\n| `GET` | `/api/agents` | Tüm agent'ları listele | Evet |\n| `GET` | `/api/agents/:id` | Agent detayı | Evet |\n| `PATCH` | `/api/agents/:id` | Agent alias güncelle | Evet |\n| `DELETE` | `/api/agents/:id` | Agent sil | Admin |\n| `GET` | `/api/agents/:id/commands` | Agent komut geçmişi | Evet |\n| `DELETE` | `/api/agents/:id/commands` | Komut geçmişini temizle | Evet |\n| `POST` | `/api/command` | Komut gönder | Evet |\n| `GET` | `/api/commands` | Tüm komutlar | Evet |\n| `GET` | `/api/cves/stats` | CVE istatistikleri | Hayır |\n| `GET` | `/api/cves/search?q=openssl` | CVE arama | Hayır |\n| `GET` | `/api/cves/:id` | CVE detayı | Hayır |\n| `POST` | `/api/cves/scan` | Paket zafiyet taraması | Hayır |\n| `GET/POST/DELETE` | `/api/permissions` | Agent yetkileri | Admin |\n\n### WebSocket (`/ws/agent`)\n\n| Mesaj | Yön | Açıklama |\n|-------|-----|----------|\n| `register` | Agent → Server | İlk kayıt (hostname, os, username, ip) |\n| `registered` | Server → Agent | Kayıt onayı (agentId) |\n| `heartbeat` | Agent → Server | Canlılık sinyali (10sn aralık) |\n| `command` | Server → Agent | Çalıştırılacak komut |\n| `result` | Agent → Server | Komut çıktısı (stdout/stderr) |\n\n### ATTDAP API (Port 8000)\n\n| Method | Endpoint | Açıklama |\n|--------|----------|----------|\n| `GET` | `/health` | Servis durumu + model bilgisi |\n| `POST` | `/score` | Tek ağ akışı skorlama |\n| `POST` | `/batch-score` | Toplu skorlama (max 10K event) |\n| `GET` | `/model-info` | Model config, metrikler, feature listesi |\n\n---\n\n## ATTDAP — Anomali Tespit Modülü\n\n**ATTDAP** (Anomaly Traffic Detection \u0026 Analysis Platform), ML tabanlı ağ trafiği anomali tespit modülüdür.\n\n| Metrik | Değer |\n|--------|-------|\n| **F1 Score** | 0.7995 |\n| **AUC-ROC** | 0.9088 |\n| **Precision** | 0.8836 |\n| **Recall** | 0.7300 |\n\n- **3 Model Ensemble:** Isolation Forest (0.10 ağırlık) + GMM (0.90 ağırlık) + Denoising Autoencoder\n- **Eğitim Verileri:** CICIDS2017 + UNSW-NB15 (26 ortak ağ akışı özelliği)\n- **Çıktı:** 0-100 arası hibrit risk skoru\n- **Risk Seviyeleri:** Düşük (\u003c79) · Orta (\u003c50) · Yüksek (\u003c75) · Kritik (≥75)\n\n---\n\n## Teknoloji Stack'i\n\n| Katman | Teknolojiler |\n|--------|-------------|\n| **Backend** | Bun · Hono · TypeScript · WebSocket · Better Auth |\n| **Frontend** | React · Vite · TypeScript · Zustand |\n| **Agent** | Go (~5.5MB binary) · Cross-platform · Daemon installer |\n| **Veritabanı** | PostgreSQL · TimescaleDB (zaman serisi) |\n| **ML Pipeline** | Python · PyTorch · scikit-learn · FastAPI |\n| **Araçlar** | ffmpeg (ekran yakalama) · pnpm · Makefile |\n\n---\n\n## Takım\n\n| İsim | Rol |\n|------|-----|\n| **Barış Cem Bayburtlu** | Full-Stack / Takım Lideri |\n| **Batuhan Bayazıt** | Backend / DevOps |\n| **Burak Aydoğmuş** | Go Agent / Sistem |\n| **Mustafa Yusuf Onur** | Frontend / UX |\n| **Mehmet Ali Selvet** | ML / Anomali Modeli |\n\n---\n\n## Varsayılan Giriş Bilgileri\n\n| Hesap | E-posta | Şifre |\n|-------|---------|-------|\n| Admin | `admin@admin.com` | `admin123` |\n\n---\n\n## Testler\n\n```bash\ncd server\nbun test\n```\n\n15 test: REST API (health, agents, commands, 404, 400) + WebSocket (register, heartbeat, offline, send/receive commands, errors, multi-command).\n\n---\n\n## Uyarı\n\n\u003e **Bu proje yalnızca eğitim ve demo amaçlıdır.** Yetkisiz sistemlerde kullanımı yasalara aykırıdır. Tüm sorumluluk kullanıcıya aittir.\n\n---\n\n## Lisans\n\nMIT License — Detaylar için [LICENSE](LICENSE) dosyasına bakın.\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"presentation/public/assets/kovan-icon.svg\" alt=\"Kovan\" width=\"40\" /\u003e\n  \u003cbr/\u003e\n  \u003csub\u003eHackMETU 2026 — Wired Takımı\u003c/sub\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbyigitt%2Fkovan","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbyigitt%2Fkovan","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbyigitt%2Fkovan/lists"}