
قوالب Nuclei للإصدار المجتمعي، أداة بسيطة تتيح لك تنظيم جميع قوالب Nuclei المقدمة من المجتمع في مكان واحد

قوالب nuclei لإصدار المجتمع، أداة بسيطة تتيح لك تنظيم جميع قوالب Nuclei التي يقدمها المجتمع في مكان واحد.
go install -v github.com/xm1k3/cent/v2@latest
بعد التثبيت، قم بتشغيل cent init لتهيئة cent مع ملفات الإعداد التي تجدها هنا
Flags:
--config string config file (default is .config/cent/.cent.yaml)
-r, --by-repo Group templates by repository (use with -k)
-C, --console Print console output
-k, --keep-folders Keep templates organized in folders by category
-p, --path string Root path to save the templates (default "cent-nuclei-templates")
-t, --threads int Number of threads to use when cloning repositories (default 10)
-T, --timeout int Timeout in minutes for each git clone (default 2)
cent -h
cent check -h
cent init -h
cent update -h
cent summary -h
cent validate -h
cent version
استنسخ جميع قوالب المجتمع وأدرجها في مجلد cent-nuclei-templates
cent -p cent-nuclei-templates
مثال على الإخراج:
cent started
[CLONED] https://github.com/projectdiscovery/nuclei-templates
[CLONED] https://github.com/0xSojalSec/nuclei-templates-4
[CLONED] https://github.com/0xPugazh/my-nuclei-templates
[CLONED] https://github.com/0xSojalSec/my-nuclei-templates-1
[CLONED] https://github.com/0x727/ObserverWard
[CLONED] https://github.com/0xAwali/Blind-SSRF
[CLONED] https://github.com/0x727/ObserverWard_0x727
[CLONED] https://github.com/0xAwali/Virtual-Host
[CLONED] https://github.com/0xSojalSec/Nuclei-Templates-API-Linkfinder
...
...
...
cent finished, you can find all your nuclei-templates in cent-nuclei-templates
استخدم خيار -k للاحتفاظ بالبنية الداخلية للمجلدات في كل مستودع:
cent -p cent-nuclei-templates -k
سيؤدي هذا إلى إنشاء بنية مجلدات مثل:
cent-nuclei-templates/
cves/
CVE-2021-1234.yaml
vulnerabilities/
template.yaml
others/
uncategorized-template.yaml
يتم وضع القوالب التي لا تحتوي على مجلد فرعي في مستودعها المصدر في others/.
استخدم -k -r أيضًا لتجميع القوالب حسب المستودع المصدر:
cent -p cent-nuclei-templates -k -r
cent-nuclei-templates/
projectdiscovery/nuclei-templates/
cves/
CVE-2021-1234.yaml
vulnerabilities/
template.yaml
user/repo-name/
others/
custom-template.yaml
يوفر أمر summary إحصائيات مفصلة حول مجموعة قوالب nuclei الخاصة بك:
# Display summary in table format
cent summary
# Display summary in JSON format
cent summary --json
# Limit number of tags displayed (default: 25)
cent summary --limit 10
# Search for specific data in summary
cent summary --search cve
cent summary --search wordpress
cent summary --search critical
# Update summary data
cent summary update
# Update with custom path
cent summary update -p /path/to/templates
=== NUCLEI TEMPLATES SUMMARY ===
+-------------------+-------+
| METRIC | COUNT |
+-------------------+-------+
| Total Templates | 3249 |
| CVE Templates | 3821 |
| Invalid Templates | 1 |
| Valid Templates | 3248 |
+-------------------+-------+
=== SEVERITY DISTRIBUTION ===
+----------+-------+
| SEVERITY | COUNT |
+----------+-------+
| CRITICAL | 582 |
| HIGH | 877 |
| MEDIUM | 877 |
| LOW | 63 |
| INFO | 744 |
+----------+-------+
=== TOP TAGS ===
+---------------+-------+
| TAG | COUNT |
+---------------+-------+
| cve | 1909 |
| xss | 569 |
| wordpress | 487 |
| lfi | 459 |
| wp-plugin | 450 |
+---------------+-------+
{
"metrics": {
"total_templates": 3249,
"cve_templates": 3821,
"invalid_templates": 1,
"valid_templates": 3248
},
"severity_distribution": {
"CRITICAL": 582,
"HIGH": 877,
"MEDIUM": 877,
"LOW": 63,
"INFO": 744
},
"tags": {
"cve": 1909,
"xss": 569,
"wordpress": 487
},
"last_updated": "2024-01-15 14:30:25"
}
إذا قمت بتحديث ملف cent.yaml بإضافة مجلدات جديدة
exclude-dirs:
- ...
- dns
- ...
فقط نفّذ:
cent update -p cent-nuclei-templates -d
وسيقوم cent تلقائيًا بحذف جميع مجلدات dns الموجودة في cent-nuclei-templates دون استنساخ جميع مستودعات github.
مثال على الإخراج:
[D][-] Dir removed cent-nuclei-templates/dns
[D][-] Dir removed cent-nuclei-templates/dns/subdomain
نفس الأمر مع exclude-files
cent update -p cent-nuclei-templates -f
# Initialize with default configuration
cent init
# Initialize with custom URL
cent init --url https://example.com/config.yaml
# Overwrite existing configuration
cent init --overwrite
# Check if configuration file exists
cent init check
# Check if all template repositories are accessible
cent check
# Remove inaccessible repositories from config
cent check --remove
بمجرد تكوين cent بشكل صحيح، يمكنك إجراء فحص باستخدام Nuclei.
مثال
nuclei -u https://example.com -t ./cent-nuclei-templates -tags cve
nuclei -l urls.txt -t ./cent-nuclei-templates -tags cve
انظر هنا لمزيد من الوثائق حول Nuclei
تحتاج إلى تكوين معاملات cent في .config/cent/.cent.yaml
# Directories to exclude
exclude-dirs:
- .git
# Files to exclude
exclude-files:
- README.md
- .gitignore
- .pre-commit-config.yaml
- LICENSE
# Add github urls (simple format)
community-templates:
- https://github.com/projectdiscovery/nuclei-templates
- https://github.com/other/repo
# Extended format: pin a repo to a specific commit
- url: https://github.com/user/repo
commit: abc123f
# Extended format: per-repo exclude
- url: https://github.com/user/repo2
exclude:
- "workflows/"
- "fuzzing/"
يمكن خلط كلا الصيغتين في نفس ملف الإعداد. عند تحديد commit، سيقوم cent باستنساخ المستودع بالكامل والتبديل إلى ذلك الالتزام المحدد بدلاً من استخدام استنساخ ضحل. يقوم خيار exclude على مستوى المستودع بتصفية المسارات المطابقة من ذلك المستودع المحدد.
إخلاء المسؤولية: مطور هذه الأداة غير مسؤول عن كيفية استخدام المجتمع للقوالب مفتوحة المصدر المجمعة داخلها. لم يتم التحقق من صحة هذه القوالب من قبل Project Discovery ويتم توفيرها كما هي.
يتم توزيع Cent بموجب رخصة Apache-2.0
| Command | Description |
|---|
| check | التحقق من أن مستودعات القوالب لا تزال متاحة |
| init | ملف إعداد تهيئة cent |
| summary | طباعة ملخص تفصيلي لقوالب nuclei |
| update | تحديث المستودع الخاص بك |
| validate | التحقق من صحة القوالب، إذا كان القالب غير صالح يتم حذفه من المجلد |
| version | طباعة إصدار cent |