CVE-2026-61484漏洞概述
Apache Lucy 是一套全文搜尋引擎函式庫,主要供 Perl 等程式建立搜尋索引。它不是 Apache HTTP Server,也不是一般網站伺服器。
CVE-2026-61484 發生在 Apache Lucy 的遠端搜尋功能 LucyX::Remote::SearchServer。
該服務在收到遠端資料後,會使用 Perl Storable::thaw() 將資料還原成物件,但沒有先確認資料是否可信。
攻擊方式示意
正常網站與 Lucy SearchServer 通常是不同的服務入口:
一般使用者
│
│ HTTPS/443
▼
網站或應用程式
│
│ Lucy 自訂 TCP RPC
▼
LucyX::Remote::SearchServer
│
▼
全文搜尋索引
攻擊者不一定需要經過網站:
攻擊者
│
│ 直接連線至 Lucy TCP 服務埠
▼
傳送特製的 Storable 二進位資料
│
▼
SearchServer 執行 Storable::thaw()
│
▼
可能執行任意程式碼或造成服務中斷
Lucy SearchServer 的程式會先讀取 4 位元組的資料長度,再讀取指定長度的資料,並直接呼叫 thaw()。完成反序列化後,才會檢查 RPC 動作名稱。這表示攻擊可能在一般業務邏輯檢查之前發生。
影響範圍
Apache 官方表示,Apache Lucy 所有版本均受此漏洞影響。
實際上具有遠端攻擊面的環境,通常需符合下列條件:
- 系統已安裝 Apache Lucy。
- 使用
LucyX::Remote::SearchServer遠端搜尋功能。 - Lucy SearchServer 的 TCP 服務埠可被攻擊者連線。
- 服務埠未限制來源,或直接暴露於網際網路。
若系統只在程式內使用 Lucy 建立及搜尋本機索引,沒有啟用 Remote SearchServer,便沒有此漏洞所描述的遠端網路入口。
為何一般 WAF 無法有效阻擋?
本漏洞雖然發生在應用層,但攻擊流量通常不是 HTTP 或 HTTPS,而是 Lucy 自訂的 TCP RPC 協定。
一般 WAF 主要檢查:
HTTP 方法
網址與查詢參數
HTTP Header
Cookie
JSON、XML 或表單內容
Lucy SearchServer 接收的則是:
TCP 連線
+ 4 位元組資料長度
+ Perl Storable 二進位資料
因此,若攻擊者直接連線至 Lucy 的 TCP 服務埠,流量不會經過網站的 HTTP WAF。即使網站的 443 連接埠已部署 WAF,也無法保護另一個直接對外開放的 Lucy 服務埠。
WAF仍可用來保護網站,但不應作為此漏洞的主要防護措施。
建議處置方式
一、立即確認是否使用 Lucy Remote SearchServer
可在伺服器上檢查 Perl 或 Lucy 相關的監聽服務:
ss -lntp | grep -Ei 'perl|lucy'
lsof -nP -iTCP -sTCP:LISTEN | grep -Ei 'perl|lucy'
也可搜尋程式碼或設定檔是否包含:
LucyX::Remote::SearchServer
LucyX::Remote::SearchClient
ClusterSearcher
serve(
serve_sock(
官方文件中的 7890 只是範例連接埠,實際連接埠由系統部署時自行設定。
二、不需要遠端搜尋時,立即停用服務
若系統沒有跨主機搜尋需求,應停止 LucyX::Remote::SearchServer,
僅在同一台主機使用時,應將服務限制在:
127.0.0.1
或
::1
避免監聽於:
0.0.0.0
或
::
三、使用防火牆限制來源
若業務上仍需使用 Remote SearchServer,應透過主機防火牆、雲端 Security Group、網路 ACL 或 TCP Load Balancer,僅允許指定的應用伺服器連線。
範例原則:
允許:
指定應用伺服器 IP → Lucy TCP port
拒絕:
其他所有來源 → Lucy TCP port
不應允許下列來源直接連線:
0.0.0.0/0
::/0
若需跨網路連線,建議搭配 VPN、私有網路或支援雙向憑證驗證的 TCP Proxy,避免將 Lucy 服務埠直接暴露於網際網路。
四、不要只依賴封包關鍵字
攻擊內容使用二進位 Storable 格式,不一定包含 /bin/sh、curl、wget 等明顯文字。
另外,_action、handshake、top_docs 等字串也可能出現在正常 Lucy 流量中。因此,只以關鍵字阻擋容易被繞過,也可能造成誤判。
最可靠的防護方式是:
不讓不可信來源連上 Lucy SearchServer
五、監控異常行為
建議監控以下事件:
- Lucy 或 Perl 程序啟動
sh、bash、curl、wget、python、nc等異常子程序。 - Lucy 執行帳號在
/tmp等目錄建立可執行檔。 - Lucy 服務主動連線至不明外部 IP。
- Lucy TCP 服務埠出現大量或來源異常的連線。
- 服務發生不明原因崩潰、重啟或 Perl
Storable錯誤。 - Lucy 執行帳號新增排程、SSH 金鑰或其他持久化設定。
六、規劃替換 Apache Lucy
Apache Lucy 已於 2018 年退休,並於 2019 年移入 Apache Attic,不再由原專案持續維護。
官方已明確表示,不會針對 CVE-2026-61484 發布修補版本,建議使用者改用其他產品,
因此,防火牆與來源限制只能作為暫時降低風險的措施。
處置優先順序
1. 確認是否啟用 LucyX::Remote::SearchServer
↓
2. 確認實際監聽 IP 與 TCP port
↓
3. 若不需要,立即停止服務並關閉 port
↓
4. 若仍需使用,只允許指定可信 IP
↓
5. 加入程序、連線及檔案異常監控
↓
6. 規劃遷移並完全移除 Apache Lucy
結論
CVE-2026-61484 是 Apache Lucy Remote SearchServer 的不安全反序列化漏洞。攻擊者只要能連線至 Lucy 的 TCP 服務埠,就可能在不需登入的情況下傳送惡意資料,
由於攻擊通常不經過 HTTP/HTTPS,一般網站 WAF 無法提供完整防護。應優先關閉不必要的 Lucy 服務埠、限制可信來源,並儘速遷移至仍受維護的替代方案。


