⚠️ 使用授權警示:nuclei 是主動式漏洞掃描器,會對目標發送可能觸發漏洞的請求。未經書面授權對他人系統執行掃描,在許多司法管轄區屬於違法行為(台灣:刑法 §358 / §359;美國:CFAA;歐盟:CDA / NIS2)。本教學僅用於:(a) 你擁有的系統,(b) 你以書面合約被授權測試的系統,(c) 公開 Bug Bounty Program 範圍內的標的。

nuclei 完整教學

30 分鐘從安裝到自己寫 template,並理解如何負責任地使用。


1. 專案定位

1.1 一句話總結

nucleiProjectDiscovery 開發的 YAML-based 高速漏洞掃描器,由全球安全社群維護 11,000+ 公開規則,是現代 DAST (Dynamic Application Security Testing; 動態應用安全測試) 的事實標準。

1.2 它解決什麼問題?

傳統漏洞掃描器(Nessus / OpenVAS / Qualys)有三個問題:

  1. 規則閉源:你不知道掃描器到底打了什麼請求;誤判 / 漏判難 debug
  2. :序列化掃描,每個 target 要幾小時
  3. 規則更新慢:新 CVE 公開到掃描器更新規則往往要數週

nuclei 的解法:

  • 規則開源 + YAML 化:每個漏洞 = 一份 YAML,寫法簡單到「會寫 HTTP request + regex 就能寫一條 template」
  • 平行化 + clustering:work pool 並發 + 相同請求自動合併
  • 社群驅動:新 CVE 公開後幾小時內,社群就會 PR 上 template

1.3 與類似工具的差異

工具定位規則來源nuclei 差異
Nessus / Qualys商業 vuln scanner廠商閉源nuclei 全開源 + 客製化規則
OWASP ZAP / BurpDAST + 主動代理自家 add-onZAP 更像「測試平台」;nuclei 更像「規則執行器」
Nikto老牌 web scanner內建規則Nikto 規則少且舊;nuclei 規則 1.1 萬條且每日更新
Wapiti / sqlmap特定 vector 專用內建 logicnuclei 是通用引擎,能用 YAML 表達 sqlmap 不能表達的邏輯

1.4 適合誰

  • 紅隊 / 滲透測試:合約授權範圍內快速覆蓋已知 CVE
  • Bug bounty 獵人:對 scope 內 target 跑 nuclei 找低垂果實
  • DevSecOps / 應用安全:把 nuclei 接到 CI/CD,每次部署掃自家系統
  • 藍隊 / SOC:紅隊視角驗證自家偵測能力
  • 沒授權就想掃別人:違法,且 nuclei 流量特徵明顯,被告抓很容易

2. 安裝指南

2.1 環境前提

元件版本說明
Go1.21+從原始碼編譯需要;用預編譯 binary 可跳過
作業系統Linux / macOS / Windows全平台支援
網路對 target 與 Templates repo (GitHub)第一次跑會自動 nuclei -ut 下載 templates

2.2 安裝步驟(5 選 1)

方法 1:Go install(最常用)

1go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest

方法 2:Homebrew (macOS / Linux)

1brew install nuclei

方法 3:Docker

1docker pull projectdiscovery/nuclei:latest
2docker run -it --rm projectdiscovery/nuclei -target https://example.com

方法 4:apt (Debian / Ubuntu)

1sudo apt install nuclei

方法 5:預編譯 binary

https://github.com/projectdiscovery/nuclei/releases/latest 下載對應平台 zip。

2.3 第一次跑

 1# 1. 更新 templates (第一次必跑)
 2nuclei -ut
 3
 4# 2. 確認版本與安裝路徑
 5nuclei -version
 6which nuclei
 7ls ~/.config/nuclei/      # config 在這
 8ls ~/nuclei-templates/    # templates 在這
 9
10# 3. 對你擁有的測試標的試掃
11nuclei -target http://your-own-test-site.local

2.4 安裝後驗證

1# 看可用 templates 統計
2nuclei -tl | head -20
3
4# 試一個低風險 template (僅做 banner detection,不發攻擊)
5nuclei -target https://example.com -t http/technologies/tech-detect.yaml

3. 核心架構解析

3.1 整體架構

 1                  ┌──────────────────┐
 2target list  ───▶ │ Input provider   │ (pkg/input)
 3                  └────────┬─────────┘
 4 5                  ┌──────────────────┐    ┌─────────────────────┐
 6templates  ─────▶ │ Catalog / Loader │───▶│  Templates (parsed) │
 7                  └────────┬─────────┘    └─────────────────────┘
 8 9                  ┌──────────────────┐
10                  │   Engine (core)  │ ← work pool + clustering
11                  └────────┬─────────┘
1213                  ┌──────────────────┐
14                  │ Protocol Request │ ── HTTP / DNS / TCP / SSL / JS / Code
15                  └────────┬─────────┘
1617                  ┌──────────────────┐
18                  │   Operators      │ ── matchers / extractors
19                  └────────┬─────────┘
2021                  ┌──────────────────┐
22                  │ Output / Report  │ ── stdout / Jira / Slack / GitLab / Splunk
23                  └──────────────────┘

3.2 關鍵 package 與職責

Package行數職責
cmd/nuclei915 行CLI 參數解析、組合 runner
internal/runner編排整體掃描流程
pkg/coreWork pool + Template clustering 引擎
pkg/templatesTemplate parser / compiler
pkg/protocols/{http,dns,network,headless,javascript,code,ssl,whois,websocket,file}各協定請求實作
pkg/operators/{matchers,extractors}匹配規則 (status / word / regex / dsl) 與資料抽取
pkg/catalogTemplate 探索 (本地檔案 / 遠端 git)
pkg/fuzzFuzzing engine + DAST 變異
pkg/jsJavaScript runtime 與 auto-generated bindings
pkg/reportingJira / GitLab / Slack / Elastic / Splunk 報告整合
lib/SDK,可嵌入其他 Go 程式作為 library 使用

3.3 Template 結構解剖

最小範例:

 1id: example-cve-detection
 2
 3info:
 4  name: Example CVE-XXXX-YYYY Detection
 5  author: your_handle
 6  severity: high
 7  description: Detects example vulnerability
 8  reference:
 9    - https://nvd.nist.gov/vuln/detail/CVE-XXXX-YYYY
10  tags: cve,cve2024,rce
11
12http:
13  - method: GET
14    path:
15      - "{{BaseURL}}/vulnerable-endpoint"
16    matchers-condition: and
17    matchers:
18      - type: status
19        status:
20          - 200
21      - type: word
22        part: body
23        words:
24          - "vulnerable signature"

關鍵欄位:

  • id: 全 templates 庫唯一識別
  • info: severity (info/low/medium/high/critical)、CVE 編號、tag
  • http (或 dns / network / ssl / code / javascript): 協定區塊,列出要送的請求
  • matchers: 怎麼判斷漏洞存在 (status / word / regex / binary / dsl)
  • extractors: 把回應中的資料抽出來 (給 workflow 後續用)

3.4 Template clustering — 效能秘密

兩個 templates 都打 /wp-login.php

  • Template A 偵測 WP 版本
  • Template B 偵測 admin 弱密碼

傳統做法:2 次 HTTP request。
nuclei 做法:1 次 request,把 response 同時餵給 A 與 B 的 matchers。

實測:對一個有 200 個 WordPress 標的的 list 掃描 5000 條 WP-related templates,clustering 可省 60-80% 流量。

3.5 Workflow — 多 template 串接

workflows/wordpress-workflow.yaml 範例:

1workflows:
2  - template: technologies/wordpress-detect.yaml
3    subtemplates:
4      - tags: wordpress

意思:先跑 detect,確認是 WordPress 才接著跑所有 tags: wordpress 的 templates。避免對非 WordPress 系統浪費請求。


4. CLI 詳細用法

完整 flag 清單 (200+) 見 nuclei -h。以下列出最常用。

4.1 目標指定

Flag用途
-target <URL>-u單一目標
-list <file>-l從檔案讀目標列表 (一行一個)
-target <CIDR>網段 (CIDR notation,用於 network templates)
-stdin從 stdin 讀目標 (適合 pipe: `subfinder

4.2 Template 選擇

Flag用途
-t <path>指定 template 檔案 / 目錄
-w <path>指定 workflow
-tags <list>跑特定 tag 的 templates (例:-tags cve,sqli)
-severity <list>只跑特定嚴重度 (例:-severity high,critical)
-author <name>只跑特定作者的 templates
-exclude-templates <path>排除特定 templates
-include-tags <list>強制包含預設排除的 tags (如 fuzz)

4.3 速率控制(重要 — 避免打掛 target)

Flag預設用途
-rate-limit <N>150每秒最多送 N 個請求 (全域,不分 host)
-bulk-size <N>25同時對多少 host 平行掃
-concurrency <N>25同 host template 並發
-timeout <sec>10單一 request timeout
-retries <N>1失敗重試次數

生產環境建議:對自家系統不需要太保守,對第三方 (bug bounty / 客戶系統):

1nuclei -target $TARGET -rate-limit 50 -bulk-size 5 -concurrency 10

4.4 輸出與報告

Flag用途
-o <file>結果寫入檔案
-jsonlJSONL 格式輸出 (機器可讀)
-markdown-export <dir>產 markdown 報告
-sarif-export <file>SARIF 格式 (GitHub Code Scanning 用)
-report-config <yaml>Jira / GitLab / Slack 報告整合設定
-dashboard把結果上傳到 ProjectDiscovery cloud (免費)

4.5 更新與設定

Flag用途
-ut-update-templates更新 templates 庫
-up-update更新 nuclei 自己
-config <yaml>自訂設定檔
-tl列出所有 templates (template list)
-validate -t <path>驗證自己寫的 template 格式

4.6 進階:unsafe / fuzzing

Flag用途
-unsafe允許送 raw HTTP request (繞 net/http parser 的合法性檢查)
-interactsh-server <url>自架 OOB (out-of-band) 互動式測試 server
-fuzz啟用 fuzzing 模式 (對所有 input 變異)
-itags fuzz強制跑被 .nuclei-ignore 排除的 fuzz templates

5. 應用場景

5.1 Workflow A — Bug Bounty 快速掃 scope

1# 1. 先用 subfinder 找子網域
2subfinder -d target.com -o subs.txt
3
4# 2. httpx 過濾活著的
5httpx -l subs.txt -o live.txt
6
7# 3. nuclei 跑 high/critical templates
8nuclei -l live.txt -severity high,critical -rate-limit 50 -o findings.txt -markdown-export reports/

5.2 Workflow B — 自家應用 CI/CD 掃描

.github/workflows/security.yml

 1name: nuclei scan
 2on:
 3  pull_request:
 4  schedule:
 5    - cron: '0 0 * * *'
 6jobs:
 7  scan:
 8    runs-on: ubuntu-latest
 9    steps:
10      - uses: projectdiscovery/nuclei-action@main
11        with:
12          target: https://staging.your-app.com
13          templates: cves/,vulnerabilities/
14          flags: "-severity high,critical -sarif-export results.sarif"
15      - uses: github/codeql-action/upload-sarif@v3
16        with:
17          sarif_file: results.sarif

PR 中發現 high/critical 漏洞自動標 Code Scanning alert。

5.3 Workflow C — 特定 CVE 緊急驗證

新 CVE 公開後,你要快速確認自家 5000 個 endpoint 是否受影響:

1# Log4Shell 例
2nuclei -l all-endpoints.txt -t http/cves/2021/CVE-2021-44228.yaml -jsonl -o log4shell.jsonl
3jq '.host' log4shell.jsonl | sort -u    # 列出受影響 host

5.4 Workflow D — 寫自家 template

公司內部 API 規範:每個服務的 /admin 都必須要 401。寫 template 驗證:

 1id: internal-admin-must-401
 2
 3info:
 4  name: Internal Admin Endpoint Must Return 401
 5  author: appsec
 6  severity: medium
 7  tags: internal,access-control
 8
 9http:
10  - method: GET
11    path:
12      - "{{BaseURL}}/admin"
13    matchers:
14      - type: status
15        status:
16          - 200
17          - 403
18          - 500
19        negative: false

跑:nuclei -l services.txt -t custom-templates/internal-admin-must-401.yaml

任何回非 401 的服務都會被告警 — 這是 nuclei 用作 compliance check 的典型場景


6. 資安掃描報告 — Nuclei 雙重用途說明

這份報告分兩半:

  • 6.1:對 nuclei 本身的程式碼 風險評估(你裝 nuclei 會發生什麼)
  • 6.2:使用 nuclei 對外掃描 的責任邊界(你跑 nuclei 該注意什麼)

6.1 程式碼風險評估

🟢 低風險 — nuclei 本身

風險面向結果
開源透明度全 MIT、28k 星、3.4k fork,公開審查;ProjectDiscovery 是已知商業安全公司
Supply chainGo module + go.sum;release 用 goreleaser 簽章;release 流程在 .goreleaser.yml 透明
套件信任go.mod 依賴標準 Go 套件 + projectdiscovery 自家工具鏈 (rawhttp / interactsh-client / utils)
JavaScript runtime內建沙箱化 JS engine 用於 code/javascript protocol templates;執行不可信第三方 templates = 等於跑不可信 JS(見 6.3 警示)
Local code execution由 templates 觸發,不會自我修改宿主機
README 自我警示明確標:「Running nuclei as a service may pose security risks」(README §1)
安裝完成後執行檔位置$GOPATH/bin/nuclei(go install)、/usr/local/bin/nuclei(apt/brew)— 你可控

結論:在「安裝 nuclei 到自家機器」這層,程式碼安全等級 🟢 低。從原始碼角度沒有惡意行為。

6.2 使用授權邊界(🔴 重要:法律與倫理風險)

nuclei 是主動式掃描器:它會送可能觸發 SQL injection、SSRF、RCE、open redirect、XXE 等的請求到目標。在多數司法管轄區,未經授權對他人系統執行漏洞掃描即構成違法

6.2.1 合法使用情境

情境是否合法注意事項
對你擁有的系統 (自家 production / staging / lab)✅ 合法仍建議跟 SRE 通知掃描時段,避免誤判為攻擊
對你書面授權的客戶系統 (滲透測試合約)✅ 合法範圍 / 時間 / 工具列表都應在 SOW 內白紙黑字寫明
公開 Bug Bounty Program 範圍內✅ 合法嚴格依該 program 規則:scope、速率、禁用 vector
*.example.com 教學範例 (RFC 2606)✅ 合法但只回 404,不會給你真正的測試素材
對「我覺得反正掃了不會被抓」的隨機網站違法流量特徵明顯,被告抓很容易
對「公開的政府網站」做主動掃描違法即使公開可訪問,主動掃描仍可能違反 CFAA / 妨害電腦使用罪

6.2.2 司法管轄區法規參考

地區主要法條簡述
台灣刑法 §358 (入侵他人電腦)、§359 (取得刪除變更電磁紀錄)無故輸入帳號密碼或其他方法侵入他人電腦 → 3 年以下
美國CFAA (Computer Fraud and Abuse Act, 18 U.S.C. § 1030)未授權存取,最高 10-20 年
歐盟NIS2 Directive + 各國 cybercrime law (e.g. UK Computer Misuse Act 1990)未授權存取,最高無上限罰金 + 監禁
中國刑法 §285 (非法侵入電腦資訊系統罪)3 年以下;情節嚴重 7 年以下

6.2.3 自我保護 checklist

掃描前確認:

  • 我擁有目標 / 我有書面授權 / 標的在公開 BBP scope 內
  • 我從自家授權範圍的 IP 出口執行(不要從 Tor / 跳板,會被當作攻擊者)
  • 我設了合理的 -rate-limit(建議 50 對第三方),避免 DoS 嫌疑
  • 不跑會造成資料改動的 templates (除非明確授權): -severity info,low,medium、避開 tags: intrusivetags: fuzz
  • 我留掃描時的 log / nuclei 版本 / templates 版本,供事後追溯
  • 對 production 目標,我避開尖峰時段並通知該系統的 SRE

6.2.4 紅旗 — 立即停止的情境

掃描中若遇到以下情境,立刻停止並回報合約 / BBP 對方

  • 觸發了會造成資料變更的漏洞 (例:寫入 webshell、改密碼)
  • 發現超出授權範圍的子系統 (例:合約只覆蓋 www.example.com,但掃出 admin.example.com)
  • 發現他人的個資 / 機密資料
  • 系統開始回 5xx / 嚴重變慢 (可能是你打掛了)

6.3 Template 信任問題(🟡 中等風險)

nuclei 的威力來自社群 templates,但這也代表:跑社群 template = 信任社群作者

6.3.1 風險

  • v3 引入 JavaScript runtime,template 可內嵌 JS code
  • 任何 PR 進 nuclei-templates 都需通過 review,但 review 規模大、不一定每行 JS 都人類審過
  • 第三方 template repo(非官方 projectdiscovery/nuclei-templates)審查完全不可信

6.3.2 緩解

  • 預設只用 ~/nuclei-templates/(官方 repo),用 -ut 同步
  • ⚠️ 第三方 templates 先審再跑:尤其檢查 code: / javascript: / unsafe: 區塊
  • ✅ 公司內部正式環境用「lockfile」固定 template 版本,不要 latest
  • ✅ 對未審過的 template,先在 lab 環境跑一次,看流量是否符合預期

7. FAQ

Q1:第一次跑 nuclei -target ... 沒結果? A:八成是沒先跑 nuclei -ut 下載 templates。~/nuclei-templates/ 是空的。

Q2:掃出 false positive 怎麼辦? A:好新聞 — nuclei 設計重點就是「先打真正會觸發漏洞的 request 才報」。如果還有 FP,到 nuclei-templates repo 開 issue 並附 PoC,社群很活躍。

Q3:可以用在 internal network 嗎? A:可以,但要明白 nuclei 預設假設「target 可從你機器直接到達」。對複雜內網拓撲,可能要先用 jumpbox 或 socks proxy:nuclei -target ... -proxy socks5://127.0.0.1:1080

Q4:怎麼限制 nuclei 不要打 DoS / 改資料的 templates? A:用 tag 排除:

1nuclei -target $T -etags intrusive,dos,fuzz

Q5:nuclei 跟 subfinder / httpx / katana 怎麼搭? A:典型 recon → scan pipeline:

1subfinder -d target.com | httpx -silent | katana | nuclei -severity high,critical

這是 ProjectDiscovery 工具鏈設計的核心 use case。

Q6:商業版 Pro / Enterprise 跟 OSS 有什麼差? A:OSS 是完整功能;Pro 賣的是:50× 速度的雲端執行、SAML SSO、多人協作 dashboard、Jira/Slack/PagerDuty 深度整合、SOC 2 報告。對個人 / 小團隊 OSS 完全夠用。

Q7:可以把 nuclei 結果丟給 LLM 整理嗎? A:可以 — 用 -jsonl 輸出,然後 pipe 給 Claude / GPT 摘要。但注意:findings 含 target URL 與漏洞細節,這是敏感資料,不要丟到公開 LLM API(OpenAI / Anthropic / Google)的非企業帳號。建議用 self-hosted LLM 或企業版(有 zero retention 條款)。

Q8:用作合規 / 報告產出,nuclei 夠嗎? A:取決於合規框架:

  • OWASP ASVS / PCI-DSS testing:nuclei + manual review 通常足夠
  • ISO 27001 / SOC 2:nuclei 結果可作為 evidence 一部分
  • CWE / CVE 完整覆蓋:nuclei 強在 known CVE,但對 business logic 漏洞需手動測

8. 進階技巧

8.1 寫 template 的最佳實踐

  1. 從 modify 既有 template 開始:不要從零開始,找個類似漏洞的 template 改
  2. 嚴格的 matcher:避免單純 word match,盡量用 matchers-condition: and 組合多個條件
  3. info.severity 要老實:critical 嚴重度後續會影響 SLA,灌水會失去信任
  4. info.reference 必填:附 CVE / advisory URL,方便事後驗證

8.2 Interactsh — OOB (out-of-band) 漏洞偵測

對於 blind SSRF / blind SQLi / RCE 等「漏洞觸發但沒回顯」的情境,nuclei 用 interactsh 提供 OOB 通道:

 1http:
 2  - method: POST
 3    path:
 4      - "{{BaseURL}}/vulnerable"
 5    body: |
 6      {"url": "http://{{interactsh-url}}/poc"}
 7    matchers:
 8      - type: word
 9        part: interactsh_protocol
10        words:
11          - "http"

target 若有 SSRF,會打回 interactsh server,nuclei 就知道漏洞觸發了。生產環境建議自架 interactsh 而非用公開的 oast.fun,避免漏洞資訊外洩。

8.3 用 lib/ 嵌入 Go 程式

 1import nuclei "github.com/projectdiscovery/nuclei/v3/lib"
 2
 3func main() {
 4    ne, _ := nuclei.NewNucleiEngine(
 5        nuclei.WithTemplateFilters(nuclei.TemplateFilters{Severity: "critical"}),
 6    )
 7    defer ne.Close()
 8    ne.LoadAllTemplates()
 9    ne.ExecuteWithCallback(nuclei.WithCallback(func(event *output.ResultEvent) {
10        fmt.Println("Found:", event.TemplateID, event.Host)
11    }))
12}

適合做自家 SaaS:使用者上傳 target,後端跑 nuclei,結果以 webhook 推回。

8.4 自訂 reporting integration

~/.config/nuclei/report-config.yaml

1gitlab:
2  base_url: https://gitlab.example.com
3  username: appsec-bot
4  token: $GITLAB_TOKEN
5  project_id: 42
6  issue_label: nuclei,vulnerability,severity/${severity}

跑:nuclei -target X -report-config ~/.config/nuclei/report-config.yaml,所有 finding 自動開 GitLab issue。


9. 整合進其他工作流

9.1 與 ProjectDiscovery 工具鏈

1subfinder ─▶ httpx ─▶ katana ─▶ nuclei ─▶ pdcp dashboard
2   找子網域     過濾活的    爬連結    跑漏洞      可視化

9.2 與 SIEM / DFIR

把 nuclei -jsonl 輸出餵給 SIEM (Splunk / Elastic / Datadog):

1nuclei -l targets.txt -jsonl | curl -X POST \
2  -H "Content-Type: application/json" \
3  --data-binary @- \
4  https://splunk.example.com/services/collector

9.3 與 IaC / Compliance

把「公司應用必須遵守的 spec」寫成 nuclei templates,在 CI 跑 → 不通過則 fail PR。例如:

  • 所有 prod endpoint 必須 HTTPS + HSTS
  • /admin 必須回 401
  • 任何 response 不得含 Server: nginx/1.16.x (已知漏洞版本)

9.4 與 LLM agent

把 nuclei 輸出餵給 Claude / GPT,請 LLM 做:

  • 嚴重度分類(template severity 之外的 business context)
  • 修補建議
  • false positive 過濾

但記住 6.2 — findings 是敏感資料,要選對 LLM provider


10. 重點摘要 Checklist

  • nuclei 是主動式掃描器,未經授權對他人系統執行 = 違法
  • YAML-based templates:規則開源、社群維護、寫法簡單
  • 安裝go install github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest + nuclei -ut
  • 第一次跑前nuclei -ut 同步 templates 庫
  • 速率控制:對第三方 target 用 -rate-limit 50 -bulk-size 5
  • 嚴重度過濾-severity high,critical 聚焦真正高優先 finding
  • 避免破壞性 tags-etags intrusive,dos,fuzz 排除可能造成資料變更或 DoS 的 template
  • 第三方 templates 先審再跑:v3 內嵌 JS runtime,等於跑外部 code
  • 生產環境用 lockfile:固定 template 版本,不要永遠 latest
  • 整合 CI/CD:用 projectdiscovery/nuclei-action GitHub Action 自動掃 PR
  • 法律 / 合約完備:書面授權 + scope + 時間範圍 + 工具清單,缺一不可

11. 進一步閱讀

官方

  • 主 repo:projectdiscovery/nuclei
  • Templates:projectdiscovery/nuclei-templates
  • 官方文件:https://docs.projectdiscovery.io/tools/nuclei
  • 線上 template 編輯器(AI 輔助):https://cloud.projectdiscovery.io/templates
  • YouTube 教學系列:https://www.youtube.com/playlist?list=PLZRbR9aMzTTpItEdeNSulo8bYsvil80Rl
  • Discord 社群:https://discord.gg/projectdiscovery

周邊工具鏈

法律 / 倫理

進階閱讀

  • DESIGN.md — 完整架構文件(561 行)
  • FUZZING.md — Fuzzing 引擎設計
  • ProjectDiscovery 部落格:https://blog.projectdiscovery.io/

免責聲明:本教學由 AI Knowledge Template 自動產生,技術內容僅供研究與授權測試使用。未經書面授權對他人系統執行漏洞掃描可能構成違法。本教學作者與 nuclei 開發團隊均不對誤用 / 違法使用負責。如有疑慮,請先諮詢律師或合規團隊。