Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
UltraViolet — محرك اكتشاف وبحث للشبكات ذاتي الاستضافة مع مسح مستمر للمنافذ، وفحص عميق للبروتوكولات عبر حوالي 100 خدمة، ومطابقة محلية لـ CVE، وبحث نصي كامل لجرد البنية التحتية ومراقبة المخاطر. | Kitploit
أدوات/GitHubGitHub/yakushstanislav/ultraviolet
الاستطلاعماسحات الثغرات الأمنيةأمان إنترنت الأشياءتخطيط الشبكةمسح المنافذأمن SCADA/ICSاستخبارات التهديداتالاستجابة للحوادثتحليل DNS
GitHubyakushstanislav/ultraviolet

UltraViolet

محرك اكتشاف وبحث للشبكات ذاتي الاستضافة مع مسح مستمر للمنافذ، وفحص عميق للبروتوكولات عبر حوالي 100 خدمة، ومطابقة محلية لـ CVE، وبحث نصي كامل لجرد البنية التحتية ومراقبة المخاطر.

4355منذ 2 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع
<div align="center">

# UltraViolet

**اكتشاف وبحث شبكي ذاتي الاستضافة — نسختك الخاصة من Shodan، على أجهزتك.**

فحص TCP/UDP · ~100 فحص بروتوكول · بصمات TLS/JARM · مطابقة CVE · بحث نصي كامل · تتبع الفروقات · تنبيهات

<br/>

[![Go](https://img.shields.io/badge/Go-1.25+-00ADD8?style=flat-square&logo=go&logoColor=white)](service-api/)
[![React](https://img.shields.io/badge/React-19-61DAFB?style=flat-square&logo=react&logoColor=black)](service-frontend/)
[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-16-4169E1?style=flat-square&logo=postgresql&logoColor=white)](service-env/)
[![Docker](https://img.shields.io/badge/Deploy-Docker%20Compose-2496ED?style=flat-square&logo=docker&logoColor=white)](service-env/)
[![CI](https://img.shields.io/badge/CI-GitHub%20Actions-2088FF?style=flat-square&logo=githubactions&logoColor=white)](.github/workflows/ci.yml)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow?style=flat-square)](LICENSE)

[بدء سريع](#بدء-سريع) ·
[الميزات](#الميزات) ·
[البنية](#البنية) ·
[الوثائق](#الوثائق) ·
[قائمة التحقق للإنتاج](#قائمة-التحقق-للإنتاج)

</div>

---

> **مهم.** افحص فقط الشبكات التي تملكها أو لديك **إذن كتابي** لفحصها. ينفّذ UltraViolet استطلاعًا سلبيًا للخدمات — فهو لا يستغل الثغرات.

## لماذا UltraViolet؟

| حالة الاستخدام | ما الذي تحصل عليه |
|----------|--------------|
| حدود الشبكة والجرد | اكتشاف مستمر للمنافذ والخدمات المفتوحة عبر نطاقات CIDR |
| البحث في البنية التحتية | بحث نصي كامل عبر محتوى HTTP واللافتات وTLS وDNS والثغرات (CVEs) |
| المخاطر والامتثال | مطابقة محلية مع NVD بالإضافة إلى CISA KEV وEPSS — دون الاعتماد على السحابة |
| النشر المعزول (Air-gapped) | أرشيف دون اتصال يشمل صور Docker وبذرة CVE وملف GeoIP MMDB على القرص |
| تتبع التغييرات | الفروقات بين عمليات الفحص، وأحداث WebSocket، وتنبيهات على عمليات البحث المحفوظة |

مستأجر واحد، ومكدّس Docker Compose واحد، وسيطرة كاملة على بياناتك.

## ✨ الميزات

**الاكتشاف**
- ماسح اتصال TCP يعتمد على **masscan** أو **zmap** كمحرك اكتشاف
- فحوصات UDP على منافذ قابلة للتكوين
- يُحدَّد نطاقه عبر `SCAN_ALLOWED_CIDRS` مع حدود للمضيفات والمنافذ

**فحوصات عميقة (~100 بروتوكول)**
- الويب: HTTP/HTTPS وHTTP/3 وGraphQL وتجزئة favicon و`robots.txt` و`security.txt` ومكدّس التقنيات
- TLS: سلاسل الشهادات، JARM، JA3S/JA4S، تقييم الإعدادات
- البريد والدلائل: SMTP وPOP3/IMAP وLDAP وIPMI
- قواعد البيانات وقوائم الانتظار: MySQL وPostgreSQL وMongoDB وRedis وKafka وMQTT وNATS وAMQP…
- ICS/SCADA: Modbus وBACnet وDNP3 وIEC 104 وS7Comm وENIP وOPC UA…
- إنترنت الأشياء والوسائط: ONVIF وRTSP وChromecast وAirPlay وUPnP…
- القائمة الكاملة في [وثائق البروتوكولات](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs/probes/service-protocols.md)

**الإثراء**
- DNS عكسي، GeoIP (MMDB)، ASN
- اكتشاف اختياري لـ DNS المباشر وسجلات CT

**الثغرات (CVE) والمخاطر**
- مرآة محلية لـ NVD مع مزامنة في الخلفية ومطابقة قائمة على البصمات
- CISA KEV وFIRST EPSS

**العمليات**
- التحكم بالوصول RBAC (`viewer` / `operator` / `admin`)، JWT + رموز التحديث
- جدولة عمليات الفحص، إيقاف مؤقت/استئناف، استعادة المهام اليتيمة بعد إعادة تشغيل العامل
- Prometheus `/metrics`، وملف Grafana اختياري
- سجل تدقيق، تحديد معدل الطلبات، سياسات الاحتفاظ

## 🏗 البنية

```mermaid
flowchart TB
  Browser["Browser"]
  FE["service-frontend<br/>React + nginx"]
  API["uv-api<br/>REST · WS · metrics"]
  PG[("PostgreSQL 16")]
  SCAN["uv-scanner<br/>probe pipeline"]

  Browser --> FE
  FE -->|"/api"| API
  FE -->|"/realtime"| API
  API <--> PG
  SCAN <--> PG
  API -.->|LISTEN/NOTIFY| API
```

صورة واجهة المستخدم في الإصدار توجّه `/api/` و`/realtime` إلى `uv-api` — **أصل واحد**، دون إعادة بناء للواجهة الأمامية لكل عنوان API.

| الدليل | الغرض |
|-----------|---------|
| [`service-api/`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-api) | Go: `uv-api` (واجهة HTTP API وWebSocket والعمال) + `uv-scanner` (خط المعالجة) |
| [`service-frontend/`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-frontend) | React 19 + Vite + RTK — الفحوصات والمضيفون والبحث ولوحة المعلومات |
| [`service-documentation-frontend/`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend) | VitePress — وثائق المستخدم والمشغّل |
| [`service-env/`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-env) | docker-compose والأسرار و`install.sh` / `upgrade.sh` / النسخ الاحتياطي |

قواعد تطوير الواجهة الخلفية: [`CLAUDE.md`](https://github.com/yakushstanislav/ultraviolet/blob/master/CLAUDE.md).

## 🚀 بدء سريع

**المتطلبات:** Go 1.25+ ومحرك Docker ≥ 24 وذاكرة ~4 جيجابايت RAM. صور الإنتاج موجهة لنظام Linux **amd64**.

### التشغيل من Docker Hub (بدون بناء من المصدر)

مسار المبتدئين — اسحب الصور المنشورة باستخدام
[`service-env/docker-compose.registry.yml`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-env/docker-compose.registry.yml):

```bash
cd service-env
cp env.registry.example .env
# set POSTGRES_PASSWORD, AUTH_JWT_SECRET, AUTH_BOOTSTRAP_PASSWORD
mkdir -p geoip catalog-seed
docker compose -f docker-compose.registry.yml pull
docker compose -f docker-compose.registry.yml up -d
# UI → http://localhost:3000
```

انظر [Docker Registry](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs/deployment/docker-registry.md) في موقع الوثائق.

### التطوير من المصدر

تنسخ صور الواجهة البرمجية والماسح الضوئي الملفات الثنائية المجمّعة مسبقًا من `service-api/bin/` (لا تُجمَّع **داخل** Docker). يشغّل `make dev` الأمر `make -C service-api build-linux` قبل `docker compose … --build`.

```bash
git clone https://github.com/yakushstanislav/UltraViolet.git
cd UltraViolet/service-env

cp .env.example .env
mkdir -p secrets
openssl rand -hex 32 > secrets/postgres_password
openssl rand -hex 32 > secrets/auth_jwt_secret

cd ..
make dev
```

| URL | الغرض |
|-----|---------|
| http://localhost:3000 | واجهة المستخدم (API عبر nginx `/api/`) |
| http://localhost:8080 | API مباشرة |
| http://localhost:9090/metrics | Prometheus |

**الإقلاع التطويري:** `admin` / `admin` (فقط عندما `APP_ENV≠production`).

## 📖 الوثائق

الدليل الكامل — VitePress في [`service-documentation-frontend/docs/`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs):

```bash
make docs-dev    # → http://localhost:5173
```

في بيئة الإنتاج، فعّل ملف `docs`:

```bash
cd service-env && docker compose --profile docs up -d
# → http://localhost:${UV_DOCUMENTATION_PORT:-3002}
```

الأقسام الرئيسية: [التثبيت](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs/getting-started/installation.md) · [الفحص](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs/scanning) · [API](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs/api/overview.md) · [النشر](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs/deployment/docker-compose.md) · [التثبيت دون اتصال](https://github.com/yakushstanislav/ultraviolet/blob/master/service-documentation-frontend/docs/deployment/offline-install.md).

## 🛠 التطوير

### Docker بالكامل

```bash
make dev    # build-linux → compose prod + dev override --build
```

أعد بناء ملفات Go الثنائية بعد تغييرات الواجهة الخلفية (`make -C service-api build-linux`)، ثم أعد التشغيل أو أعد تنفيذ `make dev`.

### الوضع الهجين (تكرار أسرع للواجهة الخلفية)

```bash
make dev-db   # PostgreSQL only on :5432

cd service-api && make build
export LOGGER_NAME=uv-api LOGGER_DEBUG=true
export SERVER_ADDR=0.0.0.0 SERVER_PORT=8080
export METRICS_ADDR=0.0.0.0 METRICS_PORT=9090
export REALTIME_ADDR=0.0.0.0 REALTIME_PORT=8081
export POSTGRES_ADDR=localhost POSTGRES_PORT=5432
export POSTGRES_USERNAME=ultraviolet
export POSTGRES_PASSWORD="$(cat ../service-env/secrets/postgres_password)"
export POSTGRES_DATABASE=ultraviolet
export POSTGRES_SCHEMA_PATH="$(pwd)/deploy/migrations"
export AUTH_JWT_SECRET="$(cat ../service-env/secrets/auth_jwt_secret)"
./bin/uv-api
```

الواجهة الأمامية: `cd service-frontend && npm run dev` (يوجّه Vite طلبات `/api` إلى `:8080` و`/realtime` إلى `:8081`).

### GeoIP وCVE

```bash
cd service-env && make geoip-download      # IPLocate MMDB → geoip/
make -C service-env cve-catalog-dump       # CVE dump (requires running postgres)
```

### البناء بدون Docker

```bash
make build && make lint && make frontend-build && make docs-build
```

## 📦 الإصدار والتثبيت

**المنصة المستهدفة:** `linux/amd64`. على أجهزة Apple Silicon، اضبط `DOCKER_PLATFORM=linux/amd64` للأرشيفات دون اتصال.

```bash
git tag v0.1.0
make release VERSION=v0.1.0
make release-promote VERSION=v0.1.0   # :latest — required for local releases; GitHub Actions does this automatically
```

| الأرشيف | المحتويات |
|---------|----------|
| `ultraviolet-vX.Y.Z.tar.gz` | compose والسكربتات و`.env.example` (~50 كيلوبايت، عبر الإنترنت) |
| `ultraviolet-vX.Y.Z-offline.tar.gz` | + صور Docker لـ amd64 |
| `ultraviolet-vX.Y.Z-offline-full.tar.gz` | + بذرة CVE + GeoIP MMDB |

**عبر الإنترنت:** فك الضغط ← `cp .env.example .env` ← `./install.sh` (سحب من السجل).

**دون اتصال:** `./install.sh` (`docker load`، بدون سحب). الترقية: احتفظ بـ `.env` و`secrets/` ووحدة تخزين Postgres ← `./upgrade.sh`.

المتغيرات: `UV_REGISTRY` (الافتراضي `docker.io/styakush`)، `DRY_RUN=1` — بناء تجريبي محلي دون رفع.

<details>
<summary><strong>التثبيت دون اتصال — خطوة بخطوة</strong></summary>

```bash
# from the build machine
scp dist/ultraviolet-v0.1.0-offline.tar.gz user@host:~/

# on the server (Docker ≥ 24, amd64)
tar xzf ultraviolet-v0.1.0-offline.tar.gz && cd ultraviolet-v0.1.0
cp .env.example .env
./install.sh
```

الترقية (الحفاظ على البيانات):

```bash
docker compose -f docker-compose.yml down
# back up .env + secrets/, extract the new archive, run ./upgrade.sh
```

أبقِ اسم الدليل (`ultraviolet-v0.1.0`) ثابتًا — إذ ترتبط به وحدة تخزين Docker `postgres-data`.

</details>

## ✅ قائمة التحقق للإنتاج

1. خزّن الأسرار في `secrets/`، ولا تضعها أبدًا في git.
2. اضبط `CORS_ALLOWED_ORIGINS` على نطاقات واجهة المستخدم الفعلية فقط.
3. هيّئ `SCAN_ALLOWED_CIDRS` وحدود المضيف/المنفذ.
4. غيّر كلمة مرور الإقلاع و`AUTH_JWT_SECRET` (يرفض `install.sh` القيم النائبة).
5. اضبط `APP_ENV=production` — يرفض uv-api `admin/admin` وكلمات المرور الأقصر من 8 أحرف.
6. أنهِ TLS عند وكيل عكسي — مثال: [`service-env/examples/nginx-tls.conf`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-env/examples/nginx-tls.conf).
7. خلف وكيل: اضبط `AUDIT_TRUST_PROXY_HEADERS=true`.
8. انقل PostgreSQL نسخة احتياطية: [`service-env/scripts/backup.sh`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-env/scripts/backup.sh) + cron؛ وينشئ `upgrade.sh` أيضًا تفريغًا للبيانات.
9. المقاييس على `:9090/metrics`؛ Grafana عبر ملف `observability`.
10. حدّث GeoIP: [`service-env/scripts/geoip-refresh.sh`](https://github.com/yakushstanislav/ultraviolet/blob/master/service-env/scripts/geoip-refresh.sh) عبر مهمة cron شهرية.

<details>
<summary><strong>HTTPS والنشر بمسار فرعي وcron للنسخ الاحتياطي</strong></summary>

**إنهاء TLS على nginx خارجي** — اربط واجهة المستخدم بالحلقة المحلية (loopback) فقط:

```yaml
# docker-compose.override.yml
services:
  service-frontend:
    ports:
      - "127.0.0.1:3000:8080"
```

```bash
CORS_ALLOWED_ORIGINS=https://ultraviolet.example.com
AUDIT_TRUST_PROXY_HEADERS=true
```

**المسار الفرعي** (`/ultraviolet/`):

```bash
VITE_BASE_PATH=/ultraviolet/ make frontend-build
# UV_BASE_PATH=/ultraviolet/ in compose — must match VITE_BASE_PATH
```

**مهمة cron للنسخ الاحتياطي** (يوميًا، مع احتفاظ لمدة 14 يومًا):

```cron
0 3 * * * cd /opt/ultraviolet/service-env && ./scripts/backup.sh && find backups -name 'uv-*.dump' -mtime +14 -delete
```

**تحديث GeoIP** (الأول من كل شهر):

```cron
0 4 1 * * cd /opt/ultraviolet/service-env && ./scripts/geoip-refresh.sh >> /var/log/uv-geoip.log 2>&1
```

</details>

## 🔐 API والتحكم بالوصول (RBAC)

بعد تنفيذ `POST /v1/auth/login` تستلم `access_token` (Bearer) و`refresh_token` (`/v1/auth/refresh`).

| الدور | الصلاحيات |
|------|--------------|
| `viewer` | قراءة المضيفين، البحث، الثغرات (CVEs)، لوحة المعلومات |
| `operator` | + بدء وإدارة عمليات الفحص |
| `admin` | + المستخدمون، التدقيق، الإعدادات |

`GET /v1/me` · `GET /v1/version` · `GET /readyz` (الصحة + الإصدار + الالتزام).

## 🤝 المساهمة

انظر [CONTRIBUTING.md](https://github.com/yakushstanislav/ultraviolet/blob/master/CONTRIBUTING.md). تقارير الأمان: [SECURITY.md](https://github.com/yakushstanislav/ultraviolet/blob/master/SECURITY.md). معايير المجتمع: [CODE_OF_CONDUCT.md](https://github.com/yakushstanislav/ultraviolet/blob/master/CODE_OF_CONDUCT.md).

## 📄 الرخصة

UltraViolet مُتاح بموجب [رخصة MIT](https://github.com/yakushstanislav/ultraviolet/blob/master/LICENSE).

---

<p align="center">
  <sub>UltraViolet — اكتشف ما تملكه، وافهم ما تغيّر، وأبقِه على شبكتك.</sub>
</p>
تنزيل الأداة