diff --git a/README_CN.md b/README_CN.md index 22d013618f..59457b8eb1 100644 --- a/README_CN.md +++ b/README_CN.md @@ -1,461 +1,664 @@ -

-
- Nuclei -

+![nuclei](/static/nuclei-cover-image.png) -

基于YAML语法模板的定制化快速漏洞扫描器

- - -

- - - - - - - - -

+
+ + `English` • + `中文` • + `Korean` • + `Indonesia` • + `Spanish` • + `日本語` • + `Portuguese` • + `Türkçe` + +

- 工作流程 • - 安装 • - 对于安全工程师 • - 对于开发者 • - 文档 • - 致谢 • - 常见问题 • - 加入Discord -

-

- English • - 中文 • - Korean • - Indonesia • - Spanish • - Portuguese -

+ +   + +   + ---- +
-Nuclei使用零误报的定制模板向目标发送请求,同时可以对主机进行批量快速扫描。Nuclei提供TCP、DNS、HTTP、FILE等各类协议的扫描,通过强大且灵活的模板,可以使用Nuclei模拟各种安全检查。 +

-我们的[模板仓库](https://github.com/projectdiscovery/nuclei-templates)包含**超过300名**安全研究员和工程师提供的模板。 +
+**Nuclei 是一款现代化的高性能漏洞扫描器,基于简单的 YAML 模板。它让您能够设计模拟真实场景的自定义漏洞检测方案,从而实现零误报。** +- 用于创建和定制漏洞模板的简单 YAML 格式。 +- 由数千名安全专业人员贡献,应对最新的漏洞。 +- 通过模拟真实步骤来验证漏洞,降低误报。 +- 超快的并行扫描处理和请求集群化。 +- 可集成到 CI/CD 流水线中进行漏洞检测和回归测试。 +- 支持多种协议,包括 TCP、DNS、HTTP、SSL、WHOIS、JavaScript、Code 等。 +- 可与 Jira、Splunk、GitHub、Elastic、GitLab 集成。 -## 工作流程 +
+
+## 目录 -

- nuclei-flow -

+- [**`快速开始`**](#快速开始) + - [_`1. Nuclei CLI`_](#1-nuclei-cli) + - [_`2. Pro 与企业版`_](#2-pro-与企业版) +- [**`文档`**](#文档) + - [_`命令行参数`_](#命令行参数) + - [_`单目标扫描`_](#单目标扫描) + - [_`多目标扫描`_](#多目标扫描) + - [_`网络扫描`_](#网络扫描) + - [_`使用自定义模板扫描`_](#使用自定义模板扫描) + - [_`将 Nuclei 连接到 ProjectDiscovery`_](#将-nuclei-连接到-projectdiscovery) +- [**`Nuclei 模板、社区与奖励`**](#nuclei-模板社区与奖励-) 💎 +- [**`我们的使命`**](#我们的使命) +- [**`贡献者`**](#贡献者-heart) ❤ +- [**`许可证`**](#许可证) -| :exclamation: **免责声明** | -|---------------------------------| -| **这个项目正在积极开发中**。预计发布会带来突破性的更改。更新前请查看版本更改日志。 | -| 这个项目主要是为了作为一个独立的命令行工具而构建的。 **将Nuclei作为服务运行可能存在安全风险。** 强烈建议谨慎使用,并采取额外的安全措施。 | +
+
-# 安装Nuclei +## 快速开始 -Nuclei需要 **go1.24.2** 才能安装成功。执行下列命令安装最新版本的Nuclei +### **1. Nuclei CLI** -```sh -go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest -``` +_在您的机器上安装 Nuclei。请按照[**`此处`**](https://docs.projectdiscovery.io/tools/nuclei/install?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)的安装指南开始使用。此外,我们还提供[**`免费的云服务套餐`**](https://cloud.projectdiscovery.io/sign-up),并附带慷慨的每月免费额度:_ -
- Brew - - ```sh - brew install nuclei - ``` - -
-
- Docker - - ```sh - docker pull projectdiscovery/nuclei:latest - ``` - -
+- 存储和可视化您的漏洞发现 +- 编写并管理您的 nuclei 模板 +- 获取最新的 nuclei 模板 +- 发现并保存您的目标 -**更多的安装方式 [请点击此处](https://nuclei.projectdiscovery.io/nuclei/get-started/).** +> [!Important] +> |**本项目正在积极开发中**。每个版本都可能带来破坏性变更。更新前请阅读发布说明。| +> |:--------------------------------| +> | 本项目主要用作独立的 CLI 工具。**将 nuclei 作为服务运行可能会带来安全风险。** 建议谨慎使用并采取额外的安全防护措施。 | - - - - -
+
-### Nuclei模板 +### **2. Pro 与企业版** -自从[v2.5.2]((https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2))起,Nuclei就内置了自动下载和更新模板的功能。[**Nuclei模板**](https://github.com/projectdiscovery/nuclei-templates)仓库随时更新社区中可用的模板列表。 +_针对安全团队和企业,我们提供了构建在 Nuclei OSS 之上的云托管服务,专门优化以帮助您的团队按现有工作流程持续、大规模地运行漏洞扫描:_ -您仍然可以随时使用`update-templates`命令更新模板,您可以根据[模板指南](https://nuclei.projectdiscovery.io/templating-guide/)为您的个人工作流和需求编写模板。 +- 扫描速度提升 50 倍 +- 高精度的大规模扫描 +- 与云服务集成(AWS、GCP、Azure、Cloudflare、Fastly、Terraform、Kubernetes) +- 集成 Jira、Slack、Linear、API 和 Webhook +- 提供管理层报告和合规报告 +- 此外:实时扫描、SAML SSO、符合 SOC 2 标准的平台(提供欧盟与美国两种托管选项)、团队共享工作区等 +- 我们正在持续[**`增加新功能`**](https://feedback.projectdiscovery.io/changelog)! +- **适合:** 渗透测试人员、安全团队和企业 -YAML的语法规范在[这里](SYNTAX-REFERENCE.md)。 +如果您所在的组织规模较大或需求较复杂,请[**`注册 Pro`**](https://projectdiscovery.io/pricing?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)或[**`与我们的团队联系`**](https://projectdiscovery.io/request-demo?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)。 -
+
+
-### 用法 +## 文档 -```sh -nuclei -h -``` +请浏览 Nuclei 的[**`完整文档`**](https://docs.projectdiscovery.io/tools/nuclei/running)。如果您刚接触 Nuclei,可以观看我们的[**`基础 YouTube 系列教程`**](https://www.youtube.com/playlist?list=PLZRbR9aMzTTpItEdeNSulo8bYsvil80Rl)。 -这将显示Nuclei的帮助,以下是所有支持的命令。 - - -```console -Nuclei是一款注重于可配置性、可扩展性和易用性的基于模板的快速漏洞扫描器。 - -用法: - nuclei [命令] - -命令: -目标: - -u, -target string[] 指定扫描的目标URL/主机(多个目标则指定多个-u参数) - -l, -list string 指定包含要扫描的目标URL/主机列表的文件路径(一行一个) - -resume string 从指定文件恢复扫描并保存到指定文件(将禁用请求聚类) - -sa, -scan-all-ips 扫描由目标解析出来的所有IP(针对域名对应多个IP的情况) - -iv, -ip-version string[] 要扫描的主机名的IP版本(4,6)-(默认为4) - -模板: - -nt, -new-templates 仅运行最新发布的nuclei模板 - -ntv, -new-templates-version string[] 仅运行特定版本中添加的新模板 - -as, -automatic-scan 基于Wappalyzer技术的标签映射自动扫描 - -t, -templates string[] 指定要运行的模板或者模板目录(以逗号分隔或目录形式) - -turl, -template-url string[] 指定要运行的模板URL或模板目录URL(以逗号分隔或目录形式) - -w, -workflows string[] 指定要运行的工作流或工作流目录(以逗号分隔或目录形式) - -wurl, -workflow-url string[] 指定要运行的工作流URL或工作流目录URL(以逗号分隔或目录形式) - -validate 使用nuclei验证模板有效性 - -nss, -no-strict-syntax 禁用对模板的严格检查 - -td, -template-display 显示模板内容 - -tl 列出所有可用的模板 - -sign 使用NUCLEI_SIGNATURE_PRIVATE_KEY环境变量中的私钥对模板进行签名 - -code 启用加载基于协议的代码模板 - -过滤: - -a, -author string[] 执行指定作者的模板(逗号分隔,文件) - -tags string[] 执行带指定tag的模板(逗号分隔,文件) - -etags, -exclude-tags string[] 排除带指定tag的模板(逗号分隔,文件) - -itags, -include-tags string[] 执行带有指定tag的模板,即使是被默认或者配置排除的模板 - -id, -template-id string[] 执行指定id的模板(逗号分隔,文件) - -eid, -exclude-id string[] 排除指定id的模板(逗号分隔,文件) - -it, -include-templates string[] 执行指定模板,即使是被默认或配置排除的模板 - -et, -exclude-templates string[] 排除指定模板或者模板目录(逗号分隔,文件) - -em, -exclude-matchers string[] 排除指定模板matcher - -s, -severity value[] 根据严重程度运行模板,可选值有:info,low,medium,high,critical - -es, -exclude-severity value[] 根据严重程度排除模板,可选值有:info,low,medium,high,critical - -pt, -type value[] 根据类型运行模板,可选值有:dns, file, http, headless, network, workflow, ssl, websocket, whois - -ept, -exclude-type value[] 根据类型排除模板,可选值有:dns, file, http, headless, network, workflow, ssl, websocket, whois - -tc, -template-condition string[] 根据表达式运行模板 - - -输出: - -o, -output string 输出发现的问题到文件 - -sresp, -store-resp 将nuclei的所有请求和响应输出到目录 - -srd, -store-resp-dir string 将nuclei的所有请求和响应输出到指定目录(默认:output) - -silent 只显示结果 - -nc, -no-color 禁用输出内容着色(ANSI转义码) - -j, -jsonl 输出格式为jsonL(ines) - -irr, -include-rr 在JSON、JSONL和Markdown中输出请求/响应对(仅结果)[已弃用,使用-omit-raw替代] - -or, -omit-raw 在JSON、JSONL和Markdown中不输出请求/响应对 - -ot, -omit-template 省略JSON、JSONL输出中的编码模板 - -nm, -no-meta 在cli输出中不打印元数据 - -ts, -timestamp 在cli输出中打印时间戳 - -rdb, -report-db string 本地的nuclei结果数据库(始终使用该数据库保存结果) - -ms, -matcher-status 显示匹配失败状态 - -me, -markdown-export string 以markdown格式导出结果 - -se, -sarif-export string 以SARIF格式导出结果 - -je, -json-export string 以JSON格式导出结果 - -jle, -jsonl-export string 以JSONL(ine)格式导出结果 - - -配置: - -config string 指定nuclei的配置文件 - -fr, -follow-redirects 为HTTP模板启用重定向 - -fhr, -follow-host-redirects 允许在同一主机上重定向 - -mr, -max-redirects int HTTP模板最大重定向次数(默认:10) - -dr, -disable-redirects 为HTTP模板禁用重定向 - -rc, -report-config string 指定nuclei报告模板文件 - -H, -header string[] 指定在所有http请求中包含的自定义header、cookie,以header:value的格式指定(cli,文件) - -V, -var value 以key=value格式自定义变量 - -r, -resolvers string 指定包含DNS解析服务列表的文件 - -sr, -system-resolvers 当DNS错误时使用系统DNS解析服务 - -dc, -disable-clustering 关闭请求聚类功能 - -passive 启用被动模式处理本地HTTP响应数据 - -fh2, -force-http2 强制使用http2连接 - -ev, env-vars 启用在模板中使用环境变量 - -cc, -client-cert string 用于对扫描的主机进行身份验证的客户端证书文件(PEM 编码) - -ck, -client-key string 用于对扫描的主机进行身份验证的客户端密钥文件(PEM 编码) - -ca, -client-ca string 用于对扫描的主机进行身份验证的客户端证书颁发机构文件(PEM 编码) - -sml, -show-match-line 显示文件模板的匹配值,只适用于提取器 - -ztls 使用ztls库,带有自动回退到标准库tls13 [已弃用] 默认情况下启用对ztls的自动回退 - -sni string 指定tls sni的主机名(默认为输入的域名) - -lfa, -allow-local-file-access 允许访问本地文件(payload文件) - -lna, -restrict-local-network-access 阻止对本地/私有网络的连接 - -i, -interface string 指定用于网络扫描的网卡 - -at, -attack-type string payload的组合模式(batteringram,pitchfork,clusterbomb) - -sip, -source-ip string 指定用于网络扫描的源IP - -rsr, -response-size-read int 最大读取响应大小(默认:10485760字节) - -rss, -response-size-save int 最大储存响应大小(默认:1048576字节) - -reset 删除所有nuclei配置和数据文件(包括nuclei-templates) - -tlsi, -tls-impersonate 启用实验性的Client Hello(ja3)TLS 随机化功能 - - -交互: - -inserver, -ineractsh-server string 使用interactsh反连检测平台(默认为oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) - -itoken, -interactsh-token string 指定反连检测平台的身份凭证 - -interactions-cache-size int 指定保存在交互缓存中的请求数(默认:5000) - -interactions-eviction int 从缓存中删除请求前等待的时间(默认为60秒) - -interactions-poll-duration int 每个轮询前等待时间(默认为5秒) - -interactions-cooldown-period int 退出轮询前的等待时间(默认为5秒) - -ni, -no-interactsh 禁用反连检测平台,同时排除基于反连检测的模板 - - -模糊测试: - -ft, -fuzzing-type string 覆盖模板中设置的模糊测试类型(replace、prefix、postfix、infix) - -fm, -fuzzing-mode string 覆盖模板中设置的模糊测试模式(multiple、single) - - -UNCOVER引擎: - -uc, -uncover 启动uncover引擎 - -uq, -uncover-query string[] uncover查询语句 - -ue, -uncover-engine string[] 指定uncover查询引擎 (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow) (默认 shodan) - -uf, -uncover-field string 查询字段 (ip,port,host) (默认 "ip:port") - -ul, -uncover-limit int 查询结果数 (默认 100) - -ur, -uncover-ratelimit int 查询速率,默认每分钟60个请求(默认 60) - - -限速: - -rl, -rate-limit int 每秒最大请求量(默认:150) - -rlm, -rate-limit-minute int 每分钟最大请求量 - -bs, -bulk-size int 每个模板最大并行检测数(默认:25) - -c, -concurrency int 并行执行的最大模板数量(默认:25) - -hbs, -headless-bulk-size int 每个模板并行运行的无头主机最大数量(默认:10) - -headc, -headless-concurrency int 并行指定无头主机最大数量(默认:10) - -tlc, -template-loading-concurrency int 最大并发模板加载操作数(默认:50) - - -优化: - -timeout int 超时时间(默认为10秒) - -retries int 重试次数(默认:1) - -ldp, -leave-default-ports 指定HTTP/HTTPS默认端口(例如:host:80,host:443) - -mhe, -max-host-error int 某主机扫描失败次数,跳过该主机(默认:30) - -te, -track-error string[] 将给定错误添加到最大主机错误监视列表(标准、文件) - -nmhe, -no-mhe disable skipping host from scan based on errors - -project 使用项目文件夹避免多次发送同一请求 - -project-path string 设置特定的项目文件夹 - -spm, -stop-at-first-path 得到一个结果后停止(或许会中断模板和工作流的逻辑) - -stream 流模式 - 在不整理输入的情况下详细描述 - -ss, -scan-strategy value 扫描时使用的策略(auto/host-spray/template-spray) (默认 auto) - -irt, -input-read-timeout duration 输入读取超时时间(默认:3分钟) - -nh, -no-httpx 禁用对非URL输入进行httpx探测 - -no-stdin 禁用标准输入 - -无界面浏览器: - -headless 启用需要无界面浏览器的模板 - -page-timeout int 在无界面下超时秒数(默认:20) - -sb, -show-brower 在无界面浏览器运行模板时,显示浏览器 - -ho, -headless-options string[] 使用附加选项启动无界面浏览器 - -sc, -system-chrome 不使用Nuclei自带的浏览器,使用本地浏览器 - -cdpe, -cdp-endpoint string 通过Chrome DevTools Protocol (CDP)端点使用远程浏览器 - -lha, -list-headless-action 列出可用的无界面操作 - -调试: - -debug 显示所有请求和响应 - -dreq, -debug-req 显示所有请求 - -dresp, -debug-resp 显示所有响应 - -p, -proxy string[] 使用http/socks5代理(逗号分隔,文件) - -pi, -proxy-internal 代理所有请求 - -ldf, -list-dsl-function 列出所有支持的DSL函数签名 - -tlog, -trace-log string 写入跟踪日志到文件 - -elog, -error-log string 写入错误日志到文件 - -version 显示版本信息 - -hm, -hang-monitor 启用对nuclei挂起协程的监控 - -v, -verbose 显示详细信息 - -profile-mem string 将Nuclei的内存转储成文件 - -vv 显示额外的详细信息 - -svd, -show-var-dump 显示用于调试的变量输出 - -ep, -enable-pprof 启用pprof调试服务器 - -tv, -templates-version 显示已安装的模板版本 - -hc, -health-check 运行诊断检查 - -升级: - -up, -update 更新Nuclei到最新版本 - -ut, -update-templates 更新Nuclei模板到最新版 - -ud, -update-template-dir string 指定模板目录 - -duc, -disable-update-check 禁用nuclei程序与模板更新 +
-HONEYPOT: - -hpd, -honeypot-detect detect potential honeypot hosts based on match concentration - -hpt, -honeypot-threshold int number of distinct template IDs required to flag a honeypot host (default 15) - -shp, -suppress-honeypot suppress output for flagged honeypot hosts - -统计: - -stats 显示正在扫描的统计信息 - -sj, -stats-json 将统计信息以JSONL格式输出到文件 - -si, -stats-inerval int 显示统计信息更新的间隔秒数(默认:5) - -mp, -metrics-port int 更改metrics服务的端口(默认:9092) - -云服务: - -auth 配置projectdiscovery云服务(pdcp)API密钥 - -cup, -cloud-upload 将扫描结果上传到pdcp仪表板 - -sid, -scan-id string 将扫描结果上传到指定的扫描ID - -例子: -扫描一个单独的URL: - $ nuclei -target example.com + -对URL运行指定的模板: - $ nuclei -target example.com -t http/cves/ -t ssl +
-扫描hosts.txt中的多个URL: - $ nuclei -list hosts.txt +
-输出结果为JSON格式: - $ nuclei -target example.com -json-export output.json +### 安装 -使用已排序的Markdown输出(使用环境变量)运行nuclei: - $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ +`nuclei` 需要 **go >= 1.24.2** 才能成功安装。运行以下命令获取仓库: +```sh +go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest ``` -更多信息请参考文档: https://docs.projectdiscovery.io/getting-started/running +要了解更多关于安装 nuclei 的信息,请参阅 `https://docs.projectdiscovery.io/tools/nuclei/install`。 +### 命令行参数 -### 运行Nuclei - -使用[社区提供的模板](https://github.com/projectdiscovery/nuclei-templates)扫描单个目标 - -```sh -nuclei -u https://example.com -``` - -使用[社区提供的模板](https://github.com/projectdiscovery/nuclei-templates)扫描多个目标 +显示该工具所有的参数: ```sh -nuclei -list urls.txt +nuclei -h ``` -Example of `urls.txt`: +
+ 展开完整的帮助参数 ```yaml -http://example.com -http://app.example.com -http://test.example.com -http://uat.example.com -``` +Nuclei is a fast, template based vulnerability scanner focusing +on extensive configurability, massive extensibility and ease of use. + +Usage: + ./nuclei [flags] + +Flags: +TARGET: + -u, -target string[] target URLs/hosts to scan + -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) + -eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname) + -resume string resume scan from and save to specified file (clustering will be disabled) + -sa, -scan-all-ips scan all the IP's associated with dns record + -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) + +TARGET-FORMAT: + -im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger) (default "list") + -ro, -required-only use only required fields in input format when generating requests + -sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file + +TEMPLATES: + -nt, -new-templates run only new templates added in latest nuclei-templates release + -ntv, -new-templates-version string[] run new templates added in specific version + -as, -automatic-scan automatic web scan using wappalyzer technology detection to tags mapping + -t, -templates string[] list of template or template directory to run (comma-separated, file) + -turl, -template-url string[] template url or list containing template urls to run (comma-separated, file) + -ai, -prompt string generate and run template using ai prompt + -w, -workflows string[] list of workflow or workflow directory to run (comma-separated, file) + -wurl, -workflow-url string[] workflow url or list containing workflow urls to run (comma-separated, file) + -validate validate the passed templates to nuclei + -nss, -no-strict-syntax disable strict syntax check on templates + -td, -template-display displays the templates content + -tl list all templates matching current filters + -tgl list all available tags + -sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable + -code enable loading code protocol-based templates + -dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature + -esc, -enable-self-contained enable loading self-contained templates + -egm, -enable-global-matchers enable loading global matchers templates + -file enable loading file templates + +FILTERING: + -a, -author string[] templates to run based on authors (comma-separated, file) + -tags string[] templates to run based on tags (comma-separated, file) + -etags, -exclude-tags string[] templates to exclude based on tags (comma-separated, file) + -itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration + -id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard) + -eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file) + -it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration + -et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file) + -em, -exclude-matchers string[] template matchers to exclude in result + -s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown + -es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown + -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -tc, -template-condition string[] templates to run based on expression condition + +OUTPUT: + -o, -output string output file to write found issues/vulnerabilities + -sresp, -store-resp store all request/response passed through nuclei to output directory + -srd, -store-resp-dir string store all request/response passed through nuclei to custom directory (default "output") + -silent display findings only + -nc, -no-color disable output content coloring (ANSI escape codes) + -j, -jsonl write output in JSONL(ines) format + -irr, -include-rr -omit-raw include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) + -or, -omit-raw omit request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) + -ot, -omit-template omit encoded template in the JSON, JSONL output + -nm, -no-meta disable printing result metadata in cli output + -ts, -timestamp enables printing timestamp in cli output + -rdb, -report-db string nuclei reporting database (always use this to persist report data) + -ms, -matcher-status display match failure status + -me, -markdown-export string directory to export results in markdown format + -se, -sarif-export string file to export results in SARIF format + -je, -json-export string file to export results in JSON format + -jle, -jsonl-export string file to export results in JSONL(ine) format + -rd, -redact string[] redact given list of keys from query parameter, request header and body + +CONFIGURATIONS: + -config string path to the nuclei configuration file + -tp, -profile string template profile config file to run + -tpl, -profile-list list community template profiles + -fr, -follow-redirects enable following redirects for http templates + -fhr, -follow-host-redirects follow redirects on the same host + -mr, -max-redirects int max number of redirects to follow for http templates (default 10) + -dr, -disable-redirects disable redirects for http templates + -rc, -report-config string nuclei reporting module configuration file + -H, -header string[] custom header/cookie to include in all http request in header:value format (cli, file) + -V, -var value custom vars in key=value format + -r, -resolvers string file containing resolver list for nuclei + -sr, -system-resolvers use system DNS resolving as error fallback + -dc, -disable-clustering disable clustering of requests + -passive enable passive HTTP response processing mode + -fh2, -force-http2 force http2 connection on requests + -ev, -env-vars enable environment variables to be used in template + -cc, -client-cert string client certificate file (PEM-encoded) used for authenticating against scanned hosts + -ck, -client-key string client key file (PEM-encoded) used for authenticating against scanned hosts + -ca, -client-ca string client certificate authority file (PEM-encoded) used for authenticating against scanned hosts + -sml, -show-match-line show match lines for file templates, works with extractors only + -ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default + -sni string tls sni hostname to use (default: input domain name) + -dka, -dialer-keep-alive value keep-alive duration for network requests. + -lfa, -allow-local-file-access allows file (payload) access anywhere on the system + -lna, -restrict-local-network-access blocks connections to the local / private network + -i, -interface string network interface to use for network scan + -at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb) + -sip, -source-ip string source ip address to use for network scan + -rsr, -response-size-read int max response size to read in bytes + -rss, -response-size-save int max response size to read in bytes (default 1048576) + -reset reset removes all nuclei configuration and data files (including nuclei-templates) + -tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization + -hae, -http-api-endpoint string experimental http api endpoint + +INTERACTSH: + -iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) + -itoken, -interactsh-token string authentication token for self-hosted interactsh server + -interactions-cache-size int number of requests to keep in the interactions cache (default 5000) + -interactions-eviction int number of seconds to wait before evicting requests from cache (default 60) + -interactions-poll-duration int number of seconds to wait before each interaction poll request (default 5) + -interactions-cooldown-period int extra time for interaction polling before exiting (default 5) + -ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates + +FUZZING: + -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) + -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -fuzz enable loading fuzzing templates (Deprecated: use -dast instead) + -dast enable / run dast (fuzz) nuclei templates + -dts, -dast-server enable dast server mode (live fuzzing) + -dtr, -dast-report write dast scan report to file + -dtst, -dast-server-token string dast server token (optional) + -dtsa, -dast-server-address string dast server address (default "localhost:9055") + -dfp, -display-fuzz-points display fuzz points in the output for debugging + -fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10) + -fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low") + -cs, -fuzz-scope string[] in scope url regex to be followed by fuzzer + -cos, -fuzz-out-scope string[] out of scope url regex to be excluded by fuzzer + +UNCOVER: + -uc, -uncover enable uncover engine + -uq, -uncover-query string[] uncover search query + -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan) + -uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port") + -ul, -uncover-limit int uncover results to return (default 100) + -ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60) + +RATE-LIMIT: + -rl, -rate-limit int maximum number of requests to send per second (default 150) + -rld, -rate-limit-duration value maximum number of requests to send per second (default 1s) + -rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED) + -bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25) + -c, -concurrency int maximum number of templates to be executed in parallel (default 25) + -hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10) + -headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10) + -jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120) + -pc, -payload-concurrency int max payload concurrency for each template (default 25) + -prc, -probe-concurrency int http probe concurrency with httpx (default 50) + -tlc, -template-loading-concurrency int maximum number of concurrent template loading operations (default 50) + +OPTIMIZATIONS: + -timeout int time to wait in seconds before timeout (default 10) + -retries int number of times to retry a failed request (default 1) + -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) + -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) + -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) + -nmhe, -no-mhe disable skipping host from scan based on errors + -project use a project folder to avoid sending same request multiple times + -project-path string set a specific project path (default "/tmp") + -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) + -stream stream mode - start elaborating without sorting the input + -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) + -irt, -input-read-timeout value timeout on input read (default 3m0s) + -nh, -no-httpx disable httpx probing for non-url input + -no-stdin disable stdin processing + +HEADLESS: + -headless enable templates that require headless browser support (root user on Linux will disable sandbox) + -page-timeout int seconds to wait for each page in headless mode (default 20) + -sb, -show-browser show the browser on the screen when running templates with headless mode + -ho, -headless-options string[] start headless chrome with additional options + -sc, -system-chrome use local installed Chrome browser instead of nuclei installed + -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint + -lha, -list-headless-action list available headless actions + +DEBUG: + -debug show all requests and responses + -dreq, -debug-req show all sent requests + -dresp, -debug-resp show all received responses + -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) + -pi, -proxy-internal proxy all internal requests + -ldf, -list-dsl-function list all supported DSL function signatures + -tlog, -trace-log string file to write sent requests trace log + -elog, -error-log string file to write sent requests error log + -version show nuclei version + -hm, -hang-monitor enable nuclei hang monitoring + -v, -verbose show verbose output + -profile-mem string generate memory (heap) profile & trace files + -vv display templates loaded for scan + -svd, -show-var-dump show variables dump for debugging + -vdl, -var-dump-limit int limit the number of characters displayed in var dump (default 255) + -ep, -enable-pprof enable pprof debugging server + -tv, -templates-version shows the version of the installed nuclei-templates + -hc, -health-check run diagnostic check up + +UPDATE: + -up, -update update nuclei engine to the latest released version + -ut, -update-templates update nuclei-templates to latest released version + -ud, -update-template-dir string custom directory to install / update nuclei-templates + -duc, -disable-update-check disable automatic nuclei/templates update check -**更多关于Nuclei的详细实例可以在[这里](https://nuclei.projectdiscovery.io/nuclei/get-started/#running-nuclei)找到** +HONEYPOT: + -hpd, -honeypot-detect detect potential honeypot hosts based on match concentration + -hpt, -honeypot-threshold int number of distinct template IDs required to flag a honeypot host (default 15) + -shp, -suppress-honeypot suppress output for flagged honeypot hosts + +STATISTICS: + -stats display statistics about the running scan + -sj, -stats-json display statistics in JSONL(ines) format + -si, -stats-interval int number of seconds to wait between showing a statistics update (default 5) + -mp, -metrics-port int port to expose nuclei metrics on (default 9092) + -hps, -http-stats enable http status capturing (experimental) + +CLOUD: + -auth configure projectdiscovery cloud (pdcp) api key (default true) + -tid, -team-id string upload scan results to given team id (optional) (default "none") + -cup, -cloud-upload upload scan results to pdcp dashboard [DEPRECATED use -dashboard] + -sid, -scan-id string upload scan results to existing scan id (optional) + -sname, -scan-name string scan name to set (optional) + -pd, -dashboard upload / view nuclei results in projectdiscovery cloud (pdcp) UI dashboard + -pdu, -dashboard-upload string upload / view nuclei results file (jsonl) in projectdiscovery cloud (pdcp) UI dashboard + +AUTHENTICATION: + -sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan + -ps, -prefetch-secrets prefetch secrets from the secrets file + # NOTE: Headers in secrets files preserve exact casing (useful for case-sensitive APIs) + + +EXAMPLES: +Run nuclei on single host: + $ nuclei -target example.com -# 对于安全工程师 +Run nuclei with specific template directories: + $ nuclei -target example.com -t http/cves/ -t ssl -Nuclei提供了大量有助于安全工程师在工作流定制相关的功能。通过各种扫描功能(如DNS、HTTP、TCP),安全工程师可以更轻松的使用Nuclei创建一套自定义的检查方式。 +Run nuclei against a list of hosts: + $ nuclei -list hosts.txt -- 支持多种协议:TCP、DNS、HTTP、FILE等 -- 通过工作流和动态请求实现复杂的漏洞扫描 -- 易于集成到CI/CD,旨在可以轻松的集成到周期扫描中,以主动检测漏洞的修复和重新出现 +Run nuclei with a JSON output: + $ nuclei -target example.com -json-export output.json -

- Learn More -

+Run nuclei with sorted Markdown outputs (with environment variables): + $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ - - - - -
+Additional documentation is available at: https://docs.projectdiscovery.io/getting-started/running -**对于赏金猎人:** +``` -Nuclei允许您定制自己的测试方法,可以轻松的运行您的程序。此外Nuclei可以更容易的集成到您的漏洞扫描工作流中。 +更多文档请访问:[**`docs.projectdiscovery.io/getting-started/running`**](https://docs.projectdiscovery.io/getting-started/running?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) -- 可以集成到其他工作流中 -- 可以在几分钟处理上千台主机 -- 使用YAML语法定制自动化测试 + -欢迎查看我们其他的开源项目,可能有适合您的赏金猎人工作流:[github.com/projectdiscovery](https://github.com/projectdiscovery),我们还使用[Chaos绘制了每日的DNS数据](https://chaos.projectdiscovery.io)。 +### 单目标扫描 -
+对 Web 应用进行快速扫描: - - - - -
+```sh +nuclei -target https://example.com +``` -**对于渗透测试:** +### 多目标扫描 -Nuclei通过增加手动、自动的过程,极大地改变了安全评估的方式。一些公司已经在用Nuclei升级他们的手动测试步骤,可以使用Nulcei对数千台主机使用同样的流程自动化测试。 +Nuclei 可以通过提供一个目标列表来批量扫描。您可以使用一个包含多个 URL 的文件。 -渗透测试员可以使用公共模板或者自定义模板来更快的完成渗透测试,特别是漏洞验证时,可以轻松的验证漏洞是否修复。 +```sh +nuclei -list urls.txt +``` -- 轻松根据您的要求创建标准清单(例如:OWASP TOP 10) -- 通过[FUZZ](https://nuclei.projectdiscovery.io/templating-guide/protocols/http-fuzzing/)和[工作流](https://nuclei.projectdiscovery.io/templating-guide/workflows/)等功能,可以使用Nuclei完成复杂的手动步骤和重复性渗透测试 -- 只需要重新运行Nuclei即可验证漏洞修复情况 +### 网络扫描 -
+这将对整个子网进行扫描,发现开放端口或配置错误的服务等网络相关问题。 -# 对于开发和组织 +```sh +nuclei -target 192.168.1.0/24 +``` -Nuclei构建很简单,通过数百名安全研究员的社区模板,Nuclei可以随时扫描来了解安全威胁。Nuclei通常用来用于复测,以确定漏洞是否被修复。 +### 使用自定义模板扫描 -- **CI/CD:** 工程师已经支持了CI/CD,可以通过Nuclei使用定制模板来监控模拟环境和生产环境 -- **周期性扫描:** 使用Nuclei创建新发现的漏洞模板,通过Nuclei可以周期性扫描消除漏洞 +要编写并使用自己的模板,请创建一个包含具体规则的 `.yaml` 文件,然后按以下方式使用。 -我们有个[讨论组](https://github.com/projectdiscovery/nuclei-templates/discussions/693),黑客提交自己的模板后可以获得赏金,这可以减少资产的漏洞,并且减少重复。如果你想实行该计划,可以[联系我](mailto:contact@projectdiscovery.io)。我们非常乐意提供帮助,或者在[讨论组](https://github.com/projectdiscovery/nuclei-templates/discussions/693)中发布相关信息。 +```sh +nuclei -u https://example.com -t /path/to/your-template.yaml +``` -

- regression-cycle-with-nuclei -

+### 将 Nuclei 连接到 ProjectDiscovery -

- Learn More -

+您可以在本机运行扫描,并将结果上传到云平台以便进一步分析和修复。 -### 将nuclei加入您的代码 +```sh +nuclei -target https://example.com -dashboard +``` -有关使用Nuclei作为Library/SDK的完整指南,请访问[godoc](https://pkg.go.dev/github.com/projectdiscovery/nuclei/v3/lib#section-readme) +> [!NOTE] +> 此功能完全免费,无需订阅。详细指引请参阅[**`文档`**](https://docs.projectdiscovery.io/cloud/scanning/nuclei-scan?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)。 -### 资源 +
+
-- [使用PinkDraconian发现Nuclei的BUG (Robbe Van Roey)](https://www.youtube.com/watch?v=ewP0xVPW-Pk) 作者:[@PinkDraconian](https://twitter.com/PinkDraconian) -- [Nuclei: 强而有力的扫描器](https://bishopfox.com/blog/nuclei-vulnerability-scan) 作者:Bishopfox -- [WAF有效性检查](https://www.fastly.com/blog/the-waf-efficacy-framework-measuring-the-effectiveness-of-your-waf) 作者:Fastly -- [在CI/CD中使用Nuclei实时扫描网页应用](https://blog.escape.tech/devsecops-part-iii-scanning-live-web-applications/) 作者:[@TristanKalos](https://twitter.com/TristanKalos) -- [使用Nuclei扫描](https://blog.projectdiscovery.io/community-powered-scanning-with-nuclei/) -- [Nuclei Unleashed - 快速编写复杂漏洞](https://blog.projectdiscovery.io/nuclei-unleashed-quickly-write-complex-exploits/) -- [Nuclei - FUZZ一切](https://blog.projectdiscovery.io/nuclei-fuzz-all-the-things/) -- [Nuclei + Interactsh Integration,用于自动化OOB测试](https://blog.projectdiscovery.io/nuclei-interactsh-integration/) -- [武器化Nuclei](https://medium.com/@dwisiswant0/weaponizes-nuclei-workflows-to-pwn-all-the-things-cd01223feb77) 作者:[@dwisiswant0](https://github.com/dwisiswant0) -- [如何使用Nuclei连续扫描?](https://medium.com/@dwisiswant0/how-to-scan-continuously-with-nuclei-fcb7e9d8b8b9) 作者:[@dwisiswant0](https://github.com/dwisiswant0) -- [自动化攻击](https://dhiyaneshgeek.github.io/web/security/2021/07/19/hack-with-automation/) 作者:[@DhiyaneshGeek](https://github.com/DhiyaneshGeek) +## Nuclei 模板、社区与奖励 💎 +[**Nuclei 模板**](https://github.com/projectdiscovery/nuclei-templates)的核心理念是基于 YAML 的模板文件,用于定义请求的发送和处理方式。这为 nuclei 提供了简单的可扩展能力。模板使用 YAML 编写,提供了一种简单且易于人类阅读的格式,便于快速定义执行流程。 -### 致谢 +**点击[**`此处`**](https://cloud.projectdiscovery.io/templates)使用我们免费的 AI 驱动 Nuclei 模板编辑器在线体验。** -感谢所有[社区贡献者提供的PR](https://github.com/projectdiscovery/nuclei/graphs/contributors),并不断更新此项目:heart: +Nuclei 模板提供了一种简化的方式来识别和传达漏洞信息,将严重程度评级和检测方法等关键细节结合在一起。这个由社区开发的开源工具加速了威胁响应,并在网络安全领域被广泛认可。Nuclei 模板由全球数千名安全研究人员积极贡献。我们为贡献者提供两个项目:[**`Pioneers`**](https://projectdiscovery.io/pioneers) 和 [**`💎 赏金计划`**](https://github.com/projectdiscovery/nuclei-templates/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22%F0%9F%92%8E%20Bounty%22)。 -如果你有想法或某种改进,欢迎你参与该项目,随时发送你的PR。 -

- - - +

+ 用于检测 TeamCity 配置错误的 Nuclei 模板示例

-另外您可以了解其他类似的开源项目: - -[FFuF](https://github.com/ffuf/ffuf), [Qsfuzz](https://github.com/ameenmaali/qsfuzz), [Inception](https://github.com/proabiral/inception), [Snallygaster](https://github.com/hannob/snallygaster), [Gofingerprint](https://github.com/Static-Flow/gofingerprint), [Sn1per](https://github.com/1N3/Sn1per/tree/master/templates), [Google tsunami](https://github.com/google/tsunami-security-scanner), [Jaeles](https://github.com/jaeles-project/jaeles), [ChopChop](https://github.com/michelin/ChopChop) +#### 示例 + +请访问[**我们的文档**](https://docs.projectdiscovery.io/templates/introduction)了解使用案例和创意。 + +| 使用场景 | Nuclei 模板 | +| :----------------------------------------- | :------------------------------------------------- | +| 检测已知的 CVE | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | +| 识别带外(Out-of-Band)漏洞 | **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | +| SQL 注入检测 | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | +| 跨站脚本攻击(XSS) | **[Reflected XSS Detection](https://cloud.projectdiscovery.io/public/CVE-2023-4173)** | +| 默认或弱密码 | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | +| 敏感文件或数据泄漏 | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | +| 识别开放重定向 | **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | +| 检测子域接管 | **[Subdomain Takeover Templates](https://cloud.projectdiscovery.io/public/azure-takeover-detection)** | +| 安全配置错误 | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | +| 弱 SSL/TLS 配置 | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | +| 配置错误的云服务 | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | +| 远程代码执行漏洞 | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | +| 目录遍历攻击 | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | +| 文件包含漏洞 | **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** | + + +
+
+ +## 我们的使命 + +传统的漏洞扫描器是几十年前构建的。它们是闭源的、速度极慢,并由厂商主导。如今的攻击者会在几天之内大规模利用新发布的 CVE,而过去这通常需要数年时间。这种变化要求我们采用完全不同的方式来应对互联网上的新兴利用手段。 + +我们打造 Nuclei 就是为了解决这一挑战。我们将整个扫描引擎框架开放并可定制,使全球安全社区能够协同合作,共同应对互联网上新兴的攻击向量和漏洞。如今,Nuclei 已被《财富》500 强企业、政府机构和高校使用并贡献。 + +您可以通过为我们的代码、[**`模板库`**](https://github.com/projectdiscovery/nuclei-templates)做出贡献,或[**`加入我们的团队`**](https://projectdiscovery.io/)来参与。 + +
+
+ +## 贡献者 :heart: + +感谢所有了不起的[**`提交 PR 的社区贡献者`**](https://github.com/projectdiscovery/nuclei/graphs/contributors),是他们让本项目保持更新。:heart: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

-### 许可证 +
+
+
-Nuclei使用[MIT许可证](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) +
+ + **`nuclei`** 基于 [**MIT 许可证**](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) 分发 -

- Join Discord Check Nuclei Documentation -

+
diff --git a/README_ES.md b/README_ES.md index 3959ee452c..6a6d095f35 100644 --- a/README_ES.md +++ b/README_ES.md @@ -1,300 +1,342 @@ -

-
- Nuclei -

- -

Escáner de vulnerabilidades rápido y personalizable basado en un sencillo DSL basado en YAML.

+![nuclei](/static/nuclei-cover-image.png) +
+ + `English` • + `中文` • + `Korean` • + `Indonesia` • + `Spanish` • + `日本語` • + `Portuguese` • + `Türkçe` + +

- - - - - - - - -

- -

- Cómo funciona • - Instalación • - Documentación • - Créditos • - Preguntas Frecuentes • - Únete a Discord -

-

- English • - 中文 • - Korean • - Indonesia • - Spanish • - Portuguese + +   + +   + + +


+

---- +
-Nuclei se utiliza para enviar peticiones a múltiples objetivos basándose en una plantilla, lo que resulta en cero falsos positivos y proporciona un escaneo rápido en un gran número de hosts. Nuclei ofrece escaneos para una variedad de protocolos, incluyendo TCP, DNS, HTTP, SSL, File, Whois, Websocket, Headless, Code, etc. Con plantillas potentes y flexibles, Nuclei puede utilizarse para modelar todo tipo de comprobaciones de seguridad. +**Nuclei es un escáner de vulnerabilidades moderno y de alto rendimiento que aprovecha plantillas simples basadas en YAML. Te permite diseñar escenarios personalizados de detección de vulnerabilidades que imitan condiciones del mundo real, logrando cero falsos positivos.** -Tenemos un [repositorio dedicado](https://github.com/projectdiscovery/nuclei-templates) que alberga varios tipos de plantillas de vulnerabilidades, contribuidas por **más de 300** investigadores y ingenieros de seguridad. +- Formato YAML simple para crear y personalizar plantillas de vulnerabilidades. +- Contribuido por miles de profesionales de seguridad para abordar vulnerabilidades emergentes. +- Reduce los falsos positivos simulando pasos del mundo real para verificar una vulnerabilidad. +- Procesamiento de escaneos paralelo ultrarrápido y agrupación de peticiones. +- Se integra en pipelines de CI/CD para detección de vulnerabilidades y pruebas de regresión. +- Soporta múltiples protocolos como TCP, DNS, HTTP, SSL, WHOIS, JavaScript, Code y más. +- Se integra con Jira, Splunk, GitHub, Elastic, GitLab. -## Cómo funciona +
+
+## Índice -

- nuclei-flow -

+- [**`Primeros Pasos`**](#primeros-pasos) + - [_`1. Nuclei CLI`_](#1-nuclei-cli) + - [_`2. Ediciones Pro y Enterprise`_](#2-ediciones-pro-y-enterprise) +- [**`Documentación`**](#documentación) + - [_`Banderas de Línea de Comandos`_](#banderas-de-línea-de-comandos) + - [_`Escaneo de un solo objetivo`_](#escaneo-de-un-solo-objetivo) + - [_`Escaneo de múltiples objetivos`_](#escaneo-de-múltiples-objetivos) + - [_`Escaneo de red`_](#escaneo-de-red) + - [_`Escaneo con tu plantilla personalizada`_](#escaneo-con-tu-plantilla-personalizada) + - [_`Conectar Nuclei a ProjectDiscovery`_](#conectar-nuclei-a-projectdiscovery) +- [**`Plantillas de Nuclei, Comunidad y Recompensas`**](#plantillas-de-nuclei-comunidad-y-recompensas-) 💎 +- [**`Nuestra Misión`**](#nuestra-misión) +- [**`Colaboradores`**](#colaboradores-heart) ❤ +- [**`Licencia`**](#licencia) +
+
-| :exclamation: **Descargo de responsabilidad** | -|---------------------------------| -| **Este proyecto está en desarrollo activo**. Es de esperar que se produzcan cambios importantes con las nuevas versiones. Consulte el registro de cambios de la versión antes de actualizar. | -| Este proyecto fue principalmente desarrollado para ser utilizado como una herramienta CLI independiente. **Ejecutar nuclei como un servicio puede suponer riesgos de seguridad.** Se recomienda utilizarlo con precaución y tomar medidas de seguridad adicionales. | +## Primeros Pasos -# Instalación de Nuclei +### **1. Nuclei CLI** -Nuclei requiere **go1.24.2** para instalarse correctamente. Ejecute el siguiente comando para instalar la última versión - +_Instala Nuclei en tu máquina. Comienza siguiendo la guía de instalación [**`aquí`**](https://docs.projectdiscovery.io/tools/nuclei/install?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme). Adicionalmente, ofrecemos [**`una capa gratuita en la nube`**](https://cloud.projectdiscovery.io/sign-up) con generosos límites mensuales gratuitos:_ -```sh -go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest -``` +- Almacena y visualiza tus hallazgos de vulnerabilidades +- Escribe y gestiona tus plantillas de nuclei +- Accede a las últimas plantillas de nuclei +- Descubre y almacena tus objetivos -
- Brew - - ```sh - brew install nuclei - ``` - -
-
- Docker - - ```sh - docker pull projectdiscovery/nuclei:latest - ``` - -
+> [!Important] +> |**Este proyecto está en desarrollo activo**. Espera cambios incompatibles entre versiones. Revisa el changelog antes de actualizar.| +> |:--------------------------------| +> | Este proyecto está construido principalmente para ser utilizado como herramienta CLI independiente. **Ejecutar nuclei como servicio puede suponer riesgos de seguridad.** Se recomienda usarlo con precaución y medidas de seguridad adicionales. | + +
+ +### **2. Ediciones Pro y Enterprise** + +_Para equipos de seguridad y empresas, ofrecemos un servicio alojado en la nube construido sobre Nuclei OSS, optimizado para ayudarte a ejecutar escaneos de vulnerabilidades de forma continua y a escala con tu equipo y flujos de trabajo existentes:_ + +- Escaneos 50x más rápidos +- Escaneo a gran escala con alta precisión +- Integraciones con servicios cloud (AWS, GCP, Azure, Cloudflare, Fastly, Terraform, Kubernetes) +- Jira, Slack, Linear, APIs y Webhooks +- Informes ejecutivos y de cumplimiento +- Además: Escaneo en tiempo real, SAML SSO, plataforma compatible con SOC 2 (con opciones de alojamiento en UE y EE.UU.), espacios de trabajo compartidos por equipo y más +- ¡Estamos constantemente [**`añadiendo nuevas funcionalidades`**](https://feedback.projectdiscovery.io/changelog)! +- **Ideal para:** Pentesters, equipos de seguridad y empresas -**Más métodos de instalación [pueden encontrarse aquí](https://docs.projectdiscovery.io/tools/nuclei/install).** +[**`Regístrate en Pro`**](https://projectdiscovery.io/pricing?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) o [**`habla con nuestro equipo`**](https://projectdiscovery.io/request-demo?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) si tienes una organización grande y requisitos complejos. - - - - -
+
+
-### Plantillas de Nuclei +## Documentación -Nuclei cuenta con soporte incorporado para la descarga/actualización automática de plantillas desde la versión [v2.5.2](https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2) en adelante. El proyecto [**Nuclei-Templates**](https://github.com/projectdiscovery/nuclei-templates) proporciona una lista de plantillas listas para usar, aportadas por la comunidad, y que se actualizan constantemente. +Consulta la [**`documentación completa de Nuclei aquí`**](https://docs.projectdiscovery.io/tools/nuclei/running). Si eres nuevo en Nuclei, mira nuestra [**`serie introductoria en YouTube`**](https://www.youtube.com/playlist?list=PLZRbR9aMzTTpItEdeNSulo8bYsvil80Rl). -También puedes utilizar la bandera `update-templates` para actualizar las plantillas de Nuclei en cualquier momento; puedes escribir tus propias pruebas para tu flujo de trabajo y necesidades individuales siguiendo la [guía de plantillas](https://docs.projectdiscovery.io/templates/) de Nuclei. +
-La sintaxis de referencia YAML DSL está disponible [aquí](SYNTAX-REFERENCE.md). + -
+ -### Uso +
+ +### Instalación + +`nuclei` requiere **go >= 1.24.2** para instalarse correctamente. Ejecuta el siguiente comando para obtener el repositorio: ```sh -nuclei -h +go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest ``` -Esto mostrará ayuda sobre la herramienta. Aquí están todas las opciones que soporta. +Para saber más sobre cómo instalar nuclei, consulta `https://docs.projectdiscovery.io/tools/nuclei/install`. + +### Banderas de Línea de Comandos + +Para mostrar todas las banderas de la herramienta: + +```sh +nuclei -h +``` +
+ Expandir todas las banderas de ayuda -```console -Nuclei es un escáner de vulnerabilidades rápido y basado en plantillas -que se centra en su amplia configurabilidad, extensibilidad y facilidad de uso. +```yaml +Nuclei is a fast, template based vulnerability scanner focusing +on extensive configurability, massive extensibility and ease of use. Usage: ./nuclei [flags] Flags: TARGET: - -u, -target string[] URLs/hosts a escanear - -l, -list string ruta al archivo que contiene la lista de URLs/hosts a escanear (uno por línea) - -eh, -exclude-hosts string[] hosts a excluir para escanear de la lista de entrada (ip, cidr, hostname) - -resume string reanudar el escaneo desde y guardar en el archivo especificado (la clusterización quedará inhabilitada) - -sa, -scan-all-ips escanear todas las IP asociadas al registro dns - -iv, -ip-version string[] versión IP a escanear del nombre de host (4,6) - (por defecto 4) + -u, -target string[] target URLs/hosts to scan + -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) + -eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname) + -resume string resume scan from and save to specified file (clustering will be disabled) + -sa, -scan-all-ips scan all the IP's associated with dns record + -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) TARGET-FORMAT: - -im, -input-mode string modo del archivo de entrada (list, burp, jsonl, yaml, openapi, swagger) (por defecto "list") - -ro, -required-only utilizar solo campos requeridos en el formato de entrada al generar peticiones - -sfv, -skip-format-validation saltar la validación de formato (como variables faltantes) al procesar el archivo de entrada + -im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger) (default "list") + -ro, -required-only use only required fields in input format when generating requests + -sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file TEMPLATES: - -nt, -new-templates ejecutar sólo las nuevas plantillas añadidas en la última versión de nuclei-templates - -ntv, -new-templates-version string[] ejecutar las nuevas plantillas añadidas en la versión especificada - -as, -automatic-scan escaneo web automático utilizando la detección de tecnología de wappalyzer para mapeo de etiquetas - -t, -templates string[] lista de plantillas o directorio de plantillas a ejecutar (separadas por comas, file) - -turl, -template-url string[] url de plantilla o lista que contiene urls de plantillas a ejecutar (separadas por comas, file) - -w, -workflows string[] lista de flujos de trabajo o directorio de flujos de trabajo a ejecutar (separadas por comas, file) - -wurl, -workflow-url string[] url de flujo de trabajo o lista que contiene urls de flujo de trabajo para ejecutar (separadas por comas, file) - -validate valida las plantillas pasadas a nuclei - -nss, -no-strict-syntax deshabilita la comprobación de sintaxis estricta en las plantillas - -td, -template-display muestra el contenido de las plantillas - -tl lista todas las plantillas disponibles - -tgl lista todas las etiquetas disponibles - -sign firma las plantillas con la clave privada definida en la variable de entorno NUCLEI_SIGNATURE_PRIVATE_KEY - -code habilita la carga de plantillas basadas en protocolos de código - -dut, -disable-unsigned-templates deshabilita la ejecución de plantillas no firmadas o plantillas con firma no coincidente + -nt, -new-templates run only new templates added in latest nuclei-templates release + -ntv, -new-templates-version string[] run new templates added in specific version + -as, -automatic-scan automatic web scan using wappalyzer technology detection to tags mapping + -t, -templates string[] list of template or template directory to run (comma-separated, file) + -turl, -template-url string[] template url or list containing template urls to run (comma-separated, file) + -ai, -prompt string generate and run template using ai prompt + -w, -workflows string[] list of workflow or workflow directory to run (comma-separated, file) + -wurl, -workflow-url string[] workflow url or list containing workflow urls to run (comma-separated, file) + -validate validate the passed templates to nuclei + -nss, -no-strict-syntax disable strict syntax check on templates + -td, -template-display displays the templates content + -tl list all templates matching current filters + -tgl list all available tags + -sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable + -code enable loading code protocol-based templates + -dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature + -esc, -enable-self-contained enable loading self-contained templates + -egm, -enable-global-matchers enable loading global matchers templates + -file enable loading file templates FILTERING: - -a, -author string[] plantillas a ejecutar basadas en autores (separadas por comas, file) - -tags string[] plantillas a ejecutar basadas en etiquetas (separadas por comas, file) - -etags, -exclude-tags string[] plantillas a excluir basadas en etiquetas (separadas por comas, file) - -itags, -include-tags string[] etiquetas a ejecutar incluso si están excluidas ya sea por defecto o por configuración - -id, -template-id string[] plantillas a ejecutar basadas en IDs de plantilla (comma-separated, file, allow-wildcard) - -eid, -exclude-id string[] plantillas a excluir basadas en IDs de plantilla (separadas por comas, file) - -it, -include-templates string[] ruta al archivo de plantilla o directorio a ejecutar incluso si están excluidas ya sea por defecto o por configuración - -et, -exclude-templates string[] ruta al archivo de plantilla o directorio a excluir (separadas por comas, file) - -em, -exclude-matchers string[] matchers de plantilla a excluir en el resultado - -s, -severity value[] plantillas a ejecutar basadas en criticidad. Valores posibles: info, bajo, medio, alto, crítico, desconocido - -es, -exclude-severity value[] plantillas a excluir basadas en criticidad. Valores posibles: info, bajo, medio, alto, crítico, desconocido - -pt, -type value[] plantillas a ejecutar basadas en tipo de protocolo. Valores posibles: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -ept, -exclude-type value[] plantillas a excluir basadas en tipo de protocolo. Valores posibles: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -tc, -template-condition string[] plantillas a ejecutar basadas en condición de expresión + -a, -author string[] templates to run based on authors (comma-separated, file) + -tags string[] templates to run based on tags (comma-separated, file) + -etags, -exclude-tags string[] templates to exclude based on tags (comma-separated, file) + -itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration + -id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard) + -eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file) + -it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration + -et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file) + -em, -exclude-matchers string[] template matchers to exclude in result + -s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown + -es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown + -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -tc, -template-condition string[] templates to run based on expression condition OUTPUT: - -o, -output string archivo de salida donde guardar las incidencias/vulnerabilidades detectadas - -sresp, -store-resp almacenar todas las peticiones/respuestas enviadas por nuclei en el directorio de salida - -srd, -store-resp-dir string almacenar todas las peticiones/respuestas enviadas por nuclei en un directorio personalizado (por defecto "output") - -silent mostrar resultados únicamente - -nc, -no-color deshabilitar la coloración del contenido de salida (códigos de escape ANSI) - -j, -jsonl escribir la salida en formato JSONL(ines) - -irr, -include-rr -omit-raw incluir pares peticiones/respuesta en las salidas JSON, JSONL y Markdown (sólo para hallazgos) [OBSOLETO usar -omit-raw] (por defecto true) - -or, -omit-raw omitir los pares peticiones/respuesta en las salidas JSON, JSONL y Markdown (sólo para hallazgos) - -ot, -omit-template omitir plantilla codificada en la salida JSON, JSONL - -nm, -no-meta deshabilitar la impresión de metadatos de resultados en la salida cli - -ts, -timestamp habilitar la impresión de la marca de tiempo en la salida cli - -rdb, -report-db string base de datos de informes de nuclei (utilizarla siempre para persistir los datos de los informes) - -ms, -matcher-status mostrar el estado de fallo de coincidencia - -me, -markdown-export string directorio para exportar resultados en formato markdown - -se, -sarif-export string archivo para exportar resultados en formato SARIF - -je, -json-export string archivo para exportar resultados en formato JSON - -jle, -jsonl-export string archivo para exportar resultados en formato JSONL(ines) + -o, -output string output file to write found issues/vulnerabilities + -sresp, -store-resp store all request/response passed through nuclei to output directory + -srd, -store-resp-dir string store all request/response passed through nuclei to custom directory (default "output") + -silent display findings only + -nc, -no-color disable output content coloring (ANSI escape codes) + -j, -jsonl write output in JSONL(ines) format + -irr, -include-rr -omit-raw include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) + -or, -omit-raw omit request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) + -ot, -omit-template omit encoded template in the JSON, JSONL output + -nm, -no-meta disable printing result metadata in cli output + -ts, -timestamp enables printing timestamp in cli output + -rdb, -report-db string nuclei reporting database (always use this to persist report data) + -ms, -matcher-status display match failure status + -me, -markdown-export string directory to export results in markdown format + -se, -sarif-export string file to export results in SARIF format + -je, -json-export string file to export results in JSON format + -jle, -jsonl-export string file to export results in JSONL(ine) format + -rd, -redact string[] redact given list of keys from query parameter, request header and body CONFIGURATIONS: - -config string ruta al archivo de configuración de nuclei - -fr, -follow-redirects habilitar el seguimiento de redirecciones para plantillas http - -fhr, -follow-host-redirects seguir redirecciones en el mismo host - -mr, -max-redirects int número máximo de redirecciones a seguir para plantillas http (por defecto 10) - -dr, -disable-redirects deshabilitar redirecciones para plantillas http - -rc, -report-config string archivo de configuración del módulo de informes de nuclei - -H, -header string[] encabezado/cookie personalizado a incluir en todas las peticiones http en formato header:value (cli, file) - -V, -var value variables personalizadas en formato key=value - -r, -resolvers string archivo que contiene lista de resolutores para nuclei - -sr, -system-resolvers utilizar resolución de DNS del sistema como fallback de error - -dc, -disable-clustering deshabilitar la clusterización de peticiones - -passive habilitar el modo de procesamiento pasivo de respuestas HTTP - -fh2, -force-http2 forzar la conexión http2 en las peticiones - -ev, -env-vars habilitar el uso de variables de entorno en la plantilla - -cc, -client-cert string archivo de certificado de cliente (codificado en PEM) utilizado para autenticarse contra los hosts escaneados - -ck, -client-key string archivo de clave de cliente (codificado en PEM) utilizado para autenticarse contra los hosts escaneados - -ca, -client-ca string archivo de autoridad de certificación de cliente (codificado en PEM) utilizado para autenticarse contra los hosts escaneados - -sml, -show-match-line mostrar líneas de coincidencia para plantillas de archivo, funciona solo con extractores - -ztls utilizar la biblioteca ztls con autofallback a estándar para tls13 [Obsoleto] autofallback a ztls está habilitado por defecto - -sni string nombre de host tls sni a usar (por defecto: nombre de dominio de entrada) - -dt, -dialer-timeout value tiempo de espera para peticiones de red - -dka, -dialer-keep-alive value duración de keep-alive para peticiones de red - -lfa, -allow-local-file-access permite el acceso a archivos (carga útil) en cualquier lugar del sistema - -lna, -restrict-local-network-access bloquea conexiones a la red local / privada - -i, -interface string interfaz de red a usar para el escaneo de red - -at, -attack-type string tipo de combinaciones de carga útil a realizar (batteringram, pitchfork, clusterbomb) - -sip, -source-ip string dirección ip de origen a usar para el escaneo de red - -rsr, -response-size-read int tamaño máximo de respuesta a leer en bytes (por defecto 10485760) - -rss, -response-size-save int tamaño máximo de respuesta a guardar en bytes (por defecto 1048576) - -reset reset elimina todos los archivos de configuración y datos de nuclei (incluidas las nuclei-templates) - -tlsi, -tls-impersonate habilitar client hello (ja3) tls randomization experimental + -config string path to the nuclei configuration file + -tp, -profile string template profile config file to run + -tpl, -profile-list list community template profiles + -fr, -follow-redirects enable following redirects for http templates + -fhr, -follow-host-redirects follow redirects on the same host + -mr, -max-redirects int max number of redirects to follow for http templates (default 10) + -dr, -disable-redirects disable redirects for http templates + -rc, -report-config string nuclei reporting module configuration file + -H, -header string[] custom header/cookie to include in all http request in header:value format (cli, file) + -V, -var value custom vars in key=value format + -r, -resolvers string file containing resolver list for nuclei + -sr, -system-resolvers use system DNS resolving as error fallback + -dc, -disable-clustering disable clustering of requests + -passive enable passive HTTP response processing mode + -fh2, -force-http2 force http2 connection on requests + -ev, -env-vars enable environment variables to be used in template + -cc, -client-cert string client certificate file (PEM-encoded) used for authenticating against scanned hosts + -ck, -client-key string client key file (PEM-encoded) used for authenticating against scanned hosts + -ca, -client-ca string client certificate authority file (PEM-encoded) used for authenticating against scanned hosts + -sml, -show-match-line show match lines for file templates, works with extractors only + -ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default + -sni string tls sni hostname to use (default: input domain name) + -dka, -dialer-keep-alive value keep-alive duration for network requests. + -lfa, -allow-local-file-access allows file (payload) access anywhere on the system + -lna, -restrict-local-network-access blocks connections to the local / private network + -i, -interface string network interface to use for network scan + -at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb) + -sip, -source-ip string source ip address to use for network scan + -rsr, -response-size-read int max response size to read in bytes + -rss, -response-size-save int max response size to read in bytes (default 1048576) + -reset reset removes all nuclei configuration and data files (including nuclei-templates) + -tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization + -hae, -http-api-endpoint string experimental http api endpoint INTERACTSH: - -iserver, -interactsh-server string url del servidor interactsh para instancia autoalojada (por defecto: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) - -itoken, -interactsh-token string token de autenticación del servidor interactsh autoalojado - -interactions-cache-size int número de peticiones a mantener en la caché de interacciones (por defecto 5000) - -interactions-eviction int número de segundos a esperar antes de eliminar las solicitudes de la caché (por defecto 60) - -interactions-poll-duration int número de segundos a esperar antes de cada solicitud de polling de interacciones (por defecto 5) - -interactions-cooldown-period int tiempo adicional para el polling de interacciones antes de salir (por defecto 5) - -ni, -no-interactsh desactivar el servidor interactsh para pruebas OAST, excluir plantillas basadas en OAST + -iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) + -itoken, -interactsh-token string authentication token for self-hosted interactsh server + -interactions-cache-size int number of requests to keep in the interactions cache (default 5000) + -interactions-eviction int number of seconds to wait before evicting requests from cache (default 60) + -interactions-poll-duration int number of seconds to wait before each interaction poll request (default 5) + -interactions-cooldown-period int extra time for interaction polling before exiting (default 5) + -ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates FUZZING: - -ft, -fuzzing-type string sobrescribe el tipo de fuzzing establecido en la plantilla (replace, prefix, postfix, infix) - -fm, -fuzzing-mode string sobrescribe el modo de fuzzing establecido en la plantilla (multiple, single) - -fuzz habilita la carga de plantillas de fuzzing (Obsoleto: usar -dast en su lugar) - -dast solo ejecuta plantillas DAST + -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) + -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -fuzz enable loading fuzzing templates (Deprecated: use -dast instead) + -dast enable / run dast (fuzz) nuclei templates + -dts, -dast-server enable dast server mode (live fuzzing) + -dtr, -dast-report write dast scan report to file + -dtst, -dast-server-token string dast server token (optional) + -dtsa, -dast-server-address string dast server address (default "localhost:9055") + -dfp, -display-fuzz-points display fuzz points in the output for debugging + -fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10) + -fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low") + -cs, -fuzz-scope string[] in scope url regex to be followed by fuzzer + -cos, -fuzz-out-scope string[] out of scope url regex to be excluded by fuzzer UNCOVER: - -uc, -uncover habilita el motor uncover - -uq, -uncover-query string[] consulta de búsqueda uncover - -ue, -uncover-engine string[] motor de búsqueda uncover (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow) (por defecto shodan) - -uf, -uncover-field string campos uncover a devolver (ip,port,host) (por defecto "ip:port") - -ul, -uncover-limit int resultados uncover a devolver (por defecto 100) - -ur, -uncover-ratelimit int sobrescribe el límite de velocidad de los motores con el límite de velocidad del motor uncover (por defecto 60 req/min) (por defecto 60) + -uc, -uncover enable uncover engine + -uq, -uncover-query string[] uncover search query + -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan) + -uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port") + -ul, -uncover-limit int uncover results to return (default 100) + -ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60) RATE-LIMIT: - -rl, -rate-limit int número máximo de peticiones a enviar por segundo (por defecto 150) - -rlm, -rate-limit-minute int número máximo de peticiones a enviar por minuto - -bs, -bulk-size int número máximo de hosts a ser analizados en paralelo por plantilla (por defecto 25) - -c, -concurrency int número máximo de plantillas a ejecutar en paralelo (por defecto 25) - -hbs, -headless-bulk-size int número máximo de hosts headless a ser analizados en paralelo por plantilla (por defecto 10) - -headc, -headless-concurrency int número máximo de plantillas headless a ejecutar en paralelo (por defecto 10) - -jsc, -js-concurrency int número máximo de entornos de ejecución de JavaScript a ejecutar en paralelo (por defecto 120) - -pc, -payload-concurrency int concurrencia máxima de carga útil para cada plantilla (por defecto 25) - -tlc, -template-loading-concurrency int número máximo de operaciones de carga de plantillas concurrentes (por defecto 50) + -rl, -rate-limit int maximum number of requests to send per second (default 150) + -rld, -rate-limit-duration value maximum number of requests to send per second (default 1s) + -rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED) + -bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25) + -c, -concurrency int maximum number of templates to be executed in parallel (default 25) + -hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10) + -headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10) + -jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120) + -pc, -payload-concurrency int max payload concurrency for each template (default 25) + -prc, -probe-concurrency int http probe concurrency with httpx (default 50) + -tlc, -template-loading-concurrency int maximum number of concurrent template loading operations (default 50) OPTIMIZATIONS: - -timeout int tiempo de espera en segundos (por defecto 10) - -retries int número de veces que se reintenta una petición fallida (por defecto 1) - -ldp, -leave-default-ports dejar puertos HTTP/HTTPS predeterminados (por ejemplo, host:80,host:443) - -mhe, -max-host-error int errores máximos para un host antes de omitirlo del escaneo (por defecto 30) - -te, -track-error string[] agrega el error dado a la lista de seguimiento de errores máximos por host (standard, file) - -nmhe, -no-mhe deshabilita la omisión del host del escaneo basado en errores - -project utiliza una carpeta de proyecto para evitar enviar la misma petición varias veces - -project-path string establece una ruta de proyecto específica (por defecto "/tmp") - -spm, -stop-at-first-match detiene el procesamiento de las peticiones HTTP después de la primera coincidencia (puede romper la lógica de la plantilla/flujo de trabajo) - -stream modo transmisión - comienza a trabajar sin ordenar la entrada - -ss, -scan-strategy value estrategia a utilizar mientras se escanea (auto/host-spray/template-spray) (por defecto auto) - -irt, -input-read-timeout value tiempo de espera en la lectura de entrada (por defecto 3m0s) - -nh, -no-httpx deshabilita análisis httpx para entradas que no son URL - -no-stdin deshabilita el procesamiento de la entrada estándar + -timeout int time to wait in seconds before timeout (default 10) + -retries int number of times to retry a failed request (default 1) + -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) + -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) + -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) + -nmhe, -no-mhe disable skipping host from scan based on errors + -project use a project folder to avoid sending same request multiple times + -project-path string set a specific project path (default "/tmp") + -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) + -stream stream mode - start elaborating without sorting the input + -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) + -irt, -input-read-timeout value timeout on input read (default 3m0s) + -nh, -no-httpx disable httpx probing for non-url input + -no-stdin disable stdin processing HEADLESS: - -headless habilita las plantillas que requieren soporte de navegadores sin interfaz gráfica (headless browser) (el usuario root en Linux deshabilitará el sandbox) - -page-timeout int segundos para esperar cada página en modo sin interfaz (por defecto 20) - -sb, -show-browser muestra el navegador en la pantalla al ejecutar plantillas con modo sin interfaz - -ho, -headless-options string[] inicia Chrome en modo sin interfaz con opciones adicionales - -sc, -system-chrome utiliza el navegador Chrome instalado localmente en lugar del instalado por nuclei - -cdpe, -cdp-endpoint string usar navegador remoto a través del endpoint del Protocolo de Herramientas de Desarrollador de Chrome (CDP) - -lha, -list-headless-action lista de acciones sin interfaz disponibles + -headless enable templates that require headless browser support (root user on Linux will disable sandbox) + -page-timeout int seconds to wait for each page in headless mode (default 20) + -sb, -show-browser show the browser on the screen when running templates with headless mode + -ho, -headless-options string[] start headless chrome with additional options + -sc, -system-chrome use local installed Chrome browser instead of nuclei installed + -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint + -lha, -list-headless-action list available headless actions DEBUG: - -debug muestra todas las peticiones y respuestas - -dreq, -debug-req muestra todas las peticiones enviadas - -dresp, -debug-resp muestra todas las respuestas recibidas - -p, -proxy string[] lista de proxies http/socks5 a utilizar (separados por comas o archivo de entrada) - -pi, -proxy-internal proxy para todas las peticiones internas - -ldf, -list-dsl-function lista todas las firmas de función DSL admitidas - -tlog, -trace-log string archivo a escribir el registro de traza de peticiones enviadas - -elog, -error-log string archivo a escribir el registro de error de peticiones enviadas - -version muestra la versión de nuclei - -hm, -hang-monitor habilita la monitorización de bloqueos de nuclei - -v, -verbose muestra salida detallada - -profile-mem string archivo opcional de volcado de memoria de nuclei - -vv muestra las plantillas cargadas para el escaneo - -svd, -show-var-dump muestra el volcado de variables para depuración - -ep, -enable-pprof habilita el servidor de depuración pprof - -tv, -templates-version muestra la versión de las plantillas nuclei (nuclei-templates) instaladas - -hc, -health-check ejecuta comprobación de diagnóstico + -debug show all requests and responses + -dreq, -debug-req show all sent requests + -dresp, -debug-resp show all received responses + -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) + -pi, -proxy-internal proxy all internal requests + -ldf, -list-dsl-function list all supported DSL function signatures + -tlog, -trace-log string file to write sent requests trace log + -elog, -error-log string file to write sent requests error log + -version show nuclei version + -hm, -hang-monitor enable nuclei hang monitoring + -v, -verbose show verbose output + -profile-mem string generate memory (heap) profile & trace files + -vv display templates loaded for scan + -svd, -show-var-dump show variables dump for debugging + -vdl, -var-dump-limit int limit the number of characters displayed in var dump (default 255) + -ep, -enable-pprof enable pprof debugging server + -tv, -templates-version shows the version of the installed nuclei-templates + -hc, -health-check run diagnostic check up UPDATE: - -up, -update actualiza el motor de nuclei a la última versión lanzada - -ut, -update-templates actualiza nuclei-templates a la última versión lanzada - -ud, -update-template-dir string directorio personalizado para instalar/actualizar nuclei-templates - -duc, -disable-update-check deshabilita la comprobación automática de actualizaciones de nuclei/templates + -up, -update update nuclei engine to the latest released version + -ut, -update-templates update nuclei-templates to latest released version + -ud, -update-template-dir string custom directory to install / update nuclei-templates + -duc, -disable-update-check disable automatic nuclei/templates update check HONEYPOT: -hpd, -honeypot-detect detect potential honeypot hosts based on match concentration @@ -302,76 +344,321 @@ HONEYPOT: -shp, -suppress-honeypot suppress output for flagged honeypot hosts STATISTICS: - -stats muestra estadísticas sobre el escaneo en ejecución - -sj, -stats-json muestra estadísticas en formato JSONL(ines) - -si, -stats-interval int número de segundos a esperar entre mostrar una actualización de estadísticas (por defecto 5) - -mp, -metrics-port int puerto para exponer métricas de nuclei (por defecto 9092) + -stats display statistics about the running scan + -sj, -stats-json display statistics in JSONL(ines) format + -si, -stats-interval int number of seconds to wait between showing a statistics update (default 5) + -mp, -metrics-port int port to expose nuclei metrics on (default 9092) + -hps, -http-stats enable http status capturing (experimental) CLOUD: - -auth configura la clave de API del cloud de projectdiscovery (pdcp) - -cup, -cloud-upload sube los resultados del escaneo al dashboard de pdcp - -sid, -scan-id string sube los resultados del escaneo al ID de escaneo dado + -auth configure projectdiscovery cloud (pdcp) api key (default true) + -tid, -team-id string upload scan results to given team id (optional) (default "none") + -cup, -cloud-upload upload scan results to pdcp dashboard [DEPRECATED use -dashboard] + -sid, -scan-id string upload scan results to existing scan id (optional) + -sname, -scan-name string scan name to set (optional) + -pd, -dashboard upload / view nuclei results in projectdiscovery cloud (pdcp) UI dashboard + -pdu, -dashboard-upload string upload / view nuclei results file (jsonl) in projectdiscovery cloud (pdcp) UI dashboard AUTHENTICATION: - -sf, -secret-file string[] ruta al archivo de configuración que contiene los secrets para el escaneo autenticado de nuclei - -ps, -prefetch-secrets precarga los secrets del archivo de secrets + -sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan + -ps, -prefetch-secrets prefetch secrets from the secrets file + # NOTE: Headers in secrets files preserve exact casing (useful for case-sensitive APIs) EXAMPLES: -Ejecutar nuclei en un solo host: - $ nuclei -target example.com +Run nuclei on single host: + $ nuclei -target example.com -Ejecutar nuclei con directorios de plantillas específicos: - $ nuclei -target example.com -t http/cves/ -t ssl +Run nuclei with specific template directories: + $ nuclei -target example.com -t http/cves/ -t ssl -Ejecutar nuclei contra una lista de hosts: - $ nuclei -list hosts.txt +Run nuclei against a list of hosts: + $ nuclei -list hosts.txt -Ejecutar nuclei con una salida JSON: - $ nuclei -target example.com -json-export output.json +Run nuclei with a JSON output: + $ nuclei -target example.com -json-export output.json -Ejecutar nuclei con salidas Markdown ordenadas (con variables de entorno): - $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ +Run nuclei with sorted Markdown outputs (with environment variables): + $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ + +Additional documentation is available at: https://docs.projectdiscovery.io/getting-started/running -Documentación adicional disponible en: https://docs.projectdiscovery.io/getting-started/running ``` -### Ejecutando Nuclei +Documentación adicional disponible en: [**`docs.projectdiscovery.io/getting-started/running`**](https://docs.projectdiscovery.io/getting-started/running?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) -Consulta https://docs.projectdiscovery.io/tools/nuclei/running para obtener detalles sobre cómo ejecutar Nuclei. +
-### Uso de Nuclei desde código Go +### Escaneo de un solo objetivo -La guía completa sobre cómo usar Nuclei como biblioteca/SDK está disponible en [godoc](https://pkg.go.dev/github.com/projectdiscovery/nuclei/v3/lib#section-readme). +Para realizar un escaneo rápido en una aplicación web: +```sh +nuclei -target https://example.com +``` -### Recursos +### Escaneo de múltiples objetivos -Puedes acceder a la documentación principal de Nuclei en https://docs.projectdiscovery.io/tools/nuclei/, y obtener más información sobre Nuclei en la nube con [ProjectDiscovery Cloud Platform](https://cloud.projectdiscovery.io). +Nuclei puede manejar escaneos en bloque proporcionando una lista de objetivos. Puedes usar un archivo que contenga múltiples URLs. -¡Consulta https://docs.projectdiscovery.io/tools/nuclei/resources para obtener más recursos y videos sobre Nuclei! +```sh +nuclei -list urls.txt +``` -### Créditos +### Escaneo de red -Gracias a todos los increíbles [contribuyentes de la comunidad que enviaron PRs](https://github.com/projectdiscovery/nuclei/graphs/contributors) y mantienen este proyecto actualizado. :heart: +Esto escaneará toda la subred en busca de problemas relacionados con la red, como puertos abiertos o servicios mal configurados. -Si tienes una idea o algún tipo de mejora, eres bienvenido a contribuir y participar en el Proyecto, siéntete libre de enviar tu PR. +```sh +nuclei -target 192.168.1.0/24 +``` -

- - - -

+### Escaneo con tu plantilla personalizada +Para escribir y usar tu propia plantilla, crea un archivo `.yaml` con reglas específicas y luego úsalo como se muestra a continuación. -También echa un vistazo a los siguientes proyectos de código abierto similares que pueden adaptarse a tu flujo de trabajo: +```sh +nuclei -u https://example.com -t /path/to/your-template.yaml +``` -[FFuF](https://github.com/ffuf/ffuf), [Qsfuzz](https://github.com/ameenmaali/qsfuzz), [Inception](https://github.com/proabiral/inception), [Snallygaster](https://github.com/hannob/snallygaster), [Gofingerprint](https://github.com/Static-Flow/gofingerprint), [Sn1per](https://github.com/1N3/Sn1per/tree/master/templates), [Google tsunami](https://github.com/google/tsunami-security-scanner), [Jaeles](https://github.com/jaeles-project/jaeles), [ChopChop](https://github.com/michelin/ChopChop) +### Conectar Nuclei a ProjectDiscovery -### Licencia +Puedes ejecutar los escaneos en tu máquina y subir los resultados a la plataforma cloud para análisis y remediación adicionales. -Nuclei se distribuye bajo la [Licencia MIT](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) +```sh +nuclei -target https://example.com -dashboard +``` + +> [!NOTE] +> Esta funcionalidad es totalmente gratuita y no requiere suscripción. Para una guía detallada, consulta la [**`documentación`**](https://docs.projectdiscovery.io/cloud/scanning/nuclei-scan?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme). + +
+
+ +## Plantillas de Nuclei, Comunidad y Recompensas 💎 +Las [**plantillas de Nuclei**](https://github.com/projectdiscovery/nuclei-templates) se basan en el concepto de archivos de plantilla YAML que definen cómo se enviarán y procesarán las peticiones. Esto aporta a nuclei capacidades de extensibilidad sencillas. Las plantillas se escriben en YAML, que especifica un formato simple y legible por humanos para definir rápidamente el proceso de ejecución. + +**Pruébalo en línea con nuestro Editor de Plantillas de Nuclei gratuito y con IA** [**`haciendo clic aquí`**](https://cloud.projectdiscovery.io/templates). + +Las Plantillas de Nuclei ofrecen una manera simplificada de identificar y comunicar vulnerabilidades, combinando detalles esenciales como clasificaciones de severidad y métodos de detección. Esta herramienta de código abierto desarrollada por la comunidad acelera la respuesta ante amenazas y es ampliamente reconocida en el mundo de la ciberseguridad. Miles de investigadores de seguridad de todo el mundo contribuyen activamente a las plantillas de Nuclei. Mantenemos dos programas para nuestros colaboradores: [**`Pioneers`**](https://projectdiscovery.io/pioneers) y [**`💎 bounties`**](https://github.com/projectdiscovery/nuclei-templates/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22%F0%9F%92%8E%20Bounty%22). + + +

+ Ejemplo de plantilla Nuclei para detectar una mala configuración de TeamCity +

+ +#### Ejemplos + +Visita [**nuestra documentación**](https://docs.projectdiscovery.io/templates/introduction) para casos de uso e ideas. + +| Caso de uso | Plantilla de Nuclei | +| :----------------------------------------- | :------------------------------------------------- | +| Detectar CVEs conocidas | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | +| Identificar vulnerabilidades Out-of-Band | **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | +| Detección de SQL Injection | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | +| Cross-Site Scripting (XSS) | **[Reflected XSS Detection](https://cloud.projectdiscovery.io/public/CVE-2023-4173)** | +| Contraseñas por defecto o débiles | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | +| Archivos secretos o exposición de datos | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | +| Identificar redirecciones abiertas | **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | +| Detectar tomas de subdominios | **[Subdomain Takeover Templates](https://cloud.projectdiscovery.io/public/azure-takeover-detection)** | +| Configuraciones de seguridad incorrectas | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | +| Configuraciones SSL/TLS débiles | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | +| Servicios cloud mal configurados | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | +| Vulnerabilidades de ejecución remota de código | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | +| Ataques de directory traversal | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | +| Vulnerabilidades de inclusión de archivos | **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** | + + +
+
+ +## Nuestra Misión + +Los escáneres de vulnerabilidades tradicionales fueron construidos hace décadas. Son de código cerrado, increíblemente lentos y dirigidos por proveedores. Los atacantes de hoy explotan masivamente CVEs recién publicadas en internet en cuestión de días, en lugar de los años que solía llevar. Este cambio requiere un enfoque completamente diferente para abordar los exploits emergentes en internet. + +Construimos Nuclei para resolver este desafío. Hicimos que todo el framework del motor de escaneo fuera abierto y personalizable, permitiendo que la comunidad global de seguridad colabore y aborde los vectores de ataque y vulnerabilidades emergentes en internet. Nuclei es utilizado actualmente y recibe contribuciones de empresas Fortune 500, agencias gubernamentales y universidades. + +Puedes participar contribuyendo a nuestro código, a la [**`biblioteca de plantillas`**](https://github.com/projectdiscovery/nuclei-templates) o [**`uniéndote a nuestro equipo`**](https://projectdiscovery.io/). + +
+
+ +## Colaboradores :heart: + +Gracias a todos los increíbles [**`colaboradores de la comunidad que envían PRs`**](https://github.com/projectdiscovery/nuclei/graphs/contributors) y mantienen este proyecto actualizado. :heart: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ +
+
+
+ +
+ + **`nuclei`** se distribuye bajo la [**Licencia MIT**](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) -

- Join Discord Check Nuclei Documentation -

+
diff --git a/README_ID.md b/README_ID.md index 848a170672..0f557acd82 100644 --- a/README_ID.md +++ b/README_ID.md @@ -1,93 +1,135 @@ -

-
- Nuclei -

- -

Pemindai kerentanan yang cepat dan dapat disesuaikan berdasarkan DSL berbasis YAML sederhana.

+![nuclei](/static/nuclei-cover-image.png) +
+ + `English` • + `中文` • + `Korean` • + `Indonesia` • + `Spanish` • + `日本語` • + `Portuguese` • + `Türkçe` + +

- - - - - - - - -

- -

- Cara Kerja • - Instalasi • - Untuk Teknisi Keamanan • - Untuk Pengembang • - Dokumentasi • - Kredit • - Tanya Jawab • - Gabung Discord -

-

- English • - 中文 • - Korean • - Indonesia • - Spanish • - Portuguese + +   + +   + + +


+

---- +
-Nuclei digunakan untuk mengirim permintaan lintas target berdasarkan templat, yang menghasilkan nol positif palsu dan menyediakan pemindaian yang cepat pada banyak host. Nuclei menawarkan pemindaian untuk berbagai protokol, termasuk TCP, DNS, HTTP, SSL, File, Whois, Websocket, Headless, dll. Dengan templating yang kuat dan fleksibel, Nuclei dapat digunakan untuk memodelkan semua jenis pemeriksaan keamanan. +**Nuclei adalah pemindai kerentanan modern berkinerja tinggi yang memanfaatkan template berbasis YAML sederhana. Nuclei memungkinkan Anda merancang skenario deteksi kerentanan khusus yang meniru kondisi dunia nyata, sehingga menghasilkan nol false positive.** -Kami memiliki [repositori khusus](https://github.com/projectdiscovery/nuclei-templates) yang menampung berbagai jenis templat kerentanan yang disumbangkan oleh **lebih dari 300** peneliti dan teknisi keamanan. +- Format YAML sederhana untuk membuat dan menyesuaikan template kerentanan. +- Dikontribusikan oleh ribuan profesional keamanan untuk menangani kerentanan terkini. +- Mengurangi false positive dengan mensimulasikan langkah-langkah dunia nyata untuk memverifikasi kerentanan. +- Pemrosesan pemindaian paralel super cepat dan clustering permintaan. +- Terintegrasi ke dalam pipeline CI/CD untuk deteksi kerentanan dan pengujian regresi. +- Mendukung beragam protokol seperti TCP, DNS, HTTP, SSL, WHOIS, JavaScript, Code, dan lainnya. +- Terintegrasi dengan Jira, Splunk, GitHub, Elastic, GitLab. +
+
-## Cara Kerja +## Daftar Isi +- [**`Memulai`**](#memulai) + - [_`1. Nuclei CLI`_](#1-nuclei-cli) + - [_`2. Edisi Pro dan Enterprise`_](#2-edisi-pro-dan-enterprise) +- [**`Dokumentasi`**](#dokumentasi) + - [_`Flag Baris Perintah`_](#flag-baris-perintah) + - [_`Pemindaian target tunggal`_](#pemindaian-target-tunggal) + - [_`Pemindaian beberapa target`_](#pemindaian-beberapa-target) + - [_`Pemindaian jaringan`_](#pemindaian-jaringan) + - [_`Pemindaian dengan template kustom Anda`_](#pemindaian-dengan-template-kustom-anda) + - [_`Menghubungkan Nuclei ke ProjectDiscovery`_](#menghubungkan-nuclei-ke-projectdiscovery) +- [**`Template Nuclei, Komunitas dan Hadiah`**](#template-nuclei-komunitas-dan-hadiah-) 💎 +- [**`Misi Kami`**](#misi-kami) +- [**`Kontributor`**](#kontributor-heart) ❤ +- [**`Lisensi`**](#lisensi) -

- nuclei-flow -

+
+
+## Memulai -# Instalasi Nuclei +### **1. Nuclei CLI** -Nuclei membutuhkan **go1.24.2** agar dapat diinstall. Jalankan perintah berikut untuk menginstal versi terbaru - +_Instal Nuclei pada mesin Anda. Mulai dengan mengikuti panduan instalasi [**`di sini`**](https://docs.projectdiscovery.io/tools/nuclei/install?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme). Selain itu, kami menyediakan [**`tier cloud gratis`**](https://cloud.projectdiscovery.io/sign-up) yang dilengkapi batas bulanan gratis yang melimpah:_ -```sh -go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest -``` +- Simpan dan visualisasikan temuan kerentanan Anda +- Tulis dan kelola template nuclei Anda +- Akses template nuclei terbaru +- Temukan dan simpan target Anda + +> [!Important] +> |**Proyek ini sedang dalam pengembangan aktif**. Mengharapkan perubahan yang tidak kompatibel pada setiap rilis. Tinjau changelog rilis sebelum memperbarui.| +> |:--------------------------------| +> | Proyek ini terutama dibangun untuk digunakan sebagai alat CLI mandiri. **Menjalankan nuclei sebagai layanan dapat menimbulkan risiko keamanan.** Disarankan untuk menggunakannya dengan hati-hati dan langkah-langkah keamanan tambahan. | + +
+ +### **2. Edisi Pro dan Enterprise** -**Metode [instalasi lain dapat ditemukan di sini](https://nuclei.projectdiscovery.io/nuclei/get-started/).** +_Untuk tim keamanan dan perusahaan, kami menyediakan layanan yang di-hosting di cloud yang dibangun di atas Nuclei OSS, disetel untuk membantu Anda menjalankan pemindaian kerentanan secara berkesinambungan dan dalam skala besar dengan tim dan alur kerja Anda yang sudah ada:_ - - - - -
+- Pemindaian 50x lebih cepat +- Pemindaian berskala besar dengan akurasi tinggi +- Integrasi dengan layanan cloud (AWS, GCP, Azure, Cloudflare, Fastly, Terraform, Kubernetes) +- Jira, Slack, Linear, API, dan Webhook +- Pelaporan eksekutif dan kepatuhan +- Plus: Pemindaian real-time, SAML SSO, platform yang patuh SOC 2 (dengan opsi hosting UE dan AS), workspace tim bersama, dan lainnya +- Kami terus [**`menambahkan fitur baru`**](https://feedback.projectdiscovery.io/changelog)! +- **Ideal untuk:** Pentester, tim keamanan, dan perusahaan -### Nuclei Templates +[**`Daftar ke Pro`**](https://projectdiscovery.io/pricing?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) atau [**`bicara dengan tim kami`**](https://projectdiscovery.io/request-demo?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) jika Anda memiliki organisasi besar dan kebutuhan yang kompleks. -Nuclei memiliki dukungan untuk unduhan/pembaruan templat otomatis sebagai bawaan sejak versi [v2.5.2](https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2). Proyek [**Nuclei-Templates**](https://github.com/projectdiscovery/nuclei-templates) menyediakan daftar template siap pakai yang dibuat oleh komunitas yang terus diperbarui. +
+
-Anda dapat menggunakan flag `-update-templates` untuk memperbarui templat inti kapan saja; Anda juga dapat menulis pemeriksaan Anda sendiri untuk alur kerja individu dan untuk kebutuhan Anda sendiri dengan mengikuti [panduan pembuatan templat Nuclei](https://nuclei.projectdiscovery.io/templating-guide/). +## Dokumentasi -Untuk referensi penulisan sintaks DSL berbasis YAML tersedia [di sini](SYNTAX-REFERENCE.md). +Telusuri [**`dokumentasi Nuclei lengkap di sini`**](https://docs.projectdiscovery.io/tools/nuclei/running). Jika Anda baru mengenal Nuclei, lihat [**`seri pengantar YouTube kami`**](https://www.youtube.com/playlist?list=PLZRbR9aMzTTpItEdeNSulo8bYsvil80Rl). -
+
-### Cara Pakai + + +
+ +
+ +### Instalasi + +`nuclei` memerlukan **go >= 1.24.2** agar dapat diinstal dengan sukses. Jalankan perintah berikut untuk mengambil repo: ```sh -nuclei -h +go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest ``` -Ini akan menampilkan bantuan untuk alat tersebut. Berikut adalah semua flag yang didukungnya. +Untuk informasi lebih lanjut tentang menginstal nuclei, lihat `https://docs.projectdiscovery.io/tools/nuclei/install`. + +### Flag Baris Perintah +Untuk menampilkan seluruh flag dari alat ini: -```console +```sh +nuclei -h +``` + +
+ Buka semua flag bantuan + +```yaml Nuclei is a fast, template based vulnerability scanner focusing on extensive configurability, massive extensibility and ease of use. @@ -96,11 +138,17 @@ Usage: Flags: TARGET: - -u, -target string[] target URLs/hosts to scan - -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) - -resume string resume scan from and save to specified file (clustering will be disabled) - -sa, -scan-all-ips scan all the IP's associated with dns record - -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) + -u, -target string[] target URLs/hosts to scan + -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) + -eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname) + -resume string resume scan from and save to specified file (clustering will be disabled) + -sa, -scan-all-ips scan all the IP's associated with dns record + -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) + +TARGET-FORMAT: + -im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger) (default "list") + -ro, -required-only use only required fields in input format when generating requests + -sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file TEMPLATES: -nt, -new-templates run only new templates added in latest nuclei-templates release @@ -108,29 +156,35 @@ TEMPLATES: -as, -automatic-scan automatic web scan using wappalyzer technology detection to tags mapping -t, -templates string[] list of template or template directory to run (comma-separated, file) -turl, -template-url string[] template url or list containing template urls to run (comma-separated, file) + -ai, -prompt string generate and run template using ai prompt -w, -workflows string[] list of workflow or workflow directory to run (comma-separated, file) -wurl, -workflow-url string[] workflow url or list containing workflow urls to run (comma-separated, file) -validate validate the passed templates to nuclei -nss, -no-strict-syntax disable strict syntax check on templates -td, -template-display displays the templates content - -tl list all available templates + -tl list all templates matching current filters + -tgl list all available tags -sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable -code enable loading code protocol-based templates + -dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature + -esc, -enable-self-contained enable loading self-contained templates + -egm, -enable-global-matchers enable loading global matchers templates + -file enable loading file templates FILTERING: -a, -author string[] templates to run based on authors (comma-separated, file) -tags string[] templates to run based on tags (comma-separated, file) -etags, -exclude-tags string[] templates to exclude based on tags (comma-separated, file) -itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration - -id, -template-id string[] templates to run based on template ids (comma-separated, file) + -id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard) -eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file) - -it, -include-templates string[] templates to be executed even if they are excluded either by default or configuration - -et, -exclude-templates string[] template or template directory to exclude (comma-separated, file) + -it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration + -et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file) -em, -exclude-matchers string[] template matchers to exclude in result -s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown -es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown - -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois - -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois + -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript -tc, -template-condition string[] templates to run based on expression condition OUTPUT: @@ -140,8 +194,9 @@ OUTPUT: -silent display findings only -nc, -no-color disable output content coloring (ANSI escape codes) -j, -jsonl write output in JSONL(ines) format - -irr, -include-rr include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) + -irr, -include-rr -omit-raw include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) -or, -omit-raw omit request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) + -ot, -omit-template omit encoded template in the JSON, JSONL output -nm, -no-meta disable printing result metadata in cli output -ts, -timestamp enables printing timestamp in cli output -rdb, -report-db string nuclei reporting database (always use this to persist report data) @@ -150,9 +205,12 @@ OUTPUT: -se, -sarif-export string file to export results in SARIF format -je, -json-export string file to export results in JSON format -jle, -jsonl-export string file to export results in JSONL(ine) format + -rd, -redact string[] redact given list of keys from query parameter, request header and body CONFIGURATIONS: -config string path to the nuclei configuration file + -tp, -profile string template profile config file to run + -tpl, -profile-list list community template profiles -fr, -follow-redirects enable following redirects for http templates -fhr, -follow-host-redirects follow redirects on the same host -mr, -max-redirects int max number of redirects to follow for http templates (default 10) @@ -172,16 +230,17 @@ CONFIGURATIONS: -sml, -show-match-line show match lines for file templates, works with extractors only -ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default -sni string tls sni hostname to use (default: input domain name) + -dka, -dialer-keep-alive value keep-alive duration for network requests. -lfa, -allow-local-file-access allows file (payload) access anywhere on the system -lna, -restrict-local-network-access blocks connections to the local / private network -i, -interface string network interface to use for network scan -at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb) -sip, -source-ip string source ip address to use for network scan - -config-directory string override the default config path ($home/.config) - -rsr, -response-size-read int max response size to read in bytes (default 10485760) + -rsr, -response-size-read int max response size to read in bytes -rss, -response-size-save int max response size to read in bytes (default 1048576) -reset reset removes all nuclei configuration and data files (including nuclei-templates) -tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization + -hae, -http-api-endpoint string experimental http api endpoint INTERACTSH: -iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) @@ -193,68 +252,85 @@ INTERACTSH: -ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates FUZZING: - -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) - -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) + -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -fuzz enable loading fuzzing templates (Deprecated: use -dast instead) + -dast enable / run dast (fuzz) nuclei templates + -dts, -dast-server enable dast server mode (live fuzzing) + -dtr, -dast-report write dast scan report to file + -dtst, -dast-server-token string dast server token (optional) + -dtsa, -dast-server-address string dast server address (default "localhost:9055") + -dfp, -display-fuzz-points display fuzz points in the output for debugging + -fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10) + -fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low") + -cs, -fuzz-scope string[] in scope url regex to be followed by fuzzer + -cos, -fuzz-out-scope string[] out of scope url regex to be excluded by fuzzer UNCOVER: -uc, -uncover enable uncover engine -uq, -uncover-query string[] uncover search query - -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow) (default shodan) + -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan) -uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port") -ul, -uncover-limit int uncover results to return (default 100) -ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60) RATE-LIMIT: -rl, -rate-limit int maximum number of requests to send per second (default 150) - -rlm, -rate-limit-minute int maximum number of requests to send per minute + -rld, -rate-limit-duration value maximum number of requests to send per second (default 1s) + -rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED) -bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25) -c, -concurrency int maximum number of templates to be executed in parallel (default 25) -hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10) -headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10) + -jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120) + -pc, -payload-concurrency int max payload concurrency for each template (default 25) + -prc, -probe-concurrency int http probe concurrency with httpx (default 50) -tlc, -template-loading-concurrency int maximum number of concurrent template loading operations (default 50) OPTIMIZATIONS: - -timeout int time to wait in seconds before timeout (default 10) - -retries int number of times to retry a failed request (default 1) - -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) - -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) - -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) - -nmhe, -no-mhe disable skipping host from scan based on errors - -project use a project folder to avoid sending same request multiple times - -project-path string set a specific project path (default "/tmp") - -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) - -stream stream mode - start elaborating without sorting the input - -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) - -irt, -input-read-timeout duration timeout on input read (default 3m0s) - -nh, -no-httpx disable httpx probing for non-url input - -no-stdin disable stdin processing + -timeout int time to wait in seconds before timeout (default 10) + -retries int number of times to retry a failed request (default 1) + -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) + -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) + -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) + -nmhe, -no-mhe disable skipping host from scan based on errors + -project use a project folder to avoid sending same request multiple times + -project-path string set a specific project path (default "/tmp") + -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) + -stream stream mode - start elaborating without sorting the input + -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) + -irt, -input-read-timeout value timeout on input read (default 3m0s) + -nh, -no-httpx disable httpx probing for non-url input + -no-stdin disable stdin processing HEADLESS: - -headless enable templates that require headless browser support (root user on Linux will disable sandbox) - -page-timeout int seconds to wait for each page in headless mode (default 20) - -sb, -show-browser show the browser on the screen when running templates with headless mode - -sc, -system-chrome use local installed Chrome browser instead of nuclei installed - -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint - -lha, -list-headless-action list available headless actions + -headless enable templates that require headless browser support (root user on Linux will disable sandbox) + -page-timeout int seconds to wait for each page in headless mode (default 20) + -sb, -show-browser show the browser on the screen when running templates with headless mode + -ho, -headless-options string[] start headless chrome with additional options + -sc, -system-chrome use local installed Chrome browser instead of nuclei installed + -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint + -lha, -list-headless-action list available headless actions DEBUG: - -debug show all requests and responses - -dreq, -debug-req show all sent requests - -dresp, -debug-resp show all received responses - -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) - -pi, -proxy-internal proxy all internal requests - -ldf, -list-dsl-function list all supported DSL function signatures - -tlog, -trace-log string file to write sent requests trace log - -elog, -error-log string file to write sent requests error log - -version show nuclei version - -hm, -hang-monitor enable nuclei hang monitoring - -v, -verbose show verbose output - -profile-mem string optional nuclei memory profile dump file - -vv display templates loaded for scan - -svd, -show-var-dump show variables dump for debugging - -ep, -enable-pprof enable pprof debugging server - -tv, -templates-version shows the version of the installed nuclei-templates - -hc, -health-check run diagnostic check up + -debug show all requests and responses + -dreq, -debug-req show all sent requests + -dresp, -debug-resp show all received responses + -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) + -pi, -proxy-internal proxy all internal requests + -ldf, -list-dsl-function list all supported DSL function signatures + -tlog, -trace-log string file to write sent requests trace log + -elog, -error-log string file to write sent requests error log + -version show nuclei version + -hm, -hang-monitor enable nuclei hang monitoring + -v, -verbose show verbose output + -profile-mem string generate memory (heap) profile & trace files + -vv display templates loaded for scan + -svd, -show-var-dump show variables dump for debugging + -vdl, -var-dump-limit int limit the number of characters displayed in var dump (default 255) + -ep, -enable-pprof enable pprof debugging server + -tv, -templates-version shows the version of the installed nuclei-templates + -hc, -health-check run diagnostic check up UPDATE: -up, -update update nuclei engine to the latest released version @@ -271,13 +347,22 @@ STATISTICS: -stats display statistics about the running scan -sj, -stats-json display statistics in JSONL(ines) format -si, -stats-interval int number of seconds to wait between showing a statistics update (default 5) - -m, -metrics expose nuclei metrics on a port -mp, -metrics-port int port to expose nuclei metrics on (default 9092) + -hps, -http-stats enable http status capturing (experimental) CLOUD: - -auth configure projectdiscovery cloud (pdcp) api key - -cup, -cloud-upload upload scan results to pdcp dashboard - -sid, -scan-id string upload scan results to given scan id + -auth configure projectdiscovery cloud (pdcp) api key (default true) + -tid, -team-id string upload scan results to given team id (optional) (default "none") + -cup, -cloud-upload upload scan results to pdcp dashboard [DEPRECATED use -dashboard] + -sid, -scan-id string upload scan results to existing scan id (optional) + -sname, -scan-name string scan name to set (optional) + -pd, -dashboard upload / view nuclei results in projectdiscovery cloud (pdcp) UI dashboard + -pdu, -dashboard-upload string upload / view nuclei results file (jsonl) in projectdiscovery cloud (pdcp) UI dashboard + +AUTHENTICATION: + -sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan + -ps, -prefetch-secrets prefetch secrets from the secrets file + # NOTE: Headers in secrets files preserve exact casing (useful for case-sensitive APIs) EXAMPLES: @@ -297,123 +382,283 @@ Run nuclei with sorted Markdown outputs (with environment variables): $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ Additional documentation is available at: https://docs.projectdiscovery.io/getting-started/running + ``` -### Menjalankan Nuclei +Dokumentasi tambahan tersedia di: [**`docs.projectdiscovery.io/getting-started/running`**](https://docs.projectdiscovery.io/getting-started/running?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) -Memindai domain target dengan templat Nuclei yang [dikurasi oleh komunitas](https://github.com/projectdiscovery/nuclei-templates). +
-```sh -nuclei -u https://example.com -``` +### Pemindaian target tunggal -Memindai URL target dengan templat Nuclei yang [dikurasi oleh komunitas](https://github.com/projectdiscovery/nuclei-templates). +Untuk melakukan pemindaian cepat pada aplikasi web: ```sh -nuclei -list urls.txt -``` - -Contoh dari berkas `urls.txt`: - -```yaml -http://example.com -http://app.example.com -http://test.example.com -http://uat.example.com +nuclei -target https://example.com ``` -**Contoh lebih detil tentang menjalankan Nuclei dapat ditemukan [di sini](https://nuclei.projectdiscovery.io/nuclei/get-started/#running-nuclei).** - -# Untuk Teknisi Keamanan - -Nuclei menawarkan sejumlah besar fitur yang berguna bagi teknisi keamanan untuk menyesuaikan alur kerja di organisasi mereka. Dengan berbagai kemampuan pemindaian (seperti misalnya DNS, HTTP, TCP), teknisi keamanan dapat dengan mudah membuat rangkaian pemeriksaan khusus mereka dengan Nuclei. - -- Berbagai protokol yang didukung: TCP, DNS, HTTP, File, dll -- Mencapai langkah-langkah kerentanan yang kompleks dengan alur kerja dan [permintaan dinamis](https://blog.projectdiscovery.io/nuclei-unleashed-quickly-write-complex-exploits/). -- Mudah diintegrasikan ke dalam CI/CD, dirancang agar mudah diintegrasikan ke dalam siklus regresi untuk secara aktif memeriksa perbaikan dan kemunculan kerentanan kembali. - -

- Pelajari Selengkapnya -

- - - - - -
- -**Untuk Pemburu Celah Berhadiah:** - -Nuclei memungkinkan Anda untuk menyesuaikan pendekatan pengujian Anda dengan rangkaian pemeriksaan Anda sendiri dan dengan mudah menjalankan program celah berhadiah Anda. Selain itu, Nuclei dapat dengan mudah diintegrasikan ke dalam alur kerja pemindaian berkelanjutan. +### Pemindaian beberapa target -- Dirancang agar mudah diintegrasikan ke dalam alur kerja alat lainnya. -- Dapat memproses ribuan host hanya dalam beberapa menit. -- Mudah mengotomatiskan pendekatan pengujian khusus Anda dengan sintaks DSL berbasis YAML sederhana kami. +Nuclei dapat menangani pemindaian massal dengan menyediakan daftar target. Anda dapat menggunakan file yang berisi banyak URL. -Silakan periksa proyek sumber terbuka kami yang lain yang mungkin cocok dengan alur kerja celah berhadiah Anda: [github.com/projectdiscovery](https://github.com/projectdiscovery), kami juga menyediakan [penyegaran data DNS di Chaos setiap hari](https://chaos.projectdiscovery.io). +```sh +nuclei -list urls.txt +``` -
+### Pemindaian jaringan - - - - -
- -**Untuk Penguji Penetrasi:** +Ini akan memindai seluruh subnet untuk masalah terkait jaringan, seperti port terbuka atau layanan yang dikonfigurasi keliru. -Nuclei sangat meningkatkan cara Anda mendekati penilaian keamanan dengan menambah proses manual yang berulang. Para konsultan sudah mengonversi langkah penilaian manual mereka dengan Nuclei, ini memungkinkan mereka untuk menjalankan serangkaian pendekatan penilaian khusus mereka di ribuan host secara otomatis. - -Para penguji penetrasi mendapatkan kekuatan penuh dari templat publik dan kemampuan penyesuaian kami untuk mempercepat proses penilaian mereka, dan khususnya dengan siklus regresi di mana Anda dapat dengan mudah memverifikasi perbaikannya. +```sh +nuclei -target 192.168.1.0/24 +``` -- Mudah untuk membuat daftar pemeriksa kepatuhan Anda, sederet standar (mis., OWASP 10 Teratas). -- Dengan kemampuan seperti [fuzz](https://nuclei.projectdiscovery.io/templating-guide/protocols/http-fuzzing/) dan [alur kerja](https://nuclei.projectdiscovery.io/templating-guide/workflows/), langkah manual yang rumit dan penilaian berulang dapat dengan mudah diotomatisasi dengan Nuclei. -- Mudah untuk menguji ulang perbaikan kerentanan hanya dengan menjalankan ulang template. +### Pemindaian dengan template kustom Anda -
+Untuk menulis dan menggunakan template Anda sendiri, buat file `.yaml` dengan aturan-aturan spesifik, lalu gunakan seperti berikut. +```sh +nuclei -u https://example.com -t /path/to/your-template.yaml +``` -# Untuk Pengembang dan Organisasi +### Menghubungkan Nuclei ke ProjectDiscovery -Nuclei dibangun dengan kesederhanaan dalam pemikiran, dengan templat yang didukung komunitas oleh ratusan peneliti keamanan, memungkinkan Anda untuk tidak tertinggal dengan ancaman keamanan terbaru menggunakan pemindaian Nuclei terus menerus pada host. Ini dirancang agar mudah diintegrasikan ke dalam siklus pengujian regresi, untuk memverifikasi perbaikan dan menghilangkan kerentanan agar tidak terjadi di masa mendatang. +Anda dapat menjalankan pemindaian di mesin Anda dan mengunggah hasilnya ke platform cloud untuk analisis lebih lanjut dan perbaikan. -- **CI/CD:** Pengembang sudah memanfaatkan Nuclei dalam aliran CI/CD mereka, ini memungkinkan mereka untuk terus memantau lingkungan pementasan dan produksi mereka dengan templat yang disesuaikan. -- **Siklus Regresi Berkelanjutan:** Dengan Nuclei, Anda dapat membuat templat khusus pada setiap kerentanan baru yang teridentifikasi dan dimasukkan ke dalam mesin Nuclei untuk dihilangkan dalam siklus regresi berkelanjutan. +```sh +nuclei -target https://example.com -dashboard +``` -Kami memiliki [utas diskusi tentang ini](https://github.com/projectdiscovery/nuclei-templates/discussions/693), sudah ada beberapa program celah berhadiah yang memberikan insentif kepada peretas untuk menulis templat inti dengan setiap pengiriman, yang membantu mereka untuk menghilangkan kerentanan di semua aset mereka, serta untuk menghilangkan risiko masa depan yang muncul kembali pada lingkungan produksi. Jika Anda tertarik untuk menerapkannya di organisasi Anda, jangan ragu untuk [menghubungi kami](mailto:contact@projectdiscovery.io). Kami akan dengan senang hati membantu Anda dalam proses memulai, atau Anda juga dapat memposting ke [utas diskusi](https://github.com/projectdiscovery/nuclei-templates/discussions/693) untuk bantuan apapun. +> [!NOTE] +> Fitur ini sepenuhnya gratis dan tidak memerlukan langganan. Untuk panduan rinci, lihat [**`dokumentasi`**](https://docs.projectdiscovery.io/cloud/scanning/nuclei-scan?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme). -

- Siklus Regresi Berkelanjutan dengan Nuclei -

+
+
-

- Pelajari Selengkapnya -

+## Template Nuclei, Komunitas dan Hadiah 💎 +[**Template Nuclei**](https://github.com/projectdiscovery/nuclei-templates) didasarkan pada konsep file template berbasis YAML yang mendefinisikan bagaimana permintaan dikirim dan diproses. Ini memberikan kemampuan ekstensibilitas yang mudah pada nuclei. Template ditulis dalam YAML yang menentukan format yang sederhana dan mudah dibaca manusia untuk dengan cepat mendefinisikan proses eksekusi. -### Sumber Daya +**Coba secara online dengan Editor Template Nuclei berbasis AI kami yang gratis dengan** [**`mengklik di sini`**](https://cloud.projectdiscovery.io/templates). -- [Menemukan bug dengan menggunakan Nuclei dengan PinkDraconian (Robbe Van Roey)](https://www.youtube.com/watch?v=ewP0xVPW-Pk) oleh **[@PinkDraconian](https://twitter.com/PinkDraconian)** -- [Nuclei: Mengemas Pukulan dengan Pemindaian Kerentanan](https://bishopfox.com/blog/nuclei-vulnerability-scan) oleh **Bishopfox** -- [Kerangka kemanjuran WAF](https://www.fastly.com/blog/the-waf-efficacy-framework-measuring-the-effectiveness-of-your-waf) oleh **Fastly** -- [Memindai Aplikasi Web Langsung dengan Nuclei di Aliran CI/CD](https://blog.escape.tech/devsecops-part-iii-scanning-live-web-applications/) oleh **[@TristanKalos](https://twitter.com/TristanKalos)** -- [Pemindaian Bertenaga Komunitas dengan Nuclei](https://blog.projectdiscovery.io/community-powered-scanning-with-nuclei/) -- [Nuclei Unleashed - Menulis eksploitasi kompleks dengan cepat](https://blog.projectdiscovery.io/nuclei-unleashed-quickly-write-complex-exploits/) -- [Nuclei - Fuzz semua hal](https://blog.projectdiscovery.io/nuclei-fuzz-all-the-things/) -- [Integrasi Nuclei + Interactsh untuk Mengotomatiskan Pengujian OOB](https://blog.projectdiscovery.io/nuclei-interactsh-integration/) -- [Mempersenjatai Alur Kerja Nuclei untuk Menghancurkan Semua Hal](https://medium.com/@dwisiswant0/weaponizes-nuclei-workflows-to-pwn-all-the-things-cd01223feb77) oleh **[@dwisiswant0](https://github.com/dwisiswant0)** -- [Bagaimana Memindai Terus-menerus dengan Nuclei?](https://medium.com/@dwisiswant0/how-to-scan-continuously-with-nuclei-fcb7e9d8b8b9) oleh **[@dwisiswant0](https://github.com/dwisiswant0)** -- [Retas dengan Otomatisasi !!!](https://dhiyaneshgeek.github.io/web/security/2021/07/19/hack-with-automation/) oleh **[@DhiyaneshGeek](https://github.com/DhiyaneshGeek)** +Template Nuclei menawarkan cara yang efisien untuk mengidentifikasi dan mengomunikasikan kerentanan, menggabungkan detail penting seperti rating keparahan dan metode deteksi. Alat sumber terbuka yang dikembangkan oleh komunitas ini mempercepat respon ancaman dan diakui secara luas di dunia siber keamanan. Template Nuclei secara aktif dikontribusikan oleh ribuan peneliti keamanan di seluruh dunia. Kami menjalankan dua program untuk para kontributor: [**`Pioneers`**](https://projectdiscovery.io/pioneers) dan [**`💎 bounties`**](https://github.com/projectdiscovery/nuclei-templates/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22%F0%9F%92%8E%20Bounty%22). -### Kredit -Terima kasih kepada semua komunitas yang luar biasa yang [berkontribusi untuk mengirimkan PR](https://github.com/projectdiscovery/nuclei/graphs/contributors). Lihat juga proyek sumber-terbuka serupa di bawah ini yang mungkin sesuai dengan alur kerja Anda: +

+ Contoh template Nuclei untuk mendeteksi kesalahan konfigurasi TeamCity +

-[FFuF](https://github.com/ffuf/ffuf), [Qsfuzz](https://github.com/ameenmaali/qsfuzz), [Inception](https://github.com/proabiral/inception), [Snallygaster](https://github.com/hannob/snallygaster), [Gofingerprint](https://github.com/Static-Flow/gofingerprint), [Sn1per](https://github.com/1N3/Sn1per/tree/master/templates), [Google tsunami](https://github.com/google/tsunami-security-scanner), [Jaeles](https://github.com/jaeles-project/jaeles), [ChopChop](https://github.com/michelin/ChopChop) +#### Contoh + +Kunjungi [**dokumentasi kami**](https://docs.projectdiscovery.io/templates/introduction) untuk kasus penggunaan dan ide. + +| Kasus penggunaan | Template Nuclei | +| :----------------------------------------- | :------------------------------------------------- | +| Deteksi CVE yang sudah diketahui | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | +| Identifikasi kerentanan Out-of-Band | **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | +| Deteksi SQL Injection | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | +| Cross-Site Scripting (XSS) | **[Reflected XSS Detection](https://cloud.projectdiscovery.io/public/CVE-2023-4173)** | +| Kata sandi default atau lemah | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | +| File rahasia atau eksposur data | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | +| Identifikasi open redirect | **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | +| Deteksi subdomain takeover | **[Subdomain Takeover Templates](https://cloud.projectdiscovery.io/public/azure-takeover-detection)** | +| Kesalahan konfigurasi keamanan | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | +| Konfigurasi SSL/TLS yang lemah | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | +| Layanan cloud yang dikonfigurasi keliru | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | +| Kerentanan eksekusi kode jarak jauh | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | +| Serangan directory traversal | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | +| Kerentanan file inclusion | **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** | + + +
+
+ +## Misi Kami + +Pemindai kerentanan tradisional dibangun puluhan tahun yang lalu. Mereka tertutup, sangat lambat, dan digerakkan oleh vendor. Penyerang masa kini secara massal mengeksploitasi CVE yang baru dirilis di seluruh internet dalam hitungan hari, berbeda dengan tahun-tahun yang dibutuhkan sebelumnya. Pergeseran ini membutuhkan pendekatan yang sangat berbeda untuk menangani eksploit yang sedang tren di internet. + +Kami membangun Nuclei untuk menyelesaikan tantangan ini. Kami menjadikan seluruh framework mesin pemindai sebagai sumber terbuka dan dapat disesuaikan — memungkinkan komunitas keamanan global untuk berkolaborasi dan menangani vektor serangan dan kerentanan yang sedang tren di internet. Nuclei kini digunakan dan dikontribusikan oleh perusahaan Fortune 500, lembaga pemerintah, dan universitas. + +Anda dapat berpartisipasi dengan berkontribusi pada kode kami, [**`library template`**](https://github.com/projectdiscovery/nuclei-templates), atau [**`bergabung dengan tim kami`**](https://projectdiscovery.io/). + +
+
+ +## Kontributor :heart: + +Terima kasih kepada semua [**`kontributor komunitas yang luar biasa yang telah mengirimkan PR`**](https://github.com/projectdiscovery/nuclei/graphs/contributors) dan terus memperbarui proyek ini. :heart: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

-### Lisensi +
+
+
-Nuclei didistribusikan di bawah [Lisensi MIT](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) +
+ + **`nuclei`** didistribusikan di bawah [**Lisensi MIT**](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) -

- Join Discord Cek Dokumentasi Nuclei -

+
diff --git a/README_JP.md b/README_JP.md index 3a86ab7d9b..d4ae47a2cf 100644 --- a/README_JP.md +++ b/README_JP.md @@ -1,173 +1,664 @@ -

-
- Nuclei -

+![nuclei](/static/nuclei-cover-image.png) -

シンプルなYAMLベースのDSLに基づいた高速でカスタマイズ可能な脆弱性スキャナー

+
+ + `English` • + `中文` • + `Korean` • + `Indonesia` • + `Spanish` • + `日本語` • + `Portuguese` • + `Türkçe` + +

- - - - - - - - -

-

- 動作原理 • - インストール • - ドキュメント • - クレジット • - FAQ • - Discordに参加 -

+ +   + +   + + +
-

- 英語 • - 中国語 • - 韓国語 • - インドネシア語 • - スペイン語 • - ポルトガル語

---- +
+ +**Nuclei は、シンプルな YAML ベースのテンプレートを活用する、モダンで高性能な脆弱性スキャナーです。実環境の条件を再現したカスタム脆弱性検出シナリオを設計でき、誤検知をゼロにします。** + +- 脆弱性テンプレートを作成・カスタマイズするためのシンプルな YAML フォーマット。 +- トレンドの脆弱性に対応するため、数千人のセキュリティ専門家が貢献。 +- 実環境の手順をシミュレートして脆弱性を検証することで誤検知を削減。 +- 超高速な並列スキャン処理とリクエストクラスタリング。 +- 脆弱性検出と回帰テストのために CI/CD パイプラインに統合可能。 +- TCP、DNS、HTTP、SSL、WHOIS、JavaScript、Code など複数のプロトコルに対応。 +- Jira、Splunk、GitHub、Elastic、GitLab と統合可能。 + +
+
+ +## 目次 + +- [**`はじめに`**](#はじめに) + - [_`1. Nuclei CLI`_](#1-nuclei-cli) + - [_`2. Pro とエンタープライズ版`_](#2-pro-とエンタープライズ版) +- [**`ドキュメント`**](#ドキュメント) + - [_`コマンドラインフラグ`_](#コマンドラインフラグ) + - [_`単一ターゲットスキャン`_](#単一ターゲットスキャン) + - [_`複数ターゲットスキャン`_](#複数ターゲットスキャン) + - [_`ネットワークスキャン`_](#ネットワークスキャン) + - [_`カスタムテンプレートでのスキャン`_](#カスタムテンプレートでのスキャン) + - [_`Nuclei を ProjectDiscovery に接続`_](#nuclei-を-projectdiscovery-に接続) +- [**`Nuclei テンプレート、コミュニティと報奨`**](#nuclei-テンプレートコミュニティと報奨-) 💎 +- [**`私たちのミッション`**](#私たちのミッション) +- [**`コントリビューター`**](#コントリビューター-heart) ❤ +- [**`ライセンス`**](#ライセンス) + +
+
+ +## はじめに -Nucleiは、テンプレートに基づいてターゲット間でリクエストを送信するために使用され、偽陽性がゼロであり、多数のホストで高速なスキャンを提供します。Nucleiは、TCP、DNS、HTTP、SSL、ファイル、Whois、Websocket、Headless、Codeなど、さまざまなプロトコルのスキャンを提供します。強力で柔軟なテンプレートを使用して、Nucleiはすべての種類のセキュリティチェックをモデル化するために使用できます。 +### **1. Nuclei CLI** -**300人以上の** セキュリティ研究者およびエンジニアが提供するさまざまなタイプの脆弱性テンプレートを収容する[専用リポジトリ](https://github.com/projectdiscovery/nuclei-templates)を持っています。 +_お使いのマシンに Nuclei をインストールしてください。[**`こちら`**](https://docs.projectdiscovery.io/tools/nuclei/install?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)のインストールガイドに従って始めることができます。さらに、毎月の無料利用枠が豊富な[**`無料クラウドプラン`**](https://cloud.projectdiscovery.io/sign-up)も提供しています:_ -## 動作原理 +- 脆弱性の検出結果を保存・可視化 +- nuclei テンプレートの作成と管理 +- 最新の nuclei テンプレートへのアクセス +- ターゲットの発見と保存 -

- nuclei-flow -

+> [!Important] +> |**このプロジェクトは活発に開発中です**。リリースごとに破壊的変更が発生する可能性があります。アップデート前にリリース ChangeLog を確認してください。| +> |:--------------------------------| +> | このプロジェクトは主にスタンドアロンの CLI ツールとして使用するように構築されています。**nuclei をサービスとして実行すると、セキュリティ上のリスクが生じる可能性があります。** 注意して使用し、追加のセキュリティ対策を講じることをお勧めします。 | -| :exclamation: **免責事項** | -|---------------------------------| -| **このプロジェクトは積極的に開発されています**。リリースによって重大な変更が発生することがあります。更新する前にリリースの変更ログを確認してください。 | -| このプロジェクトは主にスタンドアロンのCLIツールとして使用されることを目的として構築されました。**Nucleiをサービスとして実行すると、セキュリティリスクが生じる可能性があります。**注意して使用し、追加のセキュリティ対策を講じることをお勧めします。 | +
-# Nucleiのインストール +### **2. Pro とエンタープライズ版** -Nucleiを正常にインストールするには、**go1.24.2**が必要です。以下のコマンドを実行して最新バージョンをインストールしてください - +_セキュリティチームや企業向けに、Nuclei OSS の上に構築されたクラウドホスティングサービスを提供しています。チームや既存のワークフローを使って、大規模に継続的な脆弱性スキャンを実行できるよう最適化されています:_ + +- 50 倍高速なスキャン +- 高精度な大規模スキャン +- クラウドサービスとの連携 (AWS、GCP、Azure、Cloudflare、Fastly、Terraform、Kubernetes) +- Jira、Slack、Linear、API、Webhook +- エグゼクティブおよびコンプライアンスレポート +- さらに: リアルタイムスキャン、SAML SSO、SOC 2 準拠プラットフォーム (EU と US のホスティングオプションあり)、チーム間で共有するワークスペースなど +- 新機能を継続的に[**`追加しています`**](https://feedback.projectdiscovery.io/changelog)! +- **適しているのは:** ペネトレーションテスター、セキュリティチーム、企業 + +大規模な組織で複雑な要件をお持ちの場合は、[**`Pro にサインアップ`**](https://projectdiscovery.io/pricing?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)するか、[**`当社チームにご相談`**](https://projectdiscovery.io/request-demo?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)ください。 + +
+
+ +## ドキュメント + +Nuclei の完全な[**`ドキュメントはこちら`**](https://docs.projectdiscovery.io/tools/nuclei/running)からご覧いただけます。Nuclei が初めての方は、[**`基礎的な YouTube シリーズ`**](https://www.youtube.com/playlist?list=PLZRbR9aMzTTpItEdeNSulo8bYsvil80Rl)もぜひご覧ください。 + +
+ + + +
+ +
+ +### インストール + +`nuclei` のインストールには **go >= 1.24.2** が必要です。以下のコマンドを実行してリポジトリを取得してください: ```sh go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest ``` +nuclei のインストールについて詳しくは `https://docs.projectdiscovery.io/tools/nuclei/install` を参照してください。 + +### コマンドラインフラグ + +ツールの全フラグを表示するには: + +```sh +nuclei -h +``` +
- Brew - - ```sh - brew install nuclei - ``` - -
-
- Docker - - ```sh - docker pull projectdiscovery/nuclei:latest - ``` - + 全てのヘルプフラグを展開 + +```yaml +Nuclei is a fast, template based vulnerability scanner focusing +on extensive configurability, massive extensibility and ease of use. + +Usage: + ./nuclei [flags] + +Flags: +TARGET: + -u, -target string[] target URLs/hosts to scan + -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) + -eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname) + -resume string resume scan from and save to specified file (clustering will be disabled) + -sa, -scan-all-ips scan all the IP's associated with dns record + -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) + +TARGET-FORMAT: + -im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger) (default "list") + -ro, -required-only use only required fields in input format when generating requests + -sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file + +TEMPLATES: + -nt, -new-templates run only new templates added in latest nuclei-templates release + -ntv, -new-templates-version string[] run new templates added in specific version + -as, -automatic-scan automatic web scan using wappalyzer technology detection to tags mapping + -t, -templates string[] list of template or template directory to run (comma-separated, file) + -turl, -template-url string[] template url or list containing template urls to run (comma-separated, file) + -ai, -prompt string generate and run template using ai prompt + -w, -workflows string[] list of workflow or workflow directory to run (comma-separated, file) + -wurl, -workflow-url string[] workflow url or list containing workflow urls to run (comma-separated, file) + -validate validate the passed templates to nuclei + -nss, -no-strict-syntax disable strict syntax check on templates + -td, -template-display displays the templates content + -tl list all templates matching current filters + -tgl list all available tags + -sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable + -code enable loading code protocol-based templates + -dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature + -esc, -enable-self-contained enable loading self-contained templates + -egm, -enable-global-matchers enable loading global matchers templates + -file enable loading file templates + +FILTERING: + -a, -author string[] templates to run based on authors (comma-separated, file) + -tags string[] templates to run based on tags (comma-separated, file) + -etags, -exclude-tags string[] templates to exclude based on tags (comma-separated, file) + -itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration + -id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard) + -eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file) + -it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration + -et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file) + -em, -exclude-matchers string[] template matchers to exclude in result + -s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown + -es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown + -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -tc, -template-condition string[] templates to run based on expression condition + +OUTPUT: + -o, -output string output file to write found issues/vulnerabilities + -sresp, -store-resp store all request/response passed through nuclei to output directory + -srd, -store-resp-dir string store all request/response passed through nuclei to custom directory (default "output") + -silent display findings only + -nc, -no-color disable output content coloring (ANSI escape codes) + -j, -jsonl write output in JSONL(ines) format + -irr, -include-rr -omit-raw include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) + -or, -omit-raw omit request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) + -ot, -omit-template omit encoded template in the JSON, JSONL output + -nm, -no-meta disable printing result metadata in cli output + -ts, -timestamp enables printing timestamp in cli output + -rdb, -report-db string nuclei reporting database (always use this to persist report data) + -ms, -matcher-status display match failure status + -me, -markdown-export string directory to export results in markdown format + -se, -sarif-export string file to export results in SARIF format + -je, -json-export string file to export results in JSON format + -jle, -jsonl-export string file to export results in JSONL(ine) format + -rd, -redact string[] redact given list of keys from query parameter, request header and body + +CONFIGURATIONS: + -config string path to the nuclei configuration file + -tp, -profile string template profile config file to run + -tpl, -profile-list list community template profiles + -fr, -follow-redirects enable following redirects for http templates + -fhr, -follow-host-redirects follow redirects on the same host + -mr, -max-redirects int max number of redirects to follow for http templates (default 10) + -dr, -disable-redirects disable redirects for http templates + -rc, -report-config string nuclei reporting module configuration file + -H, -header string[] custom header/cookie to include in all http request in header:value format (cli, file) + -V, -var value custom vars in key=value format + -r, -resolvers string file containing resolver list for nuclei + -sr, -system-resolvers use system DNS resolving as error fallback + -dc, -disable-clustering disable clustering of requests + -passive enable passive HTTP response processing mode + -fh2, -force-http2 force http2 connection on requests + -ev, -env-vars enable environment variables to be used in template + -cc, -client-cert string client certificate file (PEM-encoded) used for authenticating against scanned hosts + -ck, -client-key string client key file (PEM-encoded) used for authenticating against scanned hosts + -ca, -client-ca string client certificate authority file (PEM-encoded) used for authenticating against scanned hosts + -sml, -show-match-line show match lines for file templates, works with extractors only + -ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default + -sni string tls sni hostname to use (default: input domain name) + -dka, -dialer-keep-alive value keep-alive duration for network requests. + -lfa, -allow-local-file-access allows file (payload) access anywhere on the system + -lna, -restrict-local-network-access blocks connections to the local / private network + -i, -interface string network interface to use for network scan + -at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb) + -sip, -source-ip string source ip address to use for network scan + -rsr, -response-size-read int max response size to read in bytes + -rss, -response-size-save int max response size to read in bytes (default 1048576) + -reset reset removes all nuclei configuration and data files (including nuclei-templates) + -tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization + -hae, -http-api-endpoint string experimental http api endpoint + +INTERACTSH: + -iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) + -itoken, -interactsh-token string authentication token for self-hosted interactsh server + -interactions-cache-size int number of requests to keep in the interactions cache (default 5000) + -interactions-eviction int number of seconds to wait before evicting requests from cache (default 60) + -interactions-poll-duration int number of seconds to wait before each interaction poll request (default 5) + -interactions-cooldown-period int extra time for interaction polling before exiting (default 5) + -ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates + +FUZZING: + -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) + -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -fuzz enable loading fuzzing templates (Deprecated: use -dast instead) + -dast enable / run dast (fuzz) nuclei templates + -dts, -dast-server enable dast server mode (live fuzzing) + -dtr, -dast-report write dast scan report to file + -dtst, -dast-server-token string dast server token (optional) + -dtsa, -dast-server-address string dast server address (default "localhost:9055") + -dfp, -display-fuzz-points display fuzz points in the output for debugging + -fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10) + -fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low") + -cs, -fuzz-scope string[] in scope url regex to be followed by fuzzer + -cos, -fuzz-out-scope string[] out of scope url regex to be excluded by fuzzer + +UNCOVER: + -uc, -uncover enable uncover engine + -uq, -uncover-query string[] uncover search query + -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan) + -uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port") + -ul, -uncover-limit int uncover results to return (default 100) + -ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60) + +RATE-LIMIT: + -rl, -rate-limit int maximum number of requests to send per second (default 150) + -rld, -rate-limit-duration value maximum number of requests to send per second (default 1s) + -rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED) + -bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25) + -c, -concurrency int maximum number of templates to be executed in parallel (default 25) + -hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10) + -headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10) + -jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120) + -pc, -payload-concurrency int max payload concurrency for each template (default 25) + -prc, -probe-concurrency int http probe concurrency with httpx (default 50) + -tlc, -template-loading-concurrency int maximum number of concurrent template loading operations (default 50) + +OPTIMIZATIONS: + -timeout int time to wait in seconds before timeout (default 10) + -retries int number of times to retry a failed request (default 1) + -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) + -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) + -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) + -nmhe, -no-mhe disable skipping host from scan based on errors + -project use a project folder to avoid sending same request multiple times + -project-path string set a specific project path (default "/tmp") + -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) + -stream stream mode - start elaborating without sorting the input + -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) + -irt, -input-read-timeout value timeout on input read (default 3m0s) + -nh, -no-httpx disable httpx probing for non-url input + -no-stdin disable stdin processing + +HEADLESS: + -headless enable templates that require headless browser support (root user on Linux will disable sandbox) + -page-timeout int seconds to wait for each page in headless mode (default 20) + -sb, -show-browser show the browser on the screen when running templates with headless mode + -ho, -headless-options string[] start headless chrome with additional options + -sc, -system-chrome use local installed Chrome browser instead of nuclei installed + -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint + -lha, -list-headless-action list available headless actions + +DEBUG: + -debug show all requests and responses + -dreq, -debug-req show all sent requests + -dresp, -debug-resp show all received responses + -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) + -pi, -proxy-internal proxy all internal requests + -ldf, -list-dsl-function list all supported DSL function signatures + -tlog, -trace-log string file to write sent requests trace log + -elog, -error-log string file to write sent requests error log + -version show nuclei version + -hm, -hang-monitor enable nuclei hang monitoring + -v, -verbose show verbose output + -profile-mem string generate memory (heap) profile & trace files + -vv display templates loaded for scan + -svd, -show-var-dump show variables dump for debugging + -vdl, -var-dump-limit int limit the number of characters displayed in var dump (default 255) + -ep, -enable-pprof enable pprof debugging server + -tv, -templates-version shows the version of the installed nuclei-templates + -hc, -health-check run diagnostic check up + +UPDATE: + -up, -update update nuclei engine to the latest released version + -ut, -update-templates update nuclei-templates to latest released version + -ud, -update-template-dir string custom directory to install / update nuclei-templates + -duc, -disable-update-check disable automatic nuclei/templates update check + +HONEYPOT: + -hpd, -honeypot-detect detect potential honeypot hosts based on match concentration + -hpt, -honeypot-threshold int number of distinct template IDs required to flag a honeypot host (default 15) + -shp, -suppress-honeypot suppress output for flagged honeypot hosts + +STATISTICS: + -stats display statistics about the running scan + -sj, -stats-json display statistics in JSONL(ines) format + -si, -stats-interval int number of seconds to wait between showing a statistics update (default 5) + -mp, -metrics-port int port to expose nuclei metrics on (default 9092) + -hps, -http-stats enable http status capturing (experimental) + +CLOUD: + -auth configure projectdiscovery cloud (pdcp) api key (default true) + -tid, -team-id string upload scan results to given team id (optional) (default "none") + -cup, -cloud-upload upload scan results to pdcp dashboard [DEPRECATED use -dashboard] + -sid, -scan-id string upload scan results to existing scan id (optional) + -sname, -scan-name string scan name to set (optional) + -pd, -dashboard upload / view nuclei results in projectdiscovery cloud (pdcp) UI dashboard + -pdu, -dashboard-upload string upload / view nuclei results file (jsonl) in projectdiscovery cloud (pdcp) UI dashboard + +AUTHENTICATION: + -sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan + -ps, -prefetch-secrets prefetch secrets from the secrets file + # NOTE: Headers in secrets files preserve exact casing (useful for case-sensitive APIs) + + +EXAMPLES: +Run nuclei on single host: + $ nuclei -target example.com + +Run nuclei with specific template directories: + $ nuclei -target example.com -t http/cves/ -t ssl + +Run nuclei against a list of hosts: + $ nuclei -list hosts.txt + +Run nuclei with a JSON output: + $ nuclei -target example.com -json-export output.json + +Run nuclei with sorted Markdown outputs (with environment variables): + $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ + +Additional documentation is available at: https://docs.projectdiscovery.io/getting-started/running + +``` + +追加のドキュメントは以下で参照できます: [**`docs.projectdiscovery.io/getting-started/running`**](https://docs.projectdiscovery.io/getting-started/running?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) +
-**より多くのインストール方法は[こちら](https://docs.projectdiscovery.io/tools/nuclei/install)で見つけることができます。** +### 単一ターゲットスキャン - - - - -
+Web アプリケーションでクイックスキャンを実行するには: -### Nucleiテンプレート +```sh +nuclei -target https://example.com +``` -Nucleiは、バージョン[v2.5.2](https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2)以降、デフォルトでテンプレートの自動ダウンロード/更新をサポートしています。[**Nuclei-Templates**](https://github.com/projectdiscovery/nuclei-templates)プロジェクトは、常に更新されるコミュニティ提供の即時使用可能なテンプレートのリストを提供します。 +### 複数ターゲットスキャン -`update-templates`フラグを使用して、いつでもNucleiテンプレートを更新することができます。Nucleiの[テンプレートガイド](https://docs.projectdiscovery.io/templates/)に従って、個々のワークフローとニーズに合わせた独自のチェックを作成することができます。 +Nuclei はターゲットのリストを提供することで一括スキャンを処理できます。複数の URL を含むファイルを使用することができます。 -YAML DSLの構文リファレンスは[こちら](SYNTAX-REFERENCE.md)で確認できます。 +```sh +nuclei -list urls.txt +``` -
+### ネットワークスキャン -### 使用方法 +これにより、開いているポートや設定ミスのサービスといったネットワーク関連の問題をサブネット全体でスキャンします。 ```sh -nuclei -h +nuclei -target 192.168.1.0/24 ``` -これにより、ツールのヘルプが表示されます。ここには、サポートされているすべてのスイッチがあります。 +### カスタムテンプレートでのスキャン -```console -Nucleiは、広範な設定可能性、大規模な拡張性、および使いやすさに焦点を当てた、 -高速でテンプレートベースの脆弱性スキャナーです。 +独自のテンプレートを作成して使用するには、具体的なルールを記述した `.yaml` ファイルを作成し、次のように使用します。 -使用法: - ./nuclei [flags] +```sh +nuclei -u https://example.com -t /path/to/your-template.yaml +``` + +### Nuclei を ProjectDiscovery に接続 + +スキャンをローカルマシンで実行し、結果をクラウドプラットフォームにアップロードして、さらに分析・対処を行うことができます。 + +```sh +nuclei -target https://example.com -dashboard +``` + +> [!NOTE] +> この機能は完全に無料で、サブスクリプションは不要です。詳しいガイドは[**`ドキュメント`**](https://docs.projectdiscovery.io/cloud/scanning/nuclei-scan?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)を参照してください。 + +
+
+ +## Nuclei テンプレート、コミュニティと報奨 💎 +[**Nuclei テンプレート**](https://github.com/projectdiscovery/nuclei-templates)は、リクエストの送信と処理方法を定義する YAML ベースのテンプレートファイルという考え方に基づいています。これにより、nuclei に対して簡単な拡張機能を提供できます。テンプレートは YAML で記述され、実行プロセスを素早く定義するためにシンプルで人間が読みやすいフォーマットを採用しています。 + +**無料の AI を活用した Nuclei テンプレートエディタをオンラインで試すには** [**`こちらをクリック`**](https://cloud.projectdiscovery.io/templates)してください。 + +Nuclei テンプレートは、深刻度評価や検出方法といった重要な詳細を組み合わせ、脆弱性の特定と伝達を効率化します。このオープンソースでコミュニティ主導のツールは、脅威への対応を加速し、サイバーセキュリティ業界で広く認知されています。Nuclei テンプレートは、世界中の数千人のセキュリティ研究者によって活発に貢献されています。当社では貢献者のために 2 つのプログラムを運営しています: [**`Pioneers`**](https://projectdiscovery.io/pioneers) と [**`💎 bounties`**](https://github.com/projectdiscovery/nuclei-templates/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22%F0%9F%92%8E%20Bounty%22) です。 + + +

+ TeamCity の設定ミスを検出する Nuclei テンプレートの例 +

+ +#### 例 + +ユースケースやアイデアについては[**ドキュメント**](https://docs.projectdiscovery.io/templates/introduction)をご覧ください。 + +| ユースケース | Nuclei テンプレート | +| :----------------------------------------- | :------------------------------------------------- | +| 既知の CVE を検出 | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | +| 帯域外 (Out-of-Band) の脆弱性を特定 | **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | +| SQL インジェクションの検出 | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | +| クロスサイトスクリプティング (XSS) | **[Reflected XSS Detection](https://cloud.projectdiscovery.io/public/CVE-2023-4173)** | +| デフォルトまたは脆弱なパスワード | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | +| 機密ファイルや情報の露出 | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | +| オープンリダイレクトの特定 | **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | +| サブドメインの乗っ取りを検出 | **[Subdomain Takeover Templates](https://cloud.projectdiscovery.io/public/azure-takeover-detection)** | +| セキュリティ設定ミス | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | +| 脆弱な SSL/TLS 設定 | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | +| 設定ミスのクラウドサービス | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | +| リモートコード実行 (RCE) の脆弱性 | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | +| ディレクトリトラバーサル攻撃 | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | +| ファイルインクルージョンの脆弱性 | **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** | + + +
+
+ +## 私たちのミッション + +従来の脆弱性スキャナーは数十年前に構築されました。それらはクローズドソースで、非常に遅く、ベンダー主導です。今日の攻撃者は、かつては何年もかかった作業を数日で行い、新たに公開された CVE をインターネット全体で大規模に悪用しています。この変化は、インターネット上で流行する攻撃手法に対処するためにまったく異なるアプローチを必要としています。 + +私たちはこの課題を解決するために Nuclei を作りました。スキャンエンジンフレームワーク全体をオープンかつカスタマイズ可能にすることで、世界中のセキュリティコミュニティが協力して、インターネットで流行する攻撃ベクトルや脆弱性に対処できるようにしました。Nuclei は現在、Fortune 500 企業、政府機関、大学で使用され、貢献されています。 + +私たちのコード、[**`テンプレートライブラリ`**](https://github.com/projectdiscovery/nuclei-templates)への貢献、あるいは[**`チームへの参加`**](https://projectdiscovery.io/)を通じてご参加いただけます。 + +
+
+ +## コントリビューター :heart: + +PR を送ってくださり、このプロジェクトを最新に保ってくれている素晴らしい[**`コミュニティのコントリビューターの皆様`**](https://github.com/projectdiscovery/nuclei/graphs/contributors)に感謝します。 :heart: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ +
+
+
+ +
+ + **`nuclei`** は [**MIT ライセンス**](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) の下で配布されています -フラグ: -ターゲット: - -u, -target string[] スキャンする対象のURL/ホスト - -l, -list string スキャンする対象のURL/ホストのリストが含まれているファイルへのパス(1行に1つ) - -resume string 指定されたファイルからスキャンを再開し、指定されたファイルに保存(クラスタリングは無効になります) - -sa, -scan-all-ips DNSレコードに関連付けられているすべてのIPをスキャン - -iv, -ip-version string[] ホスト名のスキャンするIPバージョン(4,6)-(デフォルトは4) - -テンプレート: - -nt, -new-templates 最新のnuclei-templatesリリースに追加された新しいテンプレートのみを実行 - -ntv, -new-templates-version string[] 特定のバージョンに追加された新しいテンプレートを実行 - -as, -automatic-scan wappalyzer技術検出をタグマッピングに使用した自動Webスキャン - -t, -templates string[] 実行するテンプレートまたはテンプレートディレクトリのリスト(カンマ区切り、ファイル) - -turl, -template-url string[] 実行するテンプレートのURLまたはテンプレートURLのリスト(カンマ区切り、ファイル) - -w, -workflows string[] 実行するワークフローまたはワークフローディレクトリのリスト(カンマ区切り、ファイル) - -wurl, -workflow-url string[] 実行するワークフローのURLまたはワークフローURLのリスト(カンマ区切り、ファイル) - -validate Nucleiに渡されたテンプレートを検証 - -nss, -no-strict-syntax テンプレートで厳密な構文チェックを無効にする - -td, -template-display テンプレートの内容を表示 - -tl 利用可能なすべてのテンプレートをリスト - -sign NUCLEI_SIGNATURE_PRIVATE_KEY環境変数で定義された秘密鍵でテンプレートに署名 - -code コードプロトコルベースのテンプレートのロードを有効にする - -フィルタリング: - -a, -author string[] 作者に基づいて実行するテンプレート(カンマ区切り、ファイル) - -tags string[] タグに基づいて実行するテンプレート(カンマ区切り、ファイル) - -etags, -exclude-tags string[] タグに基づいて除外するテンプレート(カンマ区切り、ファイル) - -itags, -include-tags string[] デフォルトまたは設定によって除外されている場合でも実行する必要があるタグ - -id, -template-id string[] テンプレートIDに基づいて実行するテンプレート(カンマ区切り、ファイル) - -eid, -exclude-id string[] テンプレートIDに基づいて除外するテンプレート(カンマ区切り、ファイル) - -it, -include-templates string[] デフォルトまたは設定によって除外されている場合でも実行する必要があるテンプレート - -et, -exclude-templates string[] 除外するテンプレートまたはテンプレートディレクトリへのパス(カンマ区切り、ファイル) - -em, -exclude-matchers string[] 結果で除外するテンプレートマッチャー - -s, -severity value[] 重大度に基づいて実行するテンプレート。可能な値:info, low, medium, high, critical, unknown - -es, -exclude-severity value[] 重大度に基づいて除外するテンプレート。可能な値:info, low, medium, high, critical, unknown - -pt, -type value[] プロトコルタイプに基づいて実行するテンプレート。可能な値:dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -ept, -exclude-type value[] プロトコルタイプに基づいて除外するテンプレート。可能な値:dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -tc, -template-condition string[] 式条件に基づいて実行するテンプレート - -出力: - -o, -output string 発見された問題/脆弱性を書き込む出力ファイル - -sresp, -store-resp Nucleiを通じて渡されたすべてのリクエスト/レスポンスを出力ディレクトリに保存 - -srd, -store-resp-dir string Nucleiを通じて渡されたすべてのリクエスト/レスポンスをカスタムディレクトリに保存(デフォルトは「output」) - -silent 結果のみを表示 - -nc, -no-color 出力内容の着色を無効にする(ANSIエスケープコード) - -j, -jsonl JSONL(ines)形式で出力を書き込む - -irr, -include-rr -omit-raw JSON、JSONL、Markdown出力にリクエスト/レスポンスペアを含める(発見のみ)[非推奨 -omit-raw使用](デフォルトはtrue) - -or, -omit-raw JSON、JSONL、Markdown出力でリクエスト/レスポンスペアを省略する(発見のみ) - -ot, -omit-template JSON、JSONL出力でエンコードされたテンプレートを省略 - -nm, -no-meta CLI出力で結果のメタデータの印刷を無効にする - -ts, -timestamp CLI出力にタイムスタンプを印刷することを有効にする - -rdb, -report-db string Nucleiレポートデータベース(レポートデータを永続化するために常にこれを使用) - -ms, -matcher-status マッチ失敗のステータスを表示 - -me, -markdown-export string Markdown形式で結果をエクスポートするディレクトリ - -se, -sarif-export string SARIF形式で結果をエクスポートするファイル - -je, -json-export string JSON形式で結果をエクスポートするファイル - -jle, -jsonl-export string JSONL(ine)形式で結果をエクスポートするファイル - -設定: - -config string Nucleiの設定ファイルへのパス - -fr, -follow-redirects HTTPテンプレートのリダイレクトをフォローすることを有効にする - -fhr, -follow-host-redirects \ No newline at end of file +
diff --git a/README_KR.md b/README_KR.md index 6316cf1a82..9bb54a4bac 100644 --- a/README_KR.md +++ b/README_KR.md @@ -1,265 +1,342 @@ -

-
- Nuclei -

+![nuclei](/static/nuclei-cover-image.png) -

DSL 기반의 간단한 YAML을 기초로한 빠른 맞춤형 취약점 스캐너

+
+ + `English` • + `中文` • + `Korean` • + `Indonesia` • + `Spanish` • + `日本語` • + `Portuguese` • + `Türkçe` + +

- - - - - - - - -

- -

- 작동 방식 • - 설치 • - 보안 엔지니어를 위한 • - 개발자를 위한 • - 문서 • - Credits • - FAQs • - Discord 참가 -

-

- English • - 中文 • - 한국어 • - 스페인어 • - 포르투갈어 + +   + +   + + +


+

---- +
-Nuclei는 템플릿을 기반으로 대상 간에 요청을 보내기 위해 사용되며 긍정 오류(false positives)가 0이고 다수의 호스트에서 빠른 스캔을 제공합니다. Nuclei는 TCP, DNS, HTTP, SSL, File, Whois, Websocket, Headless 등을 포함한 다양한 프로토콜의 스캔을 제공합니다. 강력하고 유연한 템플릿을 통해 Nuclei는 모든 종류의 보안 검사를 모델링 할 수 있습니다. +**Nuclei는 간단한 YAML 기반 템플릿을 활용하는 현대적이고 고성능의 취약점 스캐너입니다. 실제 환경의 조건을 모사하는 맞춤형 취약점 탐지 시나리오를 설계할 수 있어 오탐(false positive)을 제로로 만들어 줍니다.** -**300명 이상의** 보안 연구원과 엔지니어가 제공한 다양한 유형의 취약점 템플릿을 보관하는 [전용 저장소](https://github.com/projectdiscovery/nuclei-templates)를 보유하고 있습니다. +- 취약점 템플릿을 만들고 커스터마이즈할 수 있는 간단한 YAML 형식. +- 트렌딩 취약점에 대응하기 위해 수천 명의 보안 전문가가 기여. +- 실제 환경의 절차를 시뮬레이션하여 취약점을 검증함으로써 오탐 감소. +- 매우 빠른 병렬 스캔 처리 및 요청 클러스터링. +- 취약점 탐지와 회귀 테스트를 위한 CI/CD 파이프라인 통합. +- TCP, DNS, HTTP, SSL, WHOIS, JavaScript, Code 등 다양한 프로토콜 지원. +- Jira, Splunk, GitHub, Elastic, GitLab과 통합. +
+
+## 목차 -## 작동 방식 +- [**`시작하기`**](#시작하기) + - [_`1. Nuclei CLI`_](#1-nuclei-cli) + - [_`2. Pro 및 Enterprise 에디션`_](#2-pro-및-enterprise-에디션) +- [**`문서`**](#문서) + - [_`명령줄 플래그`_](#명령줄-플래그) + - [_`단일 대상 스캔`_](#단일-대상-스캔) + - [_`다중 대상 스캔`_](#다중-대상-스캔) + - [_`네트워크 스캔`_](#네트워크-스캔) + - [_`사용자 정의 템플릿으로 스캔`_](#사용자-정의-템플릿으로-스캔) + - [_`Nuclei를 ProjectDiscovery에 연결`_](#nuclei를-projectdiscovery에-연결) +- [**`Nuclei 템플릿, 커뮤니티 및 보상`**](#nuclei-템플릿-커뮤니티-및-보상-) 💎 +- [**`우리의 미션`**](#우리의-미션) +- [**`기여자`**](#기여자-heart) ❤ +- [**`라이선스`**](#라이선스) -

- nuclei-flow -

+
+
+## 시작하기 -# 설치 +### **1. Nuclei CLI** -Nuclei를 성공적으로 설치하기 위해서 **go1.24.2**가 필요합니다. 다음 명령을 실행하여 최신 버전을 설치합니다. +_여러분의 머신에 Nuclei를 설치하세요. [**`여기`**](https://docs.projectdiscovery.io/tools/nuclei/install?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)에 있는 설치 가이드를 따라 시작할 수 있습니다. 또한 넉넉한 월간 무료 사용량을 제공하는 [**`무료 클라우드 티어`**](https://cloud.projectdiscovery.io/sign-up)도 제공합니다:_ -```sh -go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest -``` +- 취약점 발견 결과를 저장하고 시각화 +- nuclei 템플릿을 작성하고 관리 +- 최신 nuclei 템플릿에 액세스 +- 대상을 발견하고 저장 + +> [!Important] +> |**이 프로젝트는 활발하게 개발 중입니다**. 릴리스마다 호환성에 영향을 주는 변경이 발생할 수 있습니다. 업데이트 전 릴리스 changelog를 확인하세요.| +> |:--------------------------------| +> | 이 프로젝트는 독립적인 CLI 도구로 사용하도록 설계되었습니다. **nuclei를 서비스로 실행할 경우 보안 위험이 발생할 수 있습니다.** 주의해서 사용하고 추가적인 보안 조치를 권장합니다. | + +
+ +### **2. Pro 및 Enterprise 에디션** + +_보안 팀과 기업을 위해 Nuclei OSS 위에 구축된 클라우드 호스팅 서비스를 제공합니다. 팀과 기존 워크플로우와 함께 대규모로 지속적인 취약점 스캔을 수행할 수 있도록 최적화되어 있습니다:_ -**자세한 설치 방법은 [여기](https://nuclei.projectdiscovery.io/nuclei/get-started/)에서 찾을 수 있습니다.** +- 50배 빠른 스캔 +- 높은 정확도의 대규모 스캔 +- 클라우드 서비스 통합 (AWS, GCP, Azure, Cloudflare, Fastly, Terraform, Kubernetes) +- Jira, Slack, Linear, API, Webhook 지원 +- 경영진 및 컴플라이언스 리포트 +- 추가: 실시간 스캔, SAML SSO, SOC 2 준수 플랫폼(EU 및 미국 호스팅 옵션 제공), 공유 팀 워크스페이스 등 +- [**`새로운 기능을 지속적으로 추가`**](https://feedback.projectdiscovery.io/changelog)하고 있습니다! +- **적합한 대상:** 침투 테스터, 보안 팀, 기업 - - - - -
+대규모 조직이거나 복잡한 요구사항이 있는 경우 [**`Pro에 가입`**](https://projectdiscovery.io/pricing?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)하거나 [**`저희 팀에 문의`**](https://projectdiscovery.io/request-demo?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)해 주세요. -### Nuclei 템플릿 +
+
-Nuclei는 [v2.5.2](https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2)부터 자동 템플릿 다운로드/업데이트를 기본으로 지원합니다. -[**Nuclei-Templates**](https://github.com/projectdiscovery/nuclei-templates) 프로젝트는 지속적으로 업데이트되는 즉시 사용 가능한 템플릿 목록을 제공합니다. +## 문서 -`update-templates` 플래그를 사용하여 언제든 템플릿을 업데이트할 수 있습니다. Nuclei의 [템플릿 가이드](https://nuclei.projectdiscovery.io/templating-guide/)에 따라 개별 워크플로 및 요구 사항에 대한 자체 검사를 작성할 수 있습니다. +Nuclei 전체 [**`문서를 여기에서`**](https://docs.projectdiscovery.io/tools/nuclei/running) 확인하세요. Nuclei가 처음이라면 [**`기초 YouTube 시리즈`**](https://www.youtube.com/playlist?list=PLZRbR9aMzTTpItEdeNSulo8bYsvil80Rl)를 시청해 보세요. -YAML DSL의 참조 구문은 [여기](SYNTAX-REFERENCE.md)에서 확인할 수 있습니다. +
-
+ -### 사용 방법 + + +
+ +### 설치 + +`nuclei` 설치에는 **go >= 1.24.2** 가 필요합니다. 다음 명령어를 실행하여 저장소를 가져옵니다: ```sh -nuclei -h +go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest ``` -도구에 대한 도움말이 표시됩니다. 다음은 지원하는 모든 스위치들입니다. +nuclei 설치에 관한 자세한 내용은 `https://docs.projectdiscovery.io/tools/nuclei/install` 를 참조하세요. +### 명령줄 플래그 -```console -Nuclei는 빠르고, 템플릿 기반의 취약점 스캐너로 -넓은 설정 가능성, 대규모 확장성 및 사용 편의성에 중점을 두고 있습니다. +도구의 모든 플래그를 표시하려면: -사용법: +```sh +nuclei -h +``` + +
+ 전체 도움말 플래그 펼치기 + +```yaml +Nuclei is a fast, template based vulnerability scanner focusing +on extensive configurability, massive extensibility and ease of use. + +Usage: ./nuclei [flags] +Flags: TARGET: - -u, -target string[] 스캔할 대상 URL/호스트 - -l, -list string 스캔할 대상 URL/호스트 목록이 있는 파일 경로 (한 줄에 하나씩) - -resume string 지정된 파일에서 스캔을 재개하고 지정된 파일에 저장 (클러스터링은 비활성화됨) - -sa, -scan-all-ips dns 레코드와 관련된 모든 IP 스캔 - -iv, -ip-version string[] 스캔할 호스트의 IP 버전 (4,6) - (기본값 4) + -u, -target string[] target URLs/hosts to scan + -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) + -eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname) + -resume string resume scan from and save to specified file (clustering will be disabled) + -sa, -scan-all-ips scan all the IP's associated with dns record + -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) + +TARGET-FORMAT: + -im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger) (default "list") + -ro, -required-only use only required fields in input format when generating requests + -sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file TEMPLATES: - -nt, -new-templates 최신 nuclei-templates 릴리스에 추가된 새 템플릿만 실행 - -ntv, -new-templates-version string[] 특정 버전에 추가된 새 템플릿 실행 - -as, -automatic-scan wappalyzer 기술 감지를 사용하여 태그 매핑으로 자동 웹 스캔 - -t, -templates string[] 실행할 템플릿 또는 템플릿 디렉토리 목록 (쉼표로 구분, 파일) - -turl, -template-url string[] 실행할 템플릿 url 또는 템플릿 url 목록 (쉼표로 구분, 파일) - -w, -workflows string[] 실행할 워크플로우 또는 워크플로우 디렉토리 목록 (쉼표로 구분, 파일) - -wurl, -workflow-url string[] 실행할 워크플로우 url 또는 워크플로우 url 목록 (쉼표로 구분, 파일) - -validate nuclei에 전달된 템플릿 검증 - -nss, -no-strict-syntax 템플릿에서 엄격한 구문 검사 비활성화 - -td, -template-display 템플릿 내용 표시 - -tl 사용 가능한 모든 템플릿 목록 - -sign NUCLEI_SIGNATURE_PRIVATE_KEY 환경 변수에서 정의된 개인 키로 템플릿에 서명 - -code 코드 프로토콜 기반 템플릿 로딩 활성화 + -nt, -new-templates run only new templates added in latest nuclei-templates release + -ntv, -new-templates-version string[] run new templates added in specific version + -as, -automatic-scan automatic web scan using wappalyzer technology detection to tags mapping + -t, -templates string[] list of template or template directory to run (comma-separated, file) + -turl, -template-url string[] template url or list containing template urls to run (comma-separated, file) + -ai, -prompt string generate and run template using ai prompt + -w, -workflows string[] list of workflow or workflow directory to run (comma-separated, file) + -wurl, -workflow-url string[] workflow url or list containing workflow urls to run (comma-separated, file) + -validate validate the passed templates to nuclei + -nss, -no-strict-syntax disable strict syntax check on templates + -td, -template-display displays the templates content + -tl list all templates matching current filters + -tgl list all available tags + -sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable + -code enable loading code protocol-based templates + -dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature + -esc, -enable-self-contained enable loading self-contained templates + -egm, -enable-global-matchers enable loading global matchers templates + -file enable loading file templates FILTERING: - -a, -author string[] 저자를 기반으로 실행할 템플릿 (쉼표로 구분, 파일) - -tags string[] 태그를 기반으로 실행할 템플릿 (쉼표로 구분, 파일) - -etags, -exclude-tags string[] 태그를 기반으로 제외할 템플릿 (쉼표로 구분, 파일) - -itags, -include-tags string[] 기본값 또는 구성에 의해 제외되더라도 실행되어야 하는 태그 - -id, -template-id string[] 템플릿 id를 기반으로 실행할 템플릿 (쉼표로 구분, 파일, 와일드카드 허용) - -eid, -exclude-id string[] 템플릿 id를 기반으로 제외할 템플릿 (쉼표로 구분, 파일) - -it, -include-templates string[] 기본값 또는 구성에 의해 제외되더라도 실행되어야 하는 템플릿 - -et, -exclude-templates string[] 제외할 템플릿 또는 템플릿 디렉토리 (쉼표로 구분, 파일) - -em, -exclude-matchers string[] 결과에서 제외할 템플릿 매처 - -s, -severity value[] 심각도를 기반으로 실행할 템플릿. 가능한 값: info, low, medium, high, critical, unknown - -es, -exclude-severity value[] 심각도를 기반으로 제외할 템플릿. 가능한 값: info, low, medium, high, critical, unknown - -pt, -type value[] 프로토콜 유형을 기반으로 실행할 템플릿. 가능한 값: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -ept, -exclude-type value[] 프로토콜 유형을 기반으로 제외할 템플릿. 가능한 값: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -tc, -template-condition string[] 표현식 조건을 기반으로 실행할 템플릿 + -a, -author string[] templates to run based on authors (comma-separated, file) + -tags string[] templates to run based on tags (comma-separated, file) + -etags, -exclude-tags string[] templates to exclude based on tags (comma-separated, file) + -itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration + -id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard) + -eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file) + -it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration + -et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file) + -em, -exclude-matchers string[] template matchers to exclude in result + -s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown + -es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown + -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -tc, -template-condition string[] templates to run based on expression condition OUTPUT: - -o, -output string 발견된 문제/취약점을 작성할 출력 파일 - -sresp, -store-resp 모든 요청/응답을 nuclei를 통해 출력 디렉토리에 저장 - -srd, -store-resp-dir string 모든 요청/응답을 nuclei를 통해 사용자 정의 디렉토리에 저장 (기본값 "output") - -silent 결과만 표시 - -nc, -no-color 출력 내용 색상 비활성화 (ANSI 이스케이프 코드) - -j, -jsonl JSONL(ines) 형식으로 출력 작성 - -irr, -include-rr -omit-raw JSON, JSONL, Markdown 출력에 요청/응답 쌍 포함 (결과만 해당) [사용 중단 -omit-raw 사용] (기본값 true) - -or, -omit-raw JSON, JSONL, Markdown 출력에서 요청/응답 쌍 생략 (결과만 해당) - -ot, -omit-template JSON, JSONL 출력에서 인코딩된 템플릿 생략 - -nm, -no-meta CLI 출력에서 결과 메타데이터 인쇄 비활성화 - -ts, -timestamp CLI 출력에 타임스탬프 인쇄 활성화 - -rdb, -report-db string nuclei 보고 데이터베이스 (보고 데이터를 유지하려면 항상 이것을 사용) - -ms, -matcher-status 매치 실패 상태 표시 - -me, -markdown-export string Markdown 형식으로 결과를 내보낼 디렉토리 - -se, -sarif-export string SARIF 형식으로 결과를 내보낼 파일 - -je, -json-export string JSON 형식으로 결과를 내보낼 파일 - -jle, -jsonl-export string JSONL(ine) 형식으로 결과를 내보낼 파일 + -o, -output string output file to write found issues/vulnerabilities + -sresp, -store-resp store all request/response passed through nuclei to output directory + -srd, -store-resp-dir string store all request/response passed through nuclei to custom directory (default "output") + -silent display findings only + -nc, -no-color disable output content coloring (ANSI escape codes) + -j, -jsonl write output in JSONL(ines) format + -irr, -include-rr -omit-raw include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) + -or, -omit-raw omit request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) + -ot, -omit-template omit encoded template in the JSON, JSONL output + -nm, -no-meta disable printing result metadata in cli output + -ts, -timestamp enables printing timestamp in cli output + -rdb, -report-db string nuclei reporting database (always use this to persist report data) + -ms, -matcher-status display match failure status + -me, -markdown-export string directory to export results in markdown format + -se, -sarif-export string file to export results in SARIF format + -je, -json-export string file to export results in JSON format + -jle, -jsonl-export string file to export results in JSONL(ine) format + -rd, -redact string[] redact given list of keys from query parameter, request header and body CONFIGURATIONS: - -config string nuclei 구성 파일 경로 - -fr, -follow-redirects http 템플릿에 대한 리디렉션 따라가기 활성화 - -fhr, -follow-host-redirects 같은 호스트에서 리디렉션 따라가기 - -mr, -max-redirects int http 템플릿에 대해 따라갈 최대 리디렉션 수 (기본값 10) - -dr, -disable-redirects http 템플릿에 대한 리디렉션 비활성화 - -rc, -report-config string nuclei 보고 모듈 구성 파일 - -H, -header string[] 모든 http 요청에 포함할 사용자 정의 헤더/쿠키 (header:value 형식) (cli, file) - -V, -var value key=value 형식의 사용자 정의 변수 - -r, -resolvers string nuclei에 대한 리졸버 목록이 있는 파일 - -sr, -system-resolvers 오류 대체로 시스템 DNS 해결 사용 - -dc, -disable-clustering 요청 클러스터링 비활성화 - -passive 수동 HTTP 응답 처리 모드 활성화 - -fh2, -force-http2 요청에 http2 연결 강제 - -ev, -env-vars 템플릿에서 환경 변수 사용 활성화 - -cc, -client-cert string 스캔 대상 호스트에 대한 인증에 사용되는 클라이언트 인증서 파일 (PEM 인코딩) - -ck, -client-key string 스캔 대상 호스트에 대한 인증에 사용되는 클라이언트 키 파일 (PEM 인코딩) - -ca, -client-ca string 스캔 대상 호스트에 대한 인증에 사용되는 클라이언트 인증서 기관 파일 (PEM 인코딩) - -sml, -show-match-line 파일 템플릿에 대한 매치 라인 표시, 추출기만 작동 - -ztls ztls 라이브러리 사용, tls13에 대한 표준 하나로 자동 대체 [사용 중단] 자동 대체는 기본적으로 ztls로 활성화됨 - -sni string 사용할 tls sni 호스트 이름 (기본값: 입력 도메인 이름) - -lfa, -allow-local-file-access 시스템 어디에서나 파일 (페이로드) 액세스 허용 - -lna, -restrict-local-network-access 로컬 / 개인 네트워크로의 연결 차단 - -i, -interface string 네트워크 스캔에 사용할 네트워크 인터페이스 - -at, -attack-type string 수행할 페이로드 조합 유형 (batteringram,pitchfork,clusterbomb) - -sip, -source-ip string 네트워크 스캔에 사용할 소스 IP 주소 - -rsr, -response-size-read int 바이트 단위로 읽을 최대 응답 크기 (기본값 10485760) - -rss, -response-size-save int 바이트 단위로 읽을 최대 응답 크기 (기본값 1048576) - -reset reset은 모든 nuclei 구성 및 데이터 파일을 제거합니다 (nuclei-templates 포함) - -tlsi, -tls-impersonate 실험적인 클라이언트 hello (ja3) tls 무작위화 활성화 + -config string path to the nuclei configuration file + -tp, -profile string template profile config file to run + -tpl, -profile-list list community template profiles + -fr, -follow-redirects enable following redirects for http templates + -fhr, -follow-host-redirects follow redirects on the same host + -mr, -max-redirects int max number of redirects to follow for http templates (default 10) + -dr, -disable-redirects disable redirects for http templates + -rc, -report-config string nuclei reporting module configuration file + -H, -header string[] custom header/cookie to include in all http request in header:value format (cli, file) + -V, -var value custom vars in key=value format + -r, -resolvers string file containing resolver list for nuclei + -sr, -system-resolvers use system DNS resolving as error fallback + -dc, -disable-clustering disable clustering of requests + -passive enable passive HTTP response processing mode + -fh2, -force-http2 force http2 connection on requests + -ev, -env-vars enable environment variables to be used in template + -cc, -client-cert string client certificate file (PEM-encoded) used for authenticating against scanned hosts + -ck, -client-key string client key file (PEM-encoded) used for authenticating against scanned hosts + -ca, -client-ca string client certificate authority file (PEM-encoded) used for authenticating against scanned hosts + -sml, -show-match-line show match lines for file templates, works with extractors only + -ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default + -sni string tls sni hostname to use (default: input domain name) + -dka, -dialer-keep-alive value keep-alive duration for network requests. + -lfa, -allow-local-file-access allows file (payload) access anywhere on the system + -lna, -restrict-local-network-access blocks connections to the local / private network + -i, -interface string network interface to use for network scan + -at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb) + -sip, -source-ip string source ip address to use for network scan + -rsr, -response-size-read int max response size to read in bytes + -rss, -response-size-save int max response size to read in bytes (default 1048576) + -reset reset removes all nuclei configuration and data files (including nuclei-templates) + -tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization + -hae, -http-api-endpoint string experimental http api endpoint INTERACTSH: - -iserver, -interactsh-server string 자체 호스팅 인스턴스를 위한 interactsh 서버 url (기본값: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) - -itoken, -interactsh-token string 자체 호스팅 interactsh 서버를 위한 인증 토큰 - -interactions-cache-size int 상호 작용 캐시에 유지할 요청 수 (기본값 5000) - -interactions-eviction int 캐시에서 요청을 제거하기 전에 기다릴 초 수 (기본값 60) - -interactions-poll-duration int 각 상호 작용 폴 요청 사이에 기다릴 초 수 (기본값 5) - -interactions-cooldown-period int 종료 전에 상호 작용 폴링에 추가 시간 (기본값 5) - -ni, -no-interactsh OAST 테스트를 위한 interactsh 서버 비활성화, OAST 기반 템플릿 제외 + -iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) + -itoken, -interactsh-token string authentication token for self-hosted interactsh server + -interactions-cache-size int number of requests to keep in the interactions cache (default 5000) + -interactions-eviction int number of seconds to wait before evicting requests from cache (default 60) + -interactions-poll-duration int number of seconds to wait before each interaction poll request (default 5) + -interactions-cooldown-period int extra time for interaction polling before exiting (default 5) + -ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates FUZZING: - -ft, -fuzzing-type string 템플릿에 설정된 퍼징 유형 재정의 (replace, prefix, postfix, infix) - -fm, -fuzzing-mode string 템플릿에 설정된 퍼징 모드 재정의 (multiple, single) + -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) + -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -fuzz enable loading fuzzing templates (Deprecated: use -dast instead) + -dast enable / run dast (fuzz) nuclei templates + -dts, -dast-server enable dast server mode (live fuzzing) + -dtr, -dast-report write dast scan report to file + -dtst, -dast-server-token string dast server token (optional) + -dtsa, -dast-server-address string dast server address (default "localhost:9055") + -dfp, -display-fuzz-points display fuzz points in the output for debugging + -fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10) + -fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low") + -cs, -fuzz-scope string[] in scope url regex to be followed by fuzzer + -cos, -fuzz-out-scope string[] out of scope url regex to be excluded by fuzzer UNCOVER: - -uc, -uncover uncover 엔진 활성화 - -uq, -uncover-query string[] uncover 검색 쿼리 - -ue, -uncover-engine string[] uncover 검색 엔진 (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow) (기본값 shodan) - -uf, -uncover-field string 반환할 uncover 필드 (ip,port,host) (기본값 "ip:port") - -ul, -uncover-limit int 반환할 uncover 결과 (기본값 100) - -ur, -uncover-ratelimit int 알려지지 않은 ratelimit의 엔진을 재정의하는 ratelimit (기본값 60 req/min) (기본값 60) + -uc, -uncover enable uncover engine + -uq, -uncover-query string[] uncover search query + -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan) + -uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port") + -ul, -uncover-limit int uncover results to return (default 100) + -ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60) RATE-LIMIT: - -rl, -rate-limit int 초당 보낼 최대 요청 수 (기본값 150) - -rlm, -rate-limit-minute int 분당 보낼 최대 요청 수 - -bs, -bulk-size int 템플릿당 병렬로 분석할 최대 호스트 수 (기본값 25) - -c, -concurrency int 병렬로 실행할 최대 템플릿 수 (기본값 25) - -hbs, -headless-bulk-size int 템플릿당 병렬로 분석할 최대 headless 호스트 수 (기본값 10) - -headc, -headless-concurrency int 병렬로 실행할 최대 headless 템플릿 수 (기본값 10) - -tlc, -template-loading-concurrency int 최대 동시 템플릿 로딩 작업 수 (기본값 50) + -rl, -rate-limit int maximum number of requests to send per second (default 150) + -rld, -rate-limit-duration value maximum number of requests to send per second (default 1s) + -rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED) + -bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25) + -c, -concurrency int maximum number of templates to be executed in parallel (default 25) + -hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10) + -headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10) + -jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120) + -pc, -payload-concurrency int max payload concurrency for each template (default 25) + -prc, -probe-concurrency int http probe concurrency with httpx (default 50) + -tlc, -template-loading-concurrency int maximum number of concurrent template loading operations (default 50) OPTIMIZATIONS: - -timeout int 타임아웃 전에 기다릴 초 수 (기본값 10) - -retries int 실패한 요청을 재시도하는 횟수 (기본값 1) - -ldp, -leave-default-ports 기본 HTTP/HTTPS 포트 남겨두기 (예: host:80,host:443) - -mhe, -max-host-error int 스캔에서 건너뛰기 전에 호스트에서 허용되는 최대 오류 수 (기본값 30) - -te, -track-error string[] 최대 호스트 오류 감시 목록에 주어진 오류 추가 (표준, 파일) - -nmhe, -no-mhe 오류를 기반으로 스캔에서 호스트 건너뛰기 비활성화 - -project 동일한 요청을 여러 번 보내는 것을 피하기 위해 프로젝트 폴더 사용 - -project-path string 특정 프로젝트 경로 설정 (기본값 "/tmp") - -spm, -stop-at-first-match 첫 번째 매치 후 HTTP 요청 처리 중지 (템플릿/워크플로우 로직이 깨질 수 있음) - -stream 스트림 모드 - 입력 정렬 없이 시작 - -ss, -scan-strategy value 스캔하는 동안 사용할 전략(auto/host-spray/template-spray) (기본값 auto) - -irt, -input-read-timeout value 입력 읽기 시간 초과 (기본값 3m0s) - -nh, -no-httpx 비 URL 입력에 대한 httpx 프로브 비활성화 - -no-stdin stdin 처리를 비활성화합니다 + -timeout int time to wait in seconds before timeout (default 10) + -retries int number of times to retry a failed request (default 1) + -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) + -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) + -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) + -nmhe, -no-mhe disable skipping host from scan based on errors + -project use a project folder to avoid sending same request multiple times + -project-path string set a specific project path (default "/tmp") + -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) + -stream stream mode - start elaborating without sorting the input + -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) + -irt, -input-read-timeout value timeout on input read (default 3m0s) + -nh, -no-httpx disable httpx probing for non-url input + -no-stdin disable stdin processing HEADLESS: - -headless headless 브라우저 지원이 필요한 템플릿 활성화 (Linux의 root 사용자는 샌드박스 비활성화) - -page-timeout int headless 모드에서 각 페이지를 기다리는 시간(초) (기본값 20) - -sb, -show-browser headless 모드로 실행하는 템플릿에서 브라우저 화면 표시 - -ho, -headless-options string[] 추가 옵션으로 headless chrome 시작 - -sc, -system-chrome nuclei가 설치한 Chrome 대신 로컬에 설치된 Chrome 브라우저 사용 - -cdpe, -cdp-endpoint string Chrome DevTools Protocol (CDP) 엔드포인트를 통한 원격 브라우저 사용 - -lha, -list-headless-action 사용 가능한 headless 액션 목록 표시 + -headless enable templates that require headless browser support (root user on Linux will disable sandbox) + -page-timeout int seconds to wait for each page in headless mode (default 20) + -sb, -show-browser show the browser on the screen when running templates with headless mode + -ho, -headless-options string[] start headless chrome with additional options + -sc, -system-chrome use local installed Chrome browser instead of nuclei installed + -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint + -lha, -list-headless-action list available headless actions DEBUG: - -debug 모든 요청과 응답 표시 - -dreq, -debug-req 보낸 모든 요청 표시 - -dresp, -debug-resp 받은 모든 응답 표시 - -p, -proxy string[] 사용할 http/socks5 프록시 목록 (쉼표로 구분하거나 파일 입력) - -pi, -proxy-internal 모든 내부 요청을 프록시를 통해 전송 - -ldf, -list-dsl-function 지원되는 모든 DSL 함수 시그니처 목록 표시 - -tlog, -trace-log string 보낸 요청 추적 로그를 기록할 파일 - -elog, -error-log string 보낸 요청 오류 로그를 기록할 파일 - -version nuclei 버전 표시 - -hm, -hang-monitor nuclei 멈춤 모니터링 활성화 - -v, -verbose 자세한 출력 표시 - -profile-mem string 선택적인 nuclei 메모리 프로필 덤프 파일 - -vv 스캔에 로드된 템플릿 표시 - -svd, -show-var-dump 디버깅을 위한 변수 덤프 표시 - -ep, -enable-pprof pprof 디버깅 서버 활성화 - -tv, -templates-version 설치된 nuclei-templates의 버전 표시 - -hc, -health-check 진단 검사 실행 + -debug show all requests and responses + -dreq, -debug-req show all sent requests + -dresp, -debug-resp show all received responses + -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) + -pi, -proxy-internal proxy all internal requests + -ldf, -list-dsl-function list all supported DSL function signatures + -tlog, -trace-log string file to write sent requests trace log + -elog, -error-log string file to write sent requests error log + -version show nuclei version + -hm, -hang-monitor enable nuclei hang monitoring + -v, -verbose show verbose output + -profile-mem string generate memory (heap) profile & trace files + -vv display templates loaded for scan + -svd, -show-var-dump show variables dump for debugging + -vdl, -var-dump-limit int limit the number of characters displayed in var dump (default 255) + -ep, -enable-pprof enable pprof debugging server + -tv, -templates-version shows the version of the installed nuclei-templates + -hc, -health-check run diagnostic check up UPDATE: - -up, -update 최신 릴리스 버전으로 nuclei 엔진 업데이트 - -ut, -update-templates 최신 릴리스 버전으로 nuclei-templates 업데이트 - -ud, -update-template-dir string nuclei-templates를 설치/업데이트할 사용자 지정 디렉토리 - -duc, -disable-update-check 자동 nuclei/templates 업데이트 확인 비활성화 + -up, -update update nuclei engine to the latest released version + -ut, -update-templates update nuclei-templates to latest released version + -ud, -update-template-dir string custom directory to install / update nuclei-templates + -duc, -disable-update-check disable automatic nuclei/templates update check HONEYPOT: -hpd, -honeypot-detect detect potential honeypot hosts based on match concentration @@ -267,158 +344,321 @@ HONEYPOT: -shp, -suppress-honeypot suppress output for flagged honeypot hosts STATISTICS: - -stats 실행 중인 스캔에 대한 통계 표시 - -sj, -stats-json JSONL(ines) 형식으로 통계 표시 - -si, -stats-interval int 통계 업데이트를 표시하기까지 기다릴 초 수 (기본값 5) - -mp, -metrics-port int nuclei 메트릭스를 노출할 포트 (기본값 9092) + -stats display statistics about the running scan + -sj, -stats-json display statistics in JSONL(ines) format + -si, -stats-interval int number of seconds to wait between showing a statistics update (default 5) + -mp, -metrics-port int port to expose nuclei metrics on (default 9092) + -hps, -http-stats enable http status capturing (experimental) CLOUD: - -auth projectdiscovery 클라우드 (pdcp) API 키 구성 - -cup, -cloud-upload 스캔 결과를 pdcp 대시보드에 업로드 - -sid, -scan-id string 주어진 스캔 ID에 스캔 결과 업로드 - - -예시: -단일 호스트에서 nuclei 실행: + -auth configure projectdiscovery cloud (pdcp) api key (default true) + -tid, -team-id string upload scan results to given team id (optional) (default "none") + -cup, -cloud-upload upload scan results to pdcp dashboard [DEPRECATED use -dashboard] + -sid, -scan-id string upload scan results to existing scan id (optional) + -sname, -scan-name string scan name to set (optional) + -pd, -dashboard upload / view nuclei results in projectdiscovery cloud (pdcp) UI dashboard + -pdu, -dashboard-upload string upload / view nuclei results file (jsonl) in projectdiscovery cloud (pdcp) UI dashboard + +AUTHENTICATION: + -sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan + -ps, -prefetch-secrets prefetch secrets from the secrets file + # NOTE: Headers in secrets files preserve exact casing (useful for case-sensitive APIs) + + +EXAMPLES: +Run nuclei on single host: $ nuclei -target example.com -특정 템플릿 디렉토리로 nuclei 실행: +Run nuclei with specific template directories: $ nuclei -target example.com -t http/cves/ -t ssl -호스트 목록에 대해 nuclei 실행: +Run nuclei against a list of hosts: $ nuclei -list hosts.txt -JSON 출력으로 nuclei 실행: +Run nuclei with a JSON output: $ nuclei -target example.com -json-export output.json -정렬된 Markdown 출력으로 nuclei 실행 (환경 변수 사용): +Run nuclei with sorted Markdown outputs (with environment variables): $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ -추가 문서는 여기에서 확인할 수 있습니다: https://docs.projectdiscovery.io/getting-started/running +Additional documentation is available at: https://docs.projectdiscovery.io/getting-started/running + ``` -### Nuclei 실행 +추가 문서는 다음 주소에서 확인할 수 있습니다: [**`docs.projectdiscovery.io/getting-started/running`**](https://docs.projectdiscovery.io/getting-started/running?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) -[community-curated](https://github.com/projectdiscovery/nuclei-templates) nuclei 템플릿으로 대상 도메인을 스캔합니다. +
-```sh -nuclei -u https://example.com -``` +### 단일 대상 스캔 -[community-curated](https://github.com/projectdiscovery/nuclei-templates) nuclei 템플릿으로 대상 URL들을 스캔합니다. +웹 애플리케이션에서 빠르게 스캔을 수행하려면: ```sh -nuclei -list urls.txt -``` - -`urls.txt`의 예시: - -```yaml -http://example.com -http://app.example.com -http://test.example.com -http://uat.example.com +nuclei -target https://example.com ``` -**nuclei를 실행하는 자세한 예는 [여기](https://nuclei.projectdiscovery.io/nuclei/get-started/#running-nuclei)에서 찾을 수 있습니다.** - -# 보안 엔지니어를 위한 - -Nuclei는 보안 엔지니어가 조직에서 워크플로를 커스텀하는 데 도움이 되는 많은 기능을 제공합니다. -다양한 스캔 기능(DNS, HTTP, TCP 등)을 통해 보안 엔지니어는 Nuclei를 사용하여 맞춤형 검사 세트를 쉽게 만들 수 있습니다. - -- 다양한 프로토콜 지원: TCP, DNS, HTTP, File, etc -- 워크플로 및 [동적 요청](https://blog.projectdiscovery.io/nuclei-unleashed-quickly-write-complex-exploits/)을 통한 복잡한 취약점 탐색 달성 -- CI/CD에 쉽게 통합할 수 있으며, 회귀 주기에 쉽게 통합되어 취약점의 수정 및 재출현을 능동적으로 확인할 수 있도록 설계됨. - -

- Learn More -

- - - - - -
- -**Bug Bounty hunter들을 위해:** - -Nuclei를 사용하면 자체 검사 모음으로 테스트 접근 방식을 사용자 정의하고 버그 바운티 프로그램에서 쉽게 실행할 수 있습니다. -또한 Nuclei는 모든 연속 스캔 워크플로에 쉽게 통합될 수 있습니다. - -- 다른 도구 워크플로에 쉽게 통합되도록 설계됨. -- 몇 분 안에 수천 개의 호스트를 처리할 수 있음. -- 간단한 YAML DSL로 사용자 지정 테스트 접근 방식을 쉽게 자동화할 수 있음. +### 다중 대상 스캔 -버그 바운티 워크플로에 맞는 다른 오픈 소스 프로젝트를 확인할 수 있습니다.: [github.com/projectdiscovery](https://github.com/projectdiscovery), 또한, 우리는 매일 [Chaos에서 DNS 데이터를 갱신해 호스팅합니다](https://chaos.projectdiscovery.io). +Nuclei는 대상 목록을 제공하여 대량 스캔을 수행할 수 있습니다. 여러 URL을 포함하는 파일을 사용할 수 있습니다. -
- - - - - -
- -**침투 테스터들을 위해:** +```sh +nuclei -list urls.txt +``` -Nuclei는 수동적이고 반복적인 프로세스를 보강하여 보안 평가에 접근하는 방식을 크게 개선합니다. -컨설턴트들은 이미 Nuclei를 사용해 수동 평가 단계를 전환하고 있으며 이를 통해 수천 개의 호스트에서 자동화된 방식으로 맞춤형 평가 접근 방식을 실행할 수 있습니다. +### 네트워크 스캔 -침투 테스터는 평가 프로세스, 특히 수정 사항을 쉽게 확인할 수 있는 회귀 주기를 통해 공개 템플릿 및 사용자 지정 기능을 최대한 활용할 수 있습니다. +이 명령은 열린 포트나 잘못 구성된 서비스 같은 네트워크 관련 문제를 찾기 위해 전체 서브넷을 스캔합니다. -- 규정 준수, 표준 제품군(예: OWASP Top 10) 체크리스트 쉽게 생성. -- Nuclei의 [fuzz](https://nuclei.projectdiscovery.io/templating-guide/protocols/http-fuzzing/) 및 [workflows](https://nuclei.projectdiscovery.io/templating-guide/workflows/) 같은 기능으로 복잡한 수동 단계와 반복 평가를 쉽게 자동화할 수 있음. -- 템플릿 재실행으로 취약점 수정 재테스트 용이. +```sh +nuclei -target 192.168.1.0/24 +``` -
+### 사용자 정의 템플릿으로 스캔 +자신만의 템플릿을 작성하여 사용하려면, 구체적인 규칙이 담긴 `.yaml` 파일을 만들고 다음과 같이 사용하세요. -# 개발자를 위한 +```sh +nuclei -u https://example.com -t /path/to/your-template.yaml +``` -Nuclei는 단순성을 염두에 두고 구축되었으며 수백 명의 보안 연구원들이 지원하는 커뮤니티 템플릿을 사용하여 호스트에서 지속적인 Nuclei 스캔을 사용하여 최신 보안 위협에 대한 업데이트를 유지할 수 있습니다. +### Nuclei를 ProjectDiscovery에 연결 -수정 사항을 검증하고 향후 발생하는 취약점을 제거하기 위해 회귀 테스트 주기에 쉽게 통합되도록 설계되었습니다. +스캔을 로컬 머신에서 실행하고 추가 분석 및 대응을 위해 결과를 클라우드 플랫폼에 업로드할 수 있습니다. -- **CI/CD:** 엔지니어들은 이미 CI/CD 파이프라인 내에서 Nuclei를 활용하고 있으며 이를 통해 맞춤형 템플릿으로 스테이징 및 프로덕션 환경을 지속적으로 모니터링할 수 있습니다. -- **Continuous Regression Cycle:** Nuclei를 사용하면 새로 식별된 모든 취약점에 대한 사용자 지정 템플릿을 만들고 Nuclei 엔진에 넣어 지속적인 회귀 주기에서 제거할 수 있습니다. +```sh +nuclei -target https://example.com -dashboard +``` -[이 문제에 대한 논의 스레드](https://github.com/projectdiscovery/nuclei-templates/discussions/693)가 있으며, Nuclei 템플릿을 작성해 제출할 때마다 해커에게 인센티브를 제공하는 버그 바운티 프로그램들이 존재합니다. 이 프로그램은 모든 자산에서 취약점을 제거할 뿐만 아니라 미래에 프로덕션에 다시 등장할 위험을 제거할 수 있도록 도와줍니다. -이것을 당신의 조직에서 구현하는 것에 관심이 있다면 언제든지 [저희에게 연락하십시오](mailto:contact@projectdiscovery.io). -시작하는 과정에서 기꺼이 도와드리거나 [도움이 필요한 경우 논의 스레드](https://github.com/projectdiscovery/nuclei-templates/discussions/693)에 게시할 수도 있습니다. +> [!NOTE] +> 이 기능은 완전히 무료이며 구독이 필요하지 않습니다. 자세한 가이드는 [**`문서`**](https://docs.projectdiscovery.io/cloud/scanning/nuclei-scan?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme)를 참조하세요. -

- regression-cycle-with-nuclei -

+
+
-

- Learn More -

+## Nuclei 템플릿, 커뮤니티 및 보상 💎 +[**Nuclei 템플릿**](https://github.com/projectdiscovery/nuclei-templates)은 요청을 어떻게 보내고 처리할지 정의하는 YAML 기반 템플릿 파일의 개념에 기반합니다. 이를 통해 nuclei에 손쉽게 확장성을 제공합니다. 템플릿은 YAML로 작성되며, 실행 프로세스를 빠르게 정의할 수 있는 사람이 읽기 쉬운 간단한 형식을 따릅니다. -### Resources +**무료 AI 기반 Nuclei 템플릿 에디터로 온라인에서 직접 사용해 보세요** [**`여기를 클릭`**](https://cloud.projectdiscovery.io/templates). -- [Finding bugs with Nuclei with PinkDraconian (Robbe Van Roey)](https://www.youtube.com/watch?v=ewP0xVPW-Pk) by **[@PinkDraconian](https://twitter.com/PinkDraconian)** -- [Nuclei: Packing a Punch with Vulnerability Scanning](https://bishopfox.com/blog/nuclei-vulnerability-scan) by **Bishopfox** -- [The WAF efficacy framework](https://www.fastly.com/blog/the-waf-efficacy-framework-measuring-the-effectiveness-of-your-waf) by **Fastly** -- [Scanning Live Web Applications with Nuclei in CI/CD Pipeline](https://blog.escape.tech/devsecops-part-iii-scanning-live-web-applications/) by **[@TristanKalos](https://twitter.com/TristanKalos)** -- [Community Powered Scanning with Nuclei](https://blog.projectdiscovery.io/community-powered-scanning-with-nuclei/) -- [Nuclei Unleashed - Quickly write complex exploits](https://blog.projectdiscovery.io/nuclei-unleashed-quickly-write-complex-exploits/) -- [Nuclei - Fuzz all the things](https://blog.projectdiscovery.io/nuclei-fuzz-all-the-things/) -- [Nuclei + Interactsh Integration for Automating OOB Testing](https://blog.projectdiscovery.io/nuclei-interactsh-integration/) -- [Weaponizes nuclei Workflows to Pwn All the Things](https://medium.com/@dwisiswant0/weaponizes-nuclei-workflows-to-pwn-all-the-things-cd01223feb77) by **[@dwisiswant0](https://github.com/dwisiswant0)** -- [How to Scan Continuously with Nuclei?](https://medium.com/@dwisiswant0/how-to-scan-continuously-with-nuclei-fcb7e9d8b8b9) by **[@dwisiswant0](https://github.com/dwisiswant0)** -- [Hack with Automation !!!](https://dhiyaneshgeek.github.io/web/security/2021/07/19/hack-with-automation/) by **[@DhiyaneshGeek](https://github.com/DhiyaneshGeek)** +Nuclei 템플릿은 심각도 등급과 탐지 방법 같은 핵심 정보를 결합하여 취약점을 식별하고 전달하는 효율적인 방법을 제공합니다. 이 오픈 소스의 커뮤니티 개발 도구는 위협 대응 속도를 높여주며, 사이버 보안 업계에서 폭넓게 인정받고 있습니다. Nuclei 템플릿은 전 세계 수천 명의 보안 연구자들이 적극적으로 기여하고 있습니다. 우리는 기여자들을 위해 두 가지 프로그램을 운영합니다: [**`Pioneers`**](https://projectdiscovery.io/pioneers) 와 [**`💎 bounties`**](https://github.com/projectdiscovery/nuclei-templates/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22%F0%9F%92%8E%20Bounty%22). -### Credits -Thanks to all the amazing community [contributors for sending PRs](https://github.com/projectdiscovery/nuclei/graphs/contributors). Do also check out the below similar open-source projects that may fit in your workflow: +

+ TeamCity 설정 오류 탐지를 위한 Nuclei 템플릿 예시 +

-[FFuF](https://github.com/ffuf/ffuf), [Qsfuzz](https://github.com/ameenmaali/qsfuzz), [Inception](https://github.com/proabiral/inception), [Snallygaster](https://github.com/hannob/snallygaster), [Gofingerprint](https://github.com/Static-Flow/gofingerprint), [Sn1per](https://github.com/1N3/Sn1per/tree/master/templates), [Google tsunami](https://github.com/google/tsunami-security-scanner), [Jaeles](https://github.com/jaeles-project/jaeles), [ChopChop](https://github.com/michelin/ChopChop) +#### 예시 + +사용 사례와 아이디어를 보려면 [**문서**](https://docs.projectdiscovery.io/templates/introduction)를 방문하세요. + +| 사용 사례 | Nuclei 템플릿 | +| :----------------------------------------- | :------------------------------------------------- | +| 알려진 CVE 탐지 | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | +| Out-of-Band 취약점 식별 | **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | +| SQL Injection 탐지 | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | +| Cross-Site Scripting (XSS) | **[Reflected XSS Detection](https://cloud.projectdiscovery.io/public/CVE-2023-4173)** | +| 기본 또는 취약한 비밀번호 | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | +| 시크릿 파일 또는 데이터 노출 | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | +| 오픈 리다이렉트 식별 | **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | +| 서브도메인 인수(Takeover) 탐지 | **[Subdomain Takeover Templates](https://cloud.projectdiscovery.io/public/azure-takeover-detection)** | +| 보안 설정 오류 | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | +| 취약한 SSL/TLS 설정 | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | +| 잘못 구성된 클라우드 서비스 | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | +| 원격 코드 실행 취약점 | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | +| 디렉터리 트래버설 공격 | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | +| 파일 인클루전 취약점 | **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** | + + +
+
+ +## 우리의 미션 + +전통적인 취약점 스캐너는 수십 년 전에 만들어졌습니다. 그들은 폐쇄형이며, 매우 느리고, 벤더 주도적입니다. 오늘날의 공격자들은 새로 공개된 CVE를 며칠 만에 인터넷 전체에서 대규모로 익스플로잇하고 있습니다 — 과거에는 수년이 걸리던 일이었습니다. 이러한 변화는 인터넷 상의 최신 익스플로잇에 대응하기 위한 완전히 다른 접근 방식을 요구합니다. + +우리는 이 도전 과제를 해결하기 위해 Nuclei를 만들었습니다. 스캔 엔진 프레임워크 전체를 개방적이고 커스터마이즈 가능하게 만들어 — 전 세계 보안 커뮤니티가 협력하여 인터넷의 최신 공격 벡터와 취약점에 대응할 수 있도록 했습니다. Nuclei는 현재 Fortune 500 기업, 정부 기관, 대학에서 사용되고 기여받고 있습니다. + +우리의 코드, [**`템플릿 라이브러리`**](https://github.com/projectdiscovery/nuclei-templates)에 기여하거나 [**`팀에 합류`**](https://projectdiscovery.io/)하여 참여하실 수 있습니다. + +
+
+ +## 기여자 :heart: + +PR을 보내고 이 프로젝트를 최신 상태로 유지해주신 모든 멋진 [**`커뮤니티 기여자 분들`**](https://github.com/projectdiscovery/nuclei/graphs/contributors)께 감사드립니다. :heart: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

-### License +
+
+
-Nuclei is distributed under [MIT License](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) +
+ + **`nuclei`** 는 [**MIT 라이선스**](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) 하에 배포됩니다 -

- Join Discord Check Nuclei Documentation -

+
diff --git a/README_PT-BR.md b/README_PT-BR.md index 4d8650394e..258fa85fb7 100644 --- a/README_PT-BR.md +++ b/README_PT-BR.md @@ -1,300 +1,342 @@ -

-
- Nuclei -

- -

Scanner de vulnerabilidades rápido e personalizável baseado em uma DSL simples baseada em YAML.

+![nuclei](/static/nuclei-cover-image.png) +
+ + `English` • + `中文` • + `Korean` • + `Indonesia` • + `Spanish` • + `日本語` • + `Portuguese` • + `Türkçe` + +

- - - - - - - - -

-

- Como funciona • - Instalação • - Documentação • - Créditos • - Perguntas Frequentes • - Junte-se ao Discord -

+ +   + +   + + +
-

- English • - 中文 • - Korean • - Indonesia • - Spanish • - Portuguese

---- +
-O Nuclei é utilizado para enviar solicitações para vários alvos baseados em um modelo, resultando em zero falsos positivos e proporcionando uma varredura rápida em um grande número de hosts. O Nuclei oferece suporte a uma variedade de protocolos, incluindo TCP, DNS, HTTP, SSL, Arquivo, Whois, Websocket, Headless, Código, entre outros. Com modelos poderosos e flexíveis, o Nuclei pode ser usado para modelar todos os tipos de verificações de segurança. +**O Nuclei é um scanner de vulnerabilidades moderno e de alto desempenho que utiliza templates simples baseados em YAML. Ele permite projetar cenários personalizados de detecção de vulnerabilidades que simulam condições do mundo real, resultando em zero falsos positivos.** -Temos um [repositório dedicado](https://github.com/projectdiscovery/nuclei-templates) que abriga vários tipos de modelos de vulnerabilidades, contribuídos por **mais de 300** pesquisadores e engenheiros de segurança. +- Formato YAML simples para criar e personalizar templates de vulnerabilidade. +- Contribuído por milhares de profissionais de segurança para lidar com vulnerabilidades em alta. +- Reduza falsos positivos simulando passos reais para verificar uma vulnerabilidade. +- Processamento paralelo de scan ultrarrápido e agrupamento de requisições. +- Integre em pipelines de CI/CD para detecção de vulnerabilidades e testes de regressão. +- Suporta múltiplos protocolos como TCP, DNS, HTTP, SSL, WHOIS, JavaScript, Code e mais. +- Integra-se com Jira, Splunk, GitHub, Elastic, GitLab. -## Como funciona +
+
+## Índice -

- nuclei-flow -

+- [**`Primeiros Passos`**](#primeiros-passos) + - [_`1. Nuclei CLI`_](#1-nuclei-cli) + - [_`2. Edições Pro e Enterprise`_](#2-edições-pro-e-enterprise) +- [**`Documentação`**](#documentação) + - [_`Flags de Linha de Comando`_](#flags-de-linha-de-comando) + - [_`Scan em alvo único`_](#scan-em-alvo-único) + - [_`Scan em múltiplos alvos`_](#scan-em-múltiplos-alvos) + - [_`Scan de rede`_](#scan-de-rede) + - [_`Scan com seu template personalizado`_](#scan-com-seu-template-personalizado) + - [_`Conectar o Nuclei ao ProjectDiscovery`_](#conectar-o-nuclei-ao-projectdiscovery) +- [**`Templates do Nuclei, Comunidade e Recompensas`**](#templates-do-nuclei-comunidade-e-recompensas-) 💎 +- [**`Nossa Missão`**](#nossa-missão) +- [**`Contribuidores`**](#contribuidores-heart) ❤ +- [**`Licença`**](#licença) +
+
-| :exclamation: **Aviso** | -|---------------------------------| -| **Este projeto está em desenvolvimento ativo**. Alterações significativas são esperadas em versões futuras. Consulte o changelog antes de atualizar. | -| Este projeto foi desenvolvido principalmente para ser usado como uma ferramenta CLI independente. **Executar o Nuclei como um serviço pode implicar riscos de segurança.** É recomendável utilizá-lo com precaução e medidas de segurança adicionais. | +## Primeiros Passos -# Instalação do Nuclei +### **1. Nuclei CLI** -O Nuclei requer **go1.24.2** para ser instalado corretamente. Execute o seguinte comando para instalar a versão mais recente: +_Instale o Nuclei na sua máquina. Comece seguindo o guia de instalação [**`aqui`**](https://docs.projectdiscovery.io/tools/nuclei/install?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme). Além disso, oferecemos [**`um plano gratuito na nuvem`**](https://cloud.projectdiscovery.io/sign-up) com limites mensais gratuitos generosos:_ -```sh -go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest -``` +- Armazene e visualize suas descobertas de vulnerabilidades +- Escreva e gerencie seus templates do nuclei +- Acesse os templates mais recentes do nuclei +- Descubra e armazene seus alvos -
- Brew - - ```sh - brew install nuclei - ``` - -
-
- Docker - - ```sh - docker pull projectdiscovery/nuclei:latest - ``` - -
+> [!Important] +> |**Este projeto está em desenvolvimento ativo**. Espere mudanças incompatíveis entre versões. Revise o changelog antes de atualizar.| +> |:--------------------------------| +> | Este projeto foi construído principalmente para ser utilizado como ferramenta CLI standalone. **Executar o nuclei como serviço pode trazer riscos de segurança.** Recomenda-se usá-lo com cautela e medidas de segurança adicionais. | + +
+ +### **2. Edições Pro e Enterprise** + +_Para times de segurança e empresas, oferecemos um serviço hospedado na nuvem construído sobre o Nuclei OSS, ajustado para ajudá-lo a executar continuamente scans de vulnerabilidade em escala com seu time e fluxos de trabalho existentes:_ + +- Scans 50x mais rápidos +- Scans em larga escala com alta precisão +- Integrações com serviços de nuvem (AWS, GCP, Azure, Cloudflare, Fastly, Terraform, Kubernetes) +- Jira, Slack, Linear, APIs e Webhooks +- Relatórios executivos e de conformidade +- Adicionalmente: Scan em tempo real, SAML SSO, plataforma compatível com SOC 2 (com opções de hospedagem na UE e EUA), workspaces de equipe compartilhados e mais +- Estamos constantemente [**`adicionando novos recursos`**](https://feedback.projectdiscovery.io/changelog)! +- **Ideal para:** Pentesters, times de segurança e empresas + +[**`Cadastre-se no Pro`**](https://projectdiscovery.io/pricing?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) ou [**`fale com nosso time`**](https://projectdiscovery.io/request-demo?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) se você tem uma organização grande e requisitos complexos. -**Mais métodos de instalação [podem ser encontrados aqui](https://docs.projectdiscovery.io/tools/nuclei/install).** +
+
- - - - -
+## Documentação -### Modelos do Nuclei +Acesse a [**`documentação completa do Nuclei aqui`**](https://docs.projectdiscovery.io/tools/nuclei/running). Se você é novo no Nuclei, confira nossa [**`série introdutória no YouTube`**](https://www.youtube.com/playlist?list=PLZRbR9aMzTTpItEdeNSulo8bYsvil80Rl). -O Nuclei possui suporte integrado para download/atualização automática de modelos a partir da versão [v2.5.2](https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2). O projeto [**Nuclei-Templates**](https://github.com/projectdiscovery/nuclei-templates) fornece uma lista de modelos prontos para uso, atualizados constantemente pela comunidade. +
-Você também pode usar a flag `update-templates` para atualizar os modelos do Nuclei a qualquer momento; também pode criar seus próprios testes para seu fluxo de trabalho e necessidades específicas seguindo o [guia de modelos](https://docs.projectdiscovery.io/templates/) do Nuclei. + -A referência de sintaxe YAML DSL está disponível [aqui](SYNTAX-REFERENCE.md). +
-
+
-### Uso +### Instalação + +O `nuclei` requer **go >= 1.24.2** para instalar com sucesso. Execute o seguinte comando para obter o repositório: ```sh -nuclei -h +go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest ``` -Isso mostrará ajuda sobre a ferramenta. Aqui estão todas as opções que ela suporta. +Para saber mais sobre como instalar o nuclei, consulte `https://docs.projectdiscovery.io/tools/nuclei/install`. + +### Flags de Linha de Comando +Para exibir todas as flags da ferramenta: -```console -Nuclei é um scanner de vulnerabilidades rápido e baseado em templates -que se concentra em sua ampla configurabilidade, extensibilidade e facilidade de uso. +```sh +nuclei -h +``` + +
+ Expandir todas as flags de ajuda + +```yaml +Nuclei is a fast, template based vulnerability scanner focusing +on extensive configurability, massive extensibility and ease of use. Usage: ./nuclei [flags] Flags: TARGET: - -u, -target string[] URLs/hosts a serem escaneados - -l, -list string caminho do arquivo contendo a lista de URLs/hosts a serem escaneados (um por linha) - -eh, -exclude-hosts string[] hosts a serem excluídos do escaneamento na lista de entrada (ip, cidr, hostname) - -resume string retomar o escaneamento a partir de e salvar no arquivo especificado (a clusterização será desabilitada) - -sa, -scan-all-ips escanear todos os IPs associados ao registro DNS - -iv, -ip-version string[] versão de IP a escanear do nome do host (4,6) - (padrão 4) + -u, -target string[] target URLs/hosts to scan + -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) + -eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname) + -resume string resume scan from and save to specified file (clustering will be disabled) + -sa, -scan-all-ips scan all the IP's associated with dns record + -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) TARGET-FORMAT: - -im, -input-mode string modo do arquivo de entrada (list, burp, jsonl, yaml, openapi, swagger) (padrão "list") - -ro, -required-only usar apenas campos obrigatórios no formato de entrada ao gerar requisições - -sfv, -skip-format-validation pular a validação de formato (como variáveis ausentes) ao processar o arquivo de entrada + -im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger) (default "list") + -ro, -required-only use only required fields in input format when generating requests + -sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file TEMPLATES: - -nt, -new-templates executar apenas os novos templates adicionados na última versão de nuclei-templates - -ntv, -new-templates-version string[] executar os novos templates adicionados na versão especificada - -as, -automatic-scan escaneamento da web automático utilizando a detecção de tecnologia do Wappalyzer para mapeamento de tags - -t, -templates string[] lista de templates ou diretório de templates a executar (separados por vírgulas, arquivo) - -turl, -template-url string[] URL de template ou lista contendo URLs de templates a executar (separados por vírgulas, arquivo) - -w, -workflows string[] lista de fluxos de trabalho ou diretório de fluxos de trabalho a executar (separados por vírgulas, arquivo) - -wurl, -workflow-url string[] URL de fluxo de trabalho ou lista contendo URLs de fluxos de trabalho para executar (separados por vírgulas, arquivo) - -validate valida os templates passados para o nuclei - -nss, -no-strict-syntax desativa a verificação de sintaxe estrita nos templates - -td, -template-display exibe o conteúdo dos templates - -tl lista todos os templates disponíveis - -tgl lista todas as tags disponíveis - -sign assina os templates com a chave privada definida na variável de ambiente NUCLEI_SIGNATURE_PRIVATE_KEY - -code habilita o carregamento de templates baseados em protocolos de código - -dut, -disable-unsigned-templates desativa a execução de templates não assinados ou com assinatura incompatível + -nt, -new-templates run only new templates added in latest nuclei-templates release + -ntv, -new-templates-version string[] run new templates added in specific version + -as, -automatic-scan automatic web scan using wappalyzer technology detection to tags mapping + -t, -templates string[] list of template or template directory to run (comma-separated, file) + -turl, -template-url string[] template url or list containing template urls to run (comma-separated, file) + -ai, -prompt string generate and run template using ai prompt + -w, -workflows string[] list of workflow or workflow directory to run (comma-separated, file) + -wurl, -workflow-url string[] workflow url or list containing workflow urls to run (comma-separated, file) + -validate validate the passed templates to nuclei + -nss, -no-strict-syntax disable strict syntax check on templates + -td, -template-display displays the templates content + -tl list all templates matching current filters + -tgl list all available tags + -sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable + -code enable loading code protocol-based templates + -dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature + -esc, -enable-self-contained enable loading self-contained templates + -egm, -enable-global-matchers enable loading global matchers templates + -file enable loading file templates FILTERING: - -a, -author string[] templates a serem executados com base nos autores (separados por vírgulas, arquivo) - -tags string[] templates a serem executados com base em tags (separados por vírgulas, arquivo) - -etags, -exclude-tags string[] templates a excluir com base em tags (separados por vírgulas, arquivo) - -itags, -include-tags string[] tags a executar mesmo que estejam excluídas por padrão ou configuração - -id, -template-id string[] templates a serem executados com base em IDs de template (separados por vírgulas, arquivo, permitem curingas) - -eid, -exclude-id string[] templates a excluir com base em IDs de template (separados por vírgulas, arquivo) - -it, -include-templates string[] caminho do arquivo de template ou diretório a executar mesmo que estejam excluídos por padrão ou configuração - -et, -exclude-templates string[] caminho do arquivo de template ou diretório a excluir (separados por vírgulas, arquivo) - -em, -exclude-matchers string[] matchers de template a excluir no resultado - -s, -severity value[] templates a executar com base na criticidade. Valores possíveis: info, baixo, médio, alto, crítico, desconhecido - -es, -exclude-severity value[] templates a excluir com base na criticidade. Valores possíveis: info, baixo, médio, alto, crítico, desconhecido - -pt, -type value[] templates a executar com base no tipo de protocolo. Valores possíveis: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -ept, -exclude-type value[] templates a excluir com base no tipo de protocolo. Valores possíveis: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript - -tc, -template-condition string[] templates a executar com base em condição de expressão + -a, -author string[] templates to run based on authors (comma-separated, file) + -tags string[] templates to run based on tags (comma-separated, file) + -etags, -exclude-tags string[] templates to exclude based on tags (comma-separated, file) + -itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration + -id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard) + -eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file) + -it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration + -et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file) + -em, -exclude-matchers string[] template matchers to exclude in result + -s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown + -es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown + -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -tc, -template-condition string[] templates to run based on expression condition OUTPUT: - -o, -output string arquivo de saída para salvar as ocorrências/vulnerabilidades detectadas - -sresp, -store-resp armazenar todas as solicitações/respostas enviadas pelo nuclei no diretório de saída - -srd, -store-resp-dir string armazenar todas as solicitações/respostas enviadas pelo nuclei em um diretório personalizado (padrão "output") - -silent exibir apenas os resultados - -nc, -no-color desativar a coloração do conteúdo de saída (códigos de escape ANSI) - -j, -jsonl salvar a saída no formato JSONL(ines) - -irr, -include-rr -omit-raw incluir pares solicitação/resposta nas saídas JSON, JSONL e Markdown (apenas para achados) [OBSOLETO usar -omit-raw] (padrão true) - -or, -omit-raw omitir os pares solicitação/resposta nas saídas JSON, JSONL e Markdown (apenas para achados) - -ot, -omit-template omitir o template codificado na saída JSON, JSONL - -nm, -no-meta desativar a exibição de metadados dos resultados na saída CLI - -ts, -timestamp ativar a exibição do carimbo de data/hora na saída CLI - -rdb, -report-db string banco de dados de relatórios do nuclei (usar sempre para persistir os dados dos relatórios) - -ms, -matcher-status exibir o estado de falha de correspondência - -me, -markdown-export string diretório para exportar resultados no formato Markdown - -se, -sarif-export string arquivo para exportar resultados no formato SARIF - -je, -json-export string arquivo para exportar resultados no formato JSON - -jle, -jsonl-export string arquivo para exportar resultados no formato JSONL(ines) + -o, -output string output file to write found issues/vulnerabilities + -sresp, -store-resp store all request/response passed through nuclei to output directory + -srd, -store-resp-dir string store all request/response passed through nuclei to custom directory (default "output") + -silent display findings only + -nc, -no-color disable output content coloring (ANSI escape codes) + -j, -jsonl write output in JSONL(ines) format + -irr, -include-rr -omit-raw include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) + -or, -omit-raw omit request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) + -ot, -omit-template omit encoded template in the JSON, JSONL output + -nm, -no-meta disable printing result metadata in cli output + -ts, -timestamp enables printing timestamp in cli output + -rdb, -report-db string nuclei reporting database (always use this to persist report data) + -ms, -matcher-status display match failure status + -me, -markdown-export string directory to export results in markdown format + -se, -sarif-export string file to export results in SARIF format + -je, -json-export string file to export results in JSON format + -jle, -jsonl-export string file to export results in JSONL(ine) format + -rd, -redact string[] redact given list of keys from query parameter, request header and body CONFIGURATIONS: - -config string caminho do arquivo de configuração do nuclei - -fr, -follow-redirects ativar o acompanhamento de redirecionamentos para templates HTTP - -fhr, -follow-host-redirects seguir redirecionamentos no mesmo host - -mr, -max-redirects int número máximo de redirecionamentos a seguir para templates HTTP (padrão 10) - -dr, -disable-redirects desativar redirecionamentos para templates HTTP - -rc, -report-config string arquivo de configuração do módulo de relatórios do nuclei - -H, -header string[] cabeçalho/cookie personalizado a incluir em todas as solicitações HTTP no formato header:value (CLI, arquivo) - -V, -var value variáveis personalizadas no formato key=value - -r, -resolvers string arquivo contendo uma lista de resolvers para o nuclei - -sr, -system-resolvers usar resolução DNS do sistema como fallback em caso de erro - -dc, -disable-clustering desativar o agrupamento de solicitações - -passive ativar o modo de processamento passivo de respostas HTTP - -fh2, -force-http2 forçar conexões HTTP2 nas solicitações - -ev, -env-vars ativar o uso de variáveis de ambiente no template - -cc, -client-cert string arquivo de certificado de cliente (codificado em PEM) usado para autenticar-se contra os hosts escaneados - -ck, -client-key string arquivo de chave de cliente (codificado em PEM) usado para autenticar-se contra os hosts escaneados - -ca, -client-ca string arquivo de autoridade de certificação de cliente (codificado em PEM) usado para autenticar-se contra os hosts escaneados - -sml, -show-match-line exibir linhas de correspondência para templates de arquivo, funciona apenas com extratores - -ztls usar a biblioteca ztls com fallback automático para padrão no tls13 [OBSOLETO] fallback automático para ztls já está ativado por padrão - -sni string nome de host tls sni a ser usado (padrão: nome de domínio de entrada) - -dt, -dialer-timeout value tempo limite para solicitações de rede - -dka, -dialer-keep-alive value duração do keep-alive para solicitações de rede - -lfa, -allow-local-file-access permitir acesso a arquivos (payload) em qualquer lugar do sistema - -lna, -restrict-local-network-access bloquear conexões à rede local/privada - -i, -interface string interface de rede a ser usada para o escaneamento de rede - -at, -attack-type string tipo de combinações de payload a realizar (batteringram, pitchfork, clusterbomb) - -sip, -source-ip string endereço IP de origem a ser usado para o escaneamento de rede - -rsr, -response-size-read int tamanho máximo de resposta a ser lido em bytes (padrão 10485760) - -rss, -response-size-save int tamanho máximo de resposta a ser salvo em bytes (padrão 1048576) - -reset remove todos os arquivos de configuração e dados do nuclei (incluindo os nuclei-templates) - -tlsi, -tls-impersonate ativar randomização experimental do client hello (ja3) tls + -config string path to the nuclei configuration file + -tp, -profile string template profile config file to run + -tpl, -profile-list list community template profiles + -fr, -follow-redirects enable following redirects for http templates + -fhr, -follow-host-redirects follow redirects on the same host + -mr, -max-redirects int max number of redirects to follow for http templates (default 10) + -dr, -disable-redirects disable redirects for http templates + -rc, -report-config string nuclei reporting module configuration file + -H, -header string[] custom header/cookie to include in all http request in header:value format (cli, file) + -V, -var value custom vars in key=value format + -r, -resolvers string file containing resolver list for nuclei + -sr, -system-resolvers use system DNS resolving as error fallback + -dc, -disable-clustering disable clustering of requests + -passive enable passive HTTP response processing mode + -fh2, -force-http2 force http2 connection on requests + -ev, -env-vars enable environment variables to be used in template + -cc, -client-cert string client certificate file (PEM-encoded) used for authenticating against scanned hosts + -ck, -client-key string client key file (PEM-encoded) used for authenticating against scanned hosts + -ca, -client-ca string client certificate authority file (PEM-encoded) used for authenticating against scanned hosts + -sml, -show-match-line show match lines for file templates, works with extractors only + -ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default + -sni string tls sni hostname to use (default: input domain name) + -dka, -dialer-keep-alive value keep-alive duration for network requests. + -lfa, -allow-local-file-access allows file (payload) access anywhere on the system + -lna, -restrict-local-network-access blocks connections to the local / private network + -i, -interface string network interface to use for network scan + -at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb) + -sip, -source-ip string source ip address to use for network scan + -rsr, -response-size-read int max response size to read in bytes + -rss, -response-size-save int max response size to read in bytes (default 1048576) + -reset reset removes all nuclei configuration and data files (including nuclei-templates) + -tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization + -hae, -http-api-endpoint string experimental http api endpoint INTERACTSH: - -iserver, -interactsh-server string URL do servidor interactsh para instância auto-hospedada (padrão: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) - -itoken, -interactsh-token string token de autenticação para o servidor interactsh auto-hospedado - -interactions-cache-size int número de solicitações a serem mantidas no cache de interações (padrão 5000) - -interactions-eviction int número de segundos a esperar antes de remover solicitações do cache (padrão 60) - -interactions-poll-duration int número de segundos a esperar antes de cada solicitação de polling de interações (padrão 5) - -interactions-cooldown-period int tempo adicional para o polling de interações antes de encerrar (padrão 5) - -ni, -no-interactsh desativar o servidor interactsh para testes OAST, excluir templates baseados em OAST + -iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) + -itoken, -interactsh-token string authentication token for self-hosted interactsh server + -interactions-cache-size int number of requests to keep in the interactions cache (default 5000) + -interactions-eviction int number of seconds to wait before evicting requests from cache (default 60) + -interactions-poll-duration int number of seconds to wait before each interaction poll request (default 5) + -interactions-cooldown-period int extra time for interaction polling before exiting (default 5) + -ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates FUZZING: - -ft, -fuzzing-type string sobrescreve o tipo de fuzzing definido no template (replace, prefix, postfix, infix) - -fm, -fuzzing-mode string sobrescreve o modo de fuzzing definido no template (multiple, single) - -fuzz habilita o carregamento de templates de fuzzing (Obsoleto: usar -dast em vez disso) - -dast executa apenas templates DAST + -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) + -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -fuzz enable loading fuzzing templates (Deprecated: use -dast instead) + -dast enable / run dast (fuzz) nuclei templates + -dts, -dast-server enable dast server mode (live fuzzing) + -dtr, -dast-report write dast scan report to file + -dtst, -dast-server-token string dast server token (optional) + -dtsa, -dast-server-address string dast server address (default "localhost:9055") + -dfp, -display-fuzz-points display fuzz points in the output for debugging + -fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10) + -fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low") + -cs, -fuzz-scope string[] in scope url regex to be followed by fuzzer + -cos, -fuzz-out-scope string[] out of scope url regex to be excluded by fuzzer UNCOVER: - -uc, -uncover ativa o motor uncover - -uq, -uncover-query string[] consulta de busca uncover - -ue, -uncover-engine string[] motor de busca uncover (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow) (padrão shodan) - -uf, -uncover-field string campos uncover a serem retornados (ip,port,host) (padrão "ip:port") - -ul, -uncover-limit int resultados uncover a serem retornados (padrão 100) - -ur, -uncover-ratelimit int sobrescreve o limite de taxa dos motores com o limite de taxa do motor uncover (padrão 60 req/min) + -uc, -uncover enable uncover engine + -uq, -uncover-query string[] uncover search query + -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan) + -uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port") + -ul, -uncover-limit int uncover results to return (default 100) + -ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60) RATE-LIMIT: - -rl, -rate-limit int número máximo de solicitações a serem enviadas por segundo (padrão 150) - -rlm, -rate-limit-minute int número máximo de solicitações a serem enviadas por minuto - -bs, -bulk-size int número máximo de hosts a serem analisados em paralelo por template (padrão 25) - -c, -concurrency int número máximo de templates a serem executados em paralelo (padrão 25) - -hbs, -headless-bulk-size int número máximo de hosts headless a serem analisados em paralelo por template (padrão 10) - -headc, -headless-concurrency int número máximo de templates headless a serem executados em paralelo (padrão 10) - -jsc, -js-concurrency int número máximo de ambientes de execução de JavaScript a serem executados em paralelo (padrão 120) - -pc, -payload-concurrency int concorrência máxima de payload para cada template (padrão 25) - -tlc, -template-loading-concurrency int número máximo de operações de carregamento de templates concorrentes (padrão 50) + -rl, -rate-limit int maximum number of requests to send per second (default 150) + -rld, -rate-limit-duration value maximum number of requests to send per second (default 1s) + -rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED) + -bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25) + -c, -concurrency int maximum number of templates to be executed in parallel (default 25) + -hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10) + -headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10) + -jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120) + -pc, -payload-concurrency int max payload concurrency for each template (default 25) + -prc, -probe-concurrency int http probe concurrency with httpx (default 50) + -tlc, -template-loading-concurrency int maximum number of concurrent template loading operations (default 50) OPTIMIZATIONS: - -timeout int tempo limite em segundos (padrão 10) - -retries int número de tentativas para solicitações com falha (padrão 1) - -ldp, -leave-default-ports manter as portas HTTP/HTTPS padrão (exemplo: host:80, host:443) - -mhe, -max-host-error int número máximo de erros para um host antes de ignorá-lo no scan (padrão 30) - -te, -track-error string[] adiciona o erro especificado à lista de rastreamento de erros máximos por host (standard, file) - -nmhe, -no-mhe desativa a exclusão de hosts do scan com base em erros - -project utiliza uma pasta de projeto para evitar enviar a mesma solicitação várias vezes - -project-path string define um caminho específico para o projeto (padrão "/tmp") - -spm, -stop-at-first-match interrompe o processamento de solicitações HTTP após a primeira correspondência (pode quebrar a lógica de templates/fluxos de trabalho) - -stream modo de transmissão - começa a trabalhar sem ordenar a entrada - -ss, -scan-strategy value estratégia a ser usada durante o scan (auto/host-spray/template-spray) (padrão auto) - -irt, -input-read-timeout value tempo limite para leitura da entrada (padrão 3m0s) - -nh, -no-httpx desativa a análise httpx para entradas que não sejam URLs - -no-stdin desativa o processamento de entrada padrão + -timeout int time to wait in seconds before timeout (default 10) + -retries int number of times to retry a failed request (default 1) + -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) + -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) + -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) + -nmhe, -no-mhe disable skipping host from scan based on errors + -project use a project folder to avoid sending same request multiple times + -project-path string set a specific project path (default "/tmp") + -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) + -stream stream mode - start elaborating without sorting the input + -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) + -irt, -input-read-timeout value timeout on input read (default 3m0s) + -nh, -no-httpx disable httpx probing for non-url input + -no-stdin disable stdin processing HEADLESS: - -headless habilita templates que requerem suporte para navegadores sem interface gráfica (headless browser) (o usuário root no Linux desativará o sandbox) - -page-timeout int segundos para esperar cada página no modo headless (padrão 20) - -sb, -show-browser exibe o navegador na tela ao executar templates no modo headless - -ho, -headless-options string[] inicia o Chrome no modo headless com opções adicionais - -sc, -system-chrome utiliza o navegador Chrome instalado localmente em vez do instalado pelo nuclei - -cdpe, -cdp-endpoint string usar navegador remoto via endpoint do Protocolo de Ferramentas de Desenvolvedor do Chrome (CDP) - -lha, -list-headless-action lista ações disponíveis para o modo headless + -headless enable templates that require headless browser support (root user on Linux will disable sandbox) + -page-timeout int seconds to wait for each page in headless mode (default 20) + -sb, -show-browser show the browser on the screen when running templates with headless mode + -ho, -headless-options string[] start headless chrome with additional options + -sc, -system-chrome use local installed Chrome browser instead of nuclei installed + -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint + -lha, -list-headless-action list available headless actions DEBUG: - -debug exibe todas as solicitações e respostas - -dreq, -debug-req exibe todas as solicitações enviadas - -dresp, -debug-resp exibe todas as respostas recebidas - -p, -proxy string[] lista de proxies HTTP/SOCKS5 a serem usados (separados por vírgulas ou arquivo de entrada) - -pi, -proxy-internal proxy para todas as solicitações internas - -ldf, -list-dsl-function lista todas as assinaturas de funções DSL suportadas - -tlog, -trace-log string arquivo para gravar o log de rastreamento de solicitações enviadas - -elog, -error-log string arquivo para gravar o log de erros de solicitações enviadas - -version exibe a versão do nuclei - -hm, -hang-monitor ativa o monitoramento de travamentos do nuclei - -v, -verbose exibe saída detalhada - -profile-mem string arquivo opcional para despejo de memória do nuclei - -vv exibe os templates carregados para o scan - -svd, -show-var-dump exibe o dump de variáveis para depuração - -ep, -enable-pprof ativa o servidor de depuração pprof - -tv, -templates-version exibe a versão dos templates do nuclei (nuclei-templates) instalados - -hc, -health-check executa verificações de diagnóstico + -debug show all requests and responses + -dreq, -debug-req show all sent requests + -dresp, -debug-resp show all received responses + -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) + -pi, -proxy-internal proxy all internal requests + -ldf, -list-dsl-function list all supported DSL function signatures + -tlog, -trace-log string file to write sent requests trace log + -elog, -error-log string file to write sent requests error log + -version show nuclei version + -hm, -hang-monitor enable nuclei hang monitoring + -v, -verbose show verbose output + -profile-mem string generate memory (heap) profile & trace files + -vv display templates loaded for scan + -svd, -show-var-dump show variables dump for debugging + -vdl, -var-dump-limit int limit the number of characters displayed in var dump (default 255) + -ep, -enable-pprof enable pprof debugging server + -tv, -templates-version shows the version of the installed nuclei-templates + -hc, -health-check run diagnostic check up UPDATE: - -up, -update atualiza o mecanismo do nuclei para a última versão lançada - -ut, -update-templates atualiza os nuclei-templates para a última versão lançada - -ud, -update-template-dir string diretório personalizado para instalar/atualizar os nuclei-templates - -duc, -disable-update-check desativa a verificação automática de atualizações do nuclei/templates + -up, -update update nuclei engine to the latest released version + -ut, -update-templates update nuclei-templates to latest released version + -ud, -update-template-dir string custom directory to install / update nuclei-templates + -duc, -disable-update-check disable automatic nuclei/templates update check HONEYPOT: -hpd, -honeypot-detect detect potential honeypot hosts based on match concentration @@ -302,76 +344,321 @@ HONEYPOT: -shp, -suppress-honeypot suppress output for flagged honeypot hosts STATISTICS: - -stats exibe estatísticas sobre o scan em execução - -sj, -stats-json exibe estatísticas no formato JSONL(ines) - -si, -stats-interval int número de segundos a esperar entre as atualizações de estatísticas (padrão 5) - -mp, -metrics-port int porta para expor métricas do nuclei (padrão 9092) + -stats display statistics about the running scan + -sj, -stats-json display statistics in JSONL(ines) format + -si, -stats-interval int number of seconds to wait between showing a statistics update (default 5) + -mp, -metrics-port int port to expose nuclei metrics on (default 9092) + -hps, -http-stats enable http status capturing (experimental) CLOUD: - -auth configura a chave de API do cloud do ProjectDiscovery (pdcp) - -cup, -cloud-upload faz upload dos resultados do scan para o dashboard do pdcp - -sid, -scan-id string faz upload dos resultados do scan para o ID de scan fornecido + -auth configure projectdiscovery cloud (pdcp) api key (default true) + -tid, -team-id string upload scan results to given team id (optional) (default "none") + -cup, -cloud-upload upload scan results to pdcp dashboard [DEPRECATED use -dashboard] + -sid, -scan-id string upload scan results to existing scan id (optional) + -sname, -scan-name string scan name to set (optional) + -pd, -dashboard upload / view nuclei results in projectdiscovery cloud (pdcp) UI dashboard + -pdu, -dashboard-upload string upload / view nuclei results file (jsonl) in projectdiscovery cloud (pdcp) UI dashboard AUTHENTICATION: - -sf, -secret-file string[] caminho para o arquivo de configuração contendo os secrets para o scan autenticado do nuclei - -ps, -prefetch-secrets pré-carrega os secrets do arquivo de secrets + -sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan + -ps, -prefetch-secrets prefetch secrets from the secrets file + # NOTE: Headers in secrets files preserve exact casing (useful for case-sensitive APIs) EXAMPLES: -Executar nuclei em um único host: - $ nuclei -target example.com +Run nuclei on single host: + $ nuclei -target example.com + +Run nuclei with specific template directories: + $ nuclei -target example.com -t http/cves/ -t ssl -Executar nuclei com diretórios específicos de templates: - $ nuclei -target example.com -t http/cves/ -t ssl +Run nuclei against a list of hosts: + $ nuclei -list hosts.txt -Executar nuclei contra uma lista de hosts: - $ nuclei -list hosts.txt +Run nuclei with a JSON output: + $ nuclei -target example.com -json-export output.json -Executar nuclei com saída JSON: - $ nuclei -target example.com -json-export output.json +Run nuclei with sorted Markdown outputs (with environment variables): + $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ -Executar nuclei com saídas Markdown organizadas (com variáveis de ambiente): - $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ +Additional documentation is available at: https://docs.projectdiscovery.io/getting-started/running -Documentação adicional disponível em: https://docs.projectdiscovery.io/getting-started/running ``` -### Executando Nuclei +Documentação adicional disponível em: [**`docs.projectdiscovery.io/getting-started/running`**](https://docs.projectdiscovery.io/getting-started/running?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) -Consulte https://docs.projectdiscovery.io/tools/nuclei/running para obter detalhes sobre como executar o Nuclei. +
-### Uso de Nuclei com código Go +### Scan em alvo único -O guia completo sobre como usar o Nuclei como biblioteca/SDK está disponível em [godoc](https://pkg.go.dev/github.com/projectdiscovery/nuclei/v3/lib#section-readme). +Para realizar um scan rápido em uma aplicação web: +```sh +nuclei -target https://example.com +``` -### Recursos +### Scan em múltiplos alvos -Você pode acessar a documentação principal do Nuclei em https://docs.projectdiscovery.io/tools/nuclei/ e obter mais informações sobre o Nuclei na nuvem com a [ProjectDiscovery Cloud Platform](https://cloud.projectdiscovery.io). +O Nuclei pode lidar com scans em massa fornecendo uma lista de alvos. Você pode usar um arquivo contendo múltiplas URLs. -Consulte https://docs.projectdiscovery.io/tools/nuclei/resources para acessaar mais recursos e vídeos sobre o Nuclei! +```sh +nuclei -list urls.txt +``` -### Créditos +### Scan de rede -Obrigado a todos os incríveis [contribuidores da comunidade que enviaram em PRs](https://github.com/projectdiscovery/nuclei/graphs/contributors) e mantêm este projeto atualizado. :heart: +Isso fará scan de toda a subrede em busca de problemas relacionados à rede, como portas abertas ou serviços mal configurados. -Se você tem uma ideia ou algum tipo de melhoria, sinta-se à vontade para contribuir e participar do projeto. Envie seu PR! +```sh +nuclei -target 192.168.1.0/24 +``` -

- - - -

+### Scan com seu template personalizado + +Para escrever e usar seu próprio template, crie um arquivo `.yaml` com regras específicas e use-o como mostrado abaixo. + +```sh +nuclei -u https://example.com -t /path/to/your-template.yaml +``` + +### Conectar o Nuclei ao ProjectDiscovery + +Você pode executar os scans na sua máquina e enviar os resultados para a plataforma na nuvem para análise e remediação adicionais. + +```sh +nuclei -target https://example.com -dashboard +``` + +> [!NOTE] +> Este recurso é totalmente gratuito e não requer assinatura. Para um guia detalhado, consulte a [**`documentação`**](https://docs.projectdiscovery.io/cloud/scanning/nuclei-scan?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme). +
+
-Confira também os seguintes projetos de código aberto que podem se adequar ao seu fluxo de trabalho: +## Templates do Nuclei, Comunidade e Recompensas 💎 +Os [**templates do Nuclei**](https://github.com/projectdiscovery/nuclei-templates) são baseados no conceito de arquivos de template em YAML que definem como as requisições serão enviadas e processadas. Isso fornece capacidades de extensibilidade simples ao nuclei. Os templates são escritos em YAML, que especifica um formato simples e legível por humanos para definir rapidamente o processo de execução. -[FFuF](https://github.com/ffuf/ffuf), [Qsfuzz](https://github.com/ameenmaali/qsfuzz), [Inception](https://github.com/proabiral/inception), [Snallygaster](https://github.com/hannob/snallygaster), [Gofingerprint](https://github.com/Static-Flow/gofingerprint), [Sn1per](https://github.com/1N3/Sn1per/tree/master/templates), [Google tsunami](https://github.com/google/tsunami-security-scanner), [Jaeles](https://github.com/jaeles-project/jaeles), [ChopChop](https://github.com/michelin/ChopChop) +**Experimente online com nosso Editor de Templates do Nuclei gratuito e com IA** [**`clicando aqui`**](https://cloud.projectdiscovery.io/templates). -### Licença +Os Templates do Nuclei oferecem uma forma simplificada de identificar e comunicar vulnerabilidades, combinando detalhes essenciais como classificações de severidade e métodos de detecção. Esta ferramenta open-source desenvolvida pela comunidade acelera a resposta a ameaças e é amplamente reconhecida no mundo da cibersegurança. Os templates do Nuclei recebem contribuições ativas de milhares de pesquisadores de segurança no mundo todo. Mantemos dois programas para nossos contribuidores: [**`Pioneers`**](https://projectdiscovery.io/pioneers) e [**`💎 bounties`**](https://github.com/projectdiscovery/nuclei-templates/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22%F0%9F%92%8E%20Bounty%22). -O Nuclei é distribuído sob a [Licença MIT](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) -

- Join Discord Check Nuclei Documentation -

+

+ Exemplo de template Nuclei para detectar configuração incorreta no TeamCity +

+ +#### Exemplos + +Visite [**nossa documentação**](https://docs.projectdiscovery.io/templates/introduction) para casos de uso e ideias. + +| Caso de uso | Template do Nuclei | +| :----------------------------------------- | :------------------------------------------------- | +| Detectar CVEs conhecidas | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | +| Identificar vulnerabilidades Out-of-Band | **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | +| Detecção de SQL Injection | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | +| Cross-Site Scripting (XSS) | **[Reflected XSS Detection](https://cloud.projectdiscovery.io/public/CVE-2023-4173)** | +| Senhas padrão ou fracas | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | +| Arquivos secretos ou exposição de dados | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | +| Identificar redirecionamentos abertos | **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | +| Detectar tomadas de subdomínio | **[Subdomain Takeover Templates](https://cloud.projectdiscovery.io/public/azure-takeover-detection)** | +| Configurações incorretas de segurança | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | +| Configurações SSL/TLS fracas | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | +| Serviços de nuvem mal configurados | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | +| Vulnerabilidades de execução remota de código | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | +| Ataques de directory traversal | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | +| Vulnerabilidades de inclusão de arquivos | **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** | + + +
+
+ +## Nossa Missão + +Os scanners de vulnerabilidades tradicionais foram construídos há décadas. Eles são de código fechado, incrivelmente lentos e orientados por fornecedores. Os atacantes de hoje exploram em massa CVEs recém-publicadas pela internet em poucos dias, ao contrário dos anos que isso costumava levar. Essa mudança exige uma abordagem completamente diferente para enfrentar exploits em alta na internet. + +Construímos o Nuclei para resolver esse desafio. Tornamos todo o framework do mecanismo de scan aberto e personalizável — permitindo que a comunidade global de segurança colabore e enfrente os vetores de ataque e vulnerabilidades em alta na internet. O Nuclei agora é usado e recebe contribuições de empresas Fortune 500, agências governamentais e universidades. + +Você pode participar contribuindo com nosso código, com a [**`biblioteca de templates`**](https://github.com/projectdiscovery/nuclei-templates) ou [**`juntando-se ao nosso time`**](https://projectdiscovery.io/). + +
+
+ +## Contribuidores :heart: + +Obrigado a todos os incríveis [**`contribuidores da comunidade que enviaram PRs`**](https://github.com/projectdiscovery/nuclei/graphs/contributors) e mantêm este projeto atualizado. :heart: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ +
+
+
+ +
+ + **`nuclei`** é distribuído sob a [**Licença MIT**](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md) + +
diff --git a/README_TR.md b/README_TR.md index 9fd85f8d37..1475d9d4d8 100644 --- a/README_TR.md +++ b/README_TR.md @@ -29,9 +29,9 @@ **Nuclei, basit YAML tabanlı şablonlardan yararlanan modern, yüksek performanslı bir zafiyet tarayıcısıdır. Gerçek dünya koşullarını taklit eden özel zafiyet tespit senaryoları tasarlamanıza olanak tanıyarak sıfır hatalı pozitif sonuç sağlar.** -- Güvenlik açığı şablonları oluşturmak ve özelleştirmek için basit YAML formatı. -- Trend olan güvenlik açıklarını ele almak için binlerce güvenlik uzmanı tarafından katkıda bulunulmuştur. -- Bir güvenlik açığını doğrulamak için gerçek dünya adımlarını simüle ederek hatalı pozitifleri azaltır. +- Zafiyet şablonları oluşturmak ve özelleştirmek için basit YAML formatı. +- Trend olan zafiyetleri ele almak için binlerce güvenlik uzmanı tarafından katkıda bulunulmuştur. +- Bir zafiyeti doğrulamak için gerçek dünya adımlarını simüle ederek hatalı pozitifleri azaltır. - Ultra hızlı paralel tarama işleme ve istek kümeleme. - Zafiyet tespiti ve regresyon testi için CI/CD hatlarına entegre edilebilir. - TCP, DNS, HTTP, SSL, WHOIS, JavaScript, Code ve daha fazlası gibi birçok protokolü destekler. @@ -54,7 +54,7 @@ - [_`Nuclei'yi ProjectDiscovery'ye Bağlayın`_](#nucleiyi-projectdiscoveryye-bağlayın) - [**`Nuclei Şablonları, Topluluk ve Ödüller`**](#nuclei-şablonları-topluluk-ve-ödüller-) 💎 - [**`Misyonumuz`**](#misyonumuz) -- [**`Katkıda Bulunanlar`**](#katkıda-bulunanlar) ❤ +- [**`Katkıda Bulunanlar`**](#katkıda-bulunanlar-heart) ❤ - [**`Lisans`**](#lisans)
@@ -130,47 +130,259 @@ nuclei -h Tüm yardım bayraklarını genişlet ```yaml -Nuclei, kapsamlı yapılandırılabilirlik, devasa genişletilebilirlik ve kullanım kolaylığına odaklanan hızlı, şablon tabanlı bir zafiyet tarayıcısıdır. +Nuclei is a fast, template based vulnerability scanner focusing +on extensive configurability, massive extensibility and ease of use. -Kullanım: - ./nuclei [bayraklar] +Usage: + ./nuclei [flags] -Bayraklar: +Flags: TARGET: - -u, -target string[] taranacak hedef URL'ler/hostlar - -l, -list string taranacak hedef URL'leri/hostları içeren dosya yolu (her satırda bir tane) - -eh, -exclude-hosts string[] girilen listeden tarama dışında tutulacak hostlar (ip, cidr, hostname) - -resume string taramayı belirtilen dosyadan devam ettir ve kaydet (kümeleme devre dışı bırakılır) - -sa, -scan-all-ips dns kaydı ile ilişkili tüm IP'leri tara - -iv, -ip-version string[] taranacak hostun IP versiyonu (4,6) - (varsayılan 4) + -u, -target string[] target URLs/hosts to scan + -l, -list string path to file containing a list of target URLs/hosts to scan (one per line) + -eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname) + -resume string resume scan from and save to specified file (clustering will be disabled) + -sa, -scan-all-ips scan all the IP's associated with dns record + -iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4) TARGET-FORMAT: - -im, -input-mode string girdi dosyasının modu (list, burp, jsonl, yaml, openapi, swagger) (varsayılan "list") - -ro, -required-only istekler oluşturulurken girdi formatındaki sadece zorunlu alanları kullan - -sfv, -skip-format-validation girdi dosyasını ayrıştırırken format doğrulamasını atla (eksik değişkenler gibi) + -im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger) (default "list") + -ro, -required-only use only required fields in input format when generating requests + -sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file TEMPLATES: - -nt, -new-templates sadece en son nuclei-templates sürümünde eklenen yeni şablonları çalıştır - -ntv, -new-templates-version string[] belirli bir sürümde eklenen yeni şablonları çalıştır - -as, -automatic-scan wappalyzer teknoloji tespiti ile etiket eşlemesini kullanarak otomatik web taraması - -t, -templates string[] çalıştırılacak şablon veya şablon dizini listesi (virgülle ayrılmış, dosya) - -turl, -template-url string[] çalıştırılacak şablon url'si veya şablon url'lerini içeren liste (virgülle ayrılmış, dosya) - -ai, -prompt string yapay zeka istemi kullanarak şablon oluştur ve çalıştır - -w, -workflows string[] çalıştırılacak iş akışı veya iş akışı dizini listesi (virgülle ayrılmış, dosya) - -wurl, -workflow-url string[] çalıştırılacak iş akışı url'si veya iş akışı url'lerini içeren liste (virgülle ayrılmış, dosya) - -validate nuclei'ye iletilen şablonları doğrula - -nss, -no-strict-syntax şablonlarda katı sözdizimi kontrolünü devre dışı bırak - -td, -template-display şablon içeriğini görüntüler - -tl mevcut filtrelerle eşleşen tüm şablonları listele - -tgl tüm mevcut etiketleri listele - -sign şablonları NUCLEI_SIGNATURE_PRIVATE_KEY ortam değişkeninde tanımlanan özel anahtarla imzala - -code kod protokolü tabanlı şablonların yüklenmesini etkinleştir - -dut, -disable-unsigned-templates imzasız şablonların veya imzası eşleşmeyen şablonların çalıştırılmasını devre dışı bırak - -esc, -enable-self-contained kendi kendine yeten (self-contained) şablonların yüklenmesini etkinleştir - -egm, -enable-global-matchers global eşleştirici şablonların yüklenmesini etkinleştir - -file dosya şablonlarının yüklenmesini etkinleştir - -... (Diğer bayraklar orijinalindeki gibi, tam çeviri için çok uzun olabilir, ancak bağlam için yeterli) + -nt, -new-templates run only new templates added in latest nuclei-templates release + -ntv, -new-templates-version string[] run new templates added in specific version + -as, -automatic-scan automatic web scan using wappalyzer technology detection to tags mapping + -t, -templates string[] list of template or template directory to run (comma-separated, file) + -turl, -template-url string[] template url or list containing template urls to run (comma-separated, file) + -ai, -prompt string generate and run template using ai prompt + -w, -workflows string[] list of workflow or workflow directory to run (comma-separated, file) + -wurl, -workflow-url string[] workflow url or list containing workflow urls to run (comma-separated, file) + -validate validate the passed templates to nuclei + -nss, -no-strict-syntax disable strict syntax check on templates + -td, -template-display displays the templates content + -tl list all templates matching current filters + -tgl list all available tags + -sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable + -code enable loading code protocol-based templates + -dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature + -esc, -enable-self-contained enable loading self-contained templates + -egm, -enable-global-matchers enable loading global matchers templates + -file enable loading file templates + +FILTERING: + -a, -author string[] templates to run based on authors (comma-separated, file) + -tags string[] templates to run based on tags (comma-separated, file) + -etags, -exclude-tags string[] templates to exclude based on tags (comma-separated, file) + -itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration + -id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard) + -eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file) + -it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration + -et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file) + -em, -exclude-matchers string[] template matchers to exclude in result + -s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown + -es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown + -pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript + -tc, -template-condition string[] templates to run based on expression condition + +OUTPUT: + -o, -output string output file to write found issues/vulnerabilities + -sresp, -store-resp store all request/response passed through nuclei to output directory + -srd, -store-resp-dir string store all request/response passed through nuclei to custom directory (default "output") + -silent display findings only + -nc, -no-color disable output content coloring (ANSI escape codes) + -j, -jsonl write output in JSONL(ines) format + -irr, -include-rr -omit-raw include request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) [DEPRECATED use -omit-raw] (default true) + -or, -omit-raw omit request/response pairs in the JSON, JSONL, and Markdown outputs (for findings only) + -ot, -omit-template omit encoded template in the JSON, JSONL output + -nm, -no-meta disable printing result metadata in cli output + -ts, -timestamp enables printing timestamp in cli output + -rdb, -report-db string nuclei reporting database (always use this to persist report data) + -ms, -matcher-status display match failure status + -me, -markdown-export string directory to export results in markdown format + -se, -sarif-export string file to export results in SARIF format + -je, -json-export string file to export results in JSON format + -jle, -jsonl-export string file to export results in JSONL(ine) format + -rd, -redact string[] redact given list of keys from query parameter, request header and body + +CONFIGURATIONS: + -config string path to the nuclei configuration file + -tp, -profile string template profile config file to run + -tpl, -profile-list list community template profiles + -fr, -follow-redirects enable following redirects for http templates + -fhr, -follow-host-redirects follow redirects on the same host + -mr, -max-redirects int max number of redirects to follow for http templates (default 10) + -dr, -disable-redirects disable redirects for http templates + -rc, -report-config string nuclei reporting module configuration file + -H, -header string[] custom header/cookie to include in all http request in header:value format (cli, file) + -V, -var value custom vars in key=value format + -r, -resolvers string file containing resolver list for nuclei + -sr, -system-resolvers use system DNS resolving as error fallback + -dc, -disable-clustering disable clustering of requests + -passive enable passive HTTP response processing mode + -fh2, -force-http2 force http2 connection on requests + -ev, -env-vars enable environment variables to be used in template + -cc, -client-cert string client certificate file (PEM-encoded) used for authenticating against scanned hosts + -ck, -client-key string client key file (PEM-encoded) used for authenticating against scanned hosts + -ca, -client-ca string client certificate authority file (PEM-encoded) used for authenticating against scanned hosts + -sml, -show-match-line show match lines for file templates, works with extractors only + -ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default + -sni string tls sni hostname to use (default: input domain name) + -dka, -dialer-keep-alive value keep-alive duration for network requests. + -lfa, -allow-local-file-access allows file (payload) access anywhere on the system + -lna, -restrict-local-network-access blocks connections to the local / private network + -i, -interface string network interface to use for network scan + -at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb) + -sip, -source-ip string source ip address to use for network scan + -rsr, -response-size-read int max response size to read in bytes + -rss, -response-size-save int max response size to read in bytes (default 1048576) + -reset reset removes all nuclei configuration and data files (including nuclei-templates) + -tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization + -hae, -http-api-endpoint string experimental http api endpoint + +INTERACTSH: + -iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me) + -itoken, -interactsh-token string authentication token for self-hosted interactsh server + -interactions-cache-size int number of requests to keep in the interactions cache (default 5000) + -interactions-eviction int number of seconds to wait before evicting requests from cache (default 60) + -interactions-poll-duration int number of seconds to wait before each interaction poll request (default 5) + -interactions-cooldown-period int extra time for interaction polling before exiting (default 5) + -ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates + +FUZZING: + -ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix) + -fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single) + -fuzz enable loading fuzzing templates (Deprecated: use -dast instead) + -dast enable / run dast (fuzz) nuclei templates + -dts, -dast-server enable dast server mode (live fuzzing) + -dtr, -dast-report write dast scan report to file + -dtst, -dast-server-token string dast server token (optional) + -dtsa, -dast-server-address string dast server address (default "localhost:9055") + -dfp, -display-fuzz-points display fuzz points in the output for debugging + -fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10) + -fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low") + -cs, -fuzz-scope string[] in scope url regex to be followed by fuzzer + -cos, -fuzz-out-scope string[] out of scope url regex to be excluded by fuzzer + +UNCOVER: + -uc, -uncover enable uncover engine + -uq, -uncover-query string[] uncover search query + -ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan) + -uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port") + -ul, -uncover-limit int uncover results to return (default 100) + -ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60) + +RATE-LIMIT: + -rl, -rate-limit int maximum number of requests to send per second (default 150) + -rld, -rate-limit-duration value maximum number of requests to send per second (default 1s) + -rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED) + -bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25) + -c, -concurrency int maximum number of templates to be executed in parallel (default 25) + -hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10) + -headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10) + -jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120) + -pc, -payload-concurrency int max payload concurrency for each template (default 25) + -prc, -probe-concurrency int http probe concurrency with httpx (default 50) + -tlc, -template-loading-concurrency int maximum number of concurrent template loading operations (default 50) + +OPTIMIZATIONS: + -timeout int time to wait in seconds before timeout (default 10) + -retries int number of times to retry a failed request (default 1) + -ldp, -leave-default-ports leave default HTTP/HTTPS ports (eg. host:80,host:443) + -mhe, -max-host-error int max errors for a host before skipping from scan (default 30) + -te, -track-error string[] adds given error to max-host-error watchlist (standard, file) + -nmhe, -no-mhe disable skipping host from scan based on errors + -project use a project folder to avoid sending same request multiple times + -project-path string set a specific project path (default "/tmp") + -spm, -stop-at-first-match stop processing HTTP requests after the first match (may break template/workflow logic) + -stream stream mode - start elaborating without sorting the input + -ss, -scan-strategy value strategy to use while scanning(auto/host-spray/template-spray) (default auto) + -irt, -input-read-timeout value timeout on input read (default 3m0s) + -nh, -no-httpx disable httpx probing for non-url input + -no-stdin disable stdin processing + +HEADLESS: + -headless enable templates that require headless browser support (root user on Linux will disable sandbox) + -page-timeout int seconds to wait for each page in headless mode (default 20) + -sb, -show-browser show the browser on the screen when running templates with headless mode + -ho, -headless-options string[] start headless chrome with additional options + -sc, -system-chrome use local installed Chrome browser instead of nuclei installed + -cdpe, -cdp-endpoint string use remote browser via Chrome DevTools Protocol (CDP) endpoint + -lha, -list-headless-action list available headless actions + +DEBUG: + -debug show all requests and responses + -dreq, -debug-req show all sent requests + -dresp, -debug-resp show all received responses + -p, -proxy string[] list of http/socks5 proxy to use (comma separated or file input) + -pi, -proxy-internal proxy all internal requests + -ldf, -list-dsl-function list all supported DSL function signatures + -tlog, -trace-log string file to write sent requests trace log + -elog, -error-log string file to write sent requests error log + -version show nuclei version + -hm, -hang-monitor enable nuclei hang monitoring + -v, -verbose show verbose output + -profile-mem string generate memory (heap) profile & trace files + -vv display templates loaded for scan + -svd, -show-var-dump show variables dump for debugging + -vdl, -var-dump-limit int limit the number of characters displayed in var dump (default 255) + -ep, -enable-pprof enable pprof debugging server + -tv, -templates-version shows the version of the installed nuclei-templates + -hc, -health-check run diagnostic check up + +UPDATE: + -up, -update update nuclei engine to the latest released version + -ut, -update-templates update nuclei-templates to latest released version + -ud, -update-template-dir string custom directory to install / update nuclei-templates + -duc, -disable-update-check disable automatic nuclei/templates update check + +HONEYPOT: + -hpd, -honeypot-detect detect potential honeypot hosts based on match concentration + -hpt, -honeypot-threshold int number of distinct template IDs required to flag a honeypot host (default 15) + -shp, -suppress-honeypot suppress output for flagged honeypot hosts + +STATISTICS: + -stats display statistics about the running scan + -sj, -stats-json display statistics in JSONL(ines) format + -si, -stats-interval int number of seconds to wait between showing a statistics update (default 5) + -mp, -metrics-port int port to expose nuclei metrics on (default 9092) + -hps, -http-stats enable http status capturing (experimental) + +CLOUD: + -auth configure projectdiscovery cloud (pdcp) api key (default true) + -tid, -team-id string upload scan results to given team id (optional) (default "none") + -cup, -cloud-upload upload scan results to pdcp dashboard [DEPRECATED use -dashboard] + -sid, -scan-id string upload scan results to existing scan id (optional) + -sname, -scan-name string scan name to set (optional) + -pd, -dashboard upload / view nuclei results in projectdiscovery cloud (pdcp) UI dashboard + -pdu, -dashboard-upload string upload / view nuclei results file (jsonl) in projectdiscovery cloud (pdcp) UI dashboard + +AUTHENTICATION: + -sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan + -ps, -prefetch-secrets prefetch secrets from the secrets file + # NOTE: Headers in secrets files preserve exact casing (useful for case-sensitive APIs) + + +EXAMPLES: +Run nuclei on single host: + $ nuclei -target example.com + +Run nuclei with specific template directories: + $ nuclei -target example.com -t http/cves/ -t ssl + +Run nuclei against a list of hosts: + $ nuclei -list hosts.txt + +Run nuclei with a JSON output: + $ nuclei -target example.com -json-export output.json + +Run nuclei with sorted Markdown outputs (with environment variables): + $ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/ + +Additional documentation is available at: https://docs.projectdiscovery.io/getting-started/running + ``` Ek dokümantasyon şu adreste mevcuttur: [**`docs.projectdiscovery.io/getting-started/running`**](https://docs.projectdiscovery.io/getting-started/running?utm_source=github&utm_medium=web&utm_campaign=nuclei_readme) @@ -239,22 +451,22 @@ Nuclei Şablonları, önem dereceleri ve tespit yöntemleri gibi temel ayrıntı Kullanım durumları ve fikirler için [**dokümantasyonumuzu**](https://docs.projectdiscovery.io/templates/introduction) ziyaret edin. -| Kullanım durumu | Nuclei şablonu | -| :----------------------------------- | :------------------------------------------------- | -| Bilinen CVE'leri tespit et | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | -| Bant Dışı (Out-of-Band) zafiyetlerini belirle | **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | -| SQL Injection tespiti | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | +| Kullanım durumu | Nuclei şablonu | +| :------------------------------------------- | :------------------------------------------------- | +| Bilinen CVE'leri tespit et | **[CVE-2021-44228 (Log4Shell)](https://cloud.projectdiscovery.io/public/CVE-2021-45046)** | +| Bant Dışı (Out-of-Band) zafiyetlerini belirle| **[Blind SQL Injection via OOB](https://cloud.projectdiscovery.io/public/CVE-2024-22120)** | +| SQL Injection tespiti | **[Generic SQL Injection](https://cloud.projectdiscovery.io/public/CVE-2022-34265)** | | Siteler Arası Komut Dosyası Çalıştırma (XSS) | **[Reflected XSS Detection](https://cloud.projectdiscovery.io/public/CVE-2023-4173)** | -| Varsayılan veya zayıf şifreler | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | -| Gizli dosyalar veya veri ifşası | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | -| Açık yönlendirmeleri (open redirects) belirle | **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | +| Varsayılan veya zayıf şifreler | **[Default Credentials Check](https://cloud.projectdiscovery.io/public/airflow-default-login)** | +| Gizli dosyalar veya veri ifşası | **[Sensitive File Disclosure](https://cloud.projectdiscovery.io/public/airflow-configuration-exposure)** | +| Açık yönlendirmeleri (open redirects) belirle| **[Open Redirect Detection](https://cloud.projectdiscovery.io/public/open-redirect)** | | Alt alan adı devralmalarını (takeover) tespit et | **[Subdomain Takeover Templates](https://cloud.projectdiscovery.io/public/azure-takeover-detection)** | -| Güvenlik yanlış yapılandırmaları | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | -| Zayıf SSL/TLS yapılandırmaları | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | -| Yanlış yapılandırılmış bulut hizmetleri | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | -| Uzaktan kod yürütme zafiyetleri | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | -| Dizin geçiş (path traversal) saldırıları | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | -| Dosya dahil etme (file inclusion) zafiyetleri | **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** | +| Güvenlik yanlış yapılandırmaları | **[Unprotected Jenkins Console](https://cloud.projectdiscovery.io/public/unauthenticated-jenkins)** | +| Zayıf SSL/TLS yapılandırmaları | **[SSL Certificate Expiry](https://cloud.projectdiscovery.io/public/expired-ssl)** | +| Yanlış yapılandırılmış bulut hizmetleri | **[Open S3 Bucket Detection](https://cloud.projectdiscovery.io/public/s3-public-read-acp)** | +| Uzaktan kod yürütme zafiyetleri | **[RCE Detection Templates](https://cloud.projectdiscovery.io/public/CVE-2024-29824)** | +| Dizin geçiş (path traversal) saldırıları | **[Path Traversal Detection](https://cloud.projectdiscovery.io/public/oracle-fatwire-lfi)** | +| Dosya dahil etme (file inclusion) zafiyetleri| **[Local/Remote File Inclusion](https://cloud.projectdiscovery.io/public/CVE-2023-6977)** |
@@ -275,12 +487,170 @@ Kodumuza, [**`şablon kitaplığımıza`**](https://github.com/projectdiscovery/ Projeyi güncel tuttukları ve [**`PR gönderdikleri için harika topluluk katkıda bulunanlara`**](https://github.com/projectdiscovery/nuclei/graphs/contributors) teşekkür ederiz. :heart: -(Katkıda bulunanların listesi orijinalindeki gibi korunmuştur)

- -... + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +