iT邦幫忙

2026 iThome 鐵人賽

DAY 29
0
AI Security

淺談OWASP Top 10 for Large Language Model Applications系列 第 29 篇

淺談OWASP Top 10 for LLM Applications-Improper Output Handling 要怎麼防

  • 分享至 

  • xImage
  •  

Day 29|Improper Output Handling 要怎麼防?

上一篇提到,LLM 的輸出不能直接當成可信任的資料。

那麼,實際上要怎麼降低這個風險?

  1. 把 LLM Output 當成不可信資料

最基本的原則就是:

不管內容是不是 AI 產生的,都要經過安全檢查。

不要因為 LLM 回傳的是 SQL、HTML 或程式碼,就直接交給 Database、Browser 或 Shell 執行。OWASP 建議對模型輸出採取類似處理使用者輸入的 Zero Trust 思維。

  1. 根據使用情境進行 Output Encoding

不同地方需要不同的處理方式。

例如:

顯示在網頁 → HTML / JavaScript Encoding

送進 Database → Parameterized Query

寫入檔案 → Path Validation

執行指令 → 不應直接把模型輸出當成 Shell Command

不能使用同一套過濾規則處理所有情境。

  1. 限制 AI 可以執行的功能

如果 LLM 的輸出會進一步呼叫 API 或 Tool,就應該檢查:

這個操作真的被允許嗎?

例如 AI 產生了一個刪除資料的指令,Application 仍然應該確認權限、參數與前置條件,而不是直接執行。

  1. 高風險操作增加人工確認

像是刪除資料、部署程式、修改系統設定等操作,可以加入 Human-in-the-Loop。

讓 AI 負責提出建議,但真正執行之前,再由人或其他安全機制確認。

  1. 做好 Logging 與 Monitoring

如果模型突然大量產生 SQL、Shell Command 或其他異常輸出,系統應該能夠發現。

因此除了驗證輸出,也要留下適當的 Log、監控與異常偵測。

所以 Improper Output Handling 最重要的觀念其實很簡單:

LLM 可以產生內容,但不能因此取得「直接執行」的信任。

不論是 Browser、Database、API、Terminal 還是其他系統,模型輸出進入下一個系統之前,都應該重新進行適當的驗證與處理。


上一篇
淺談OWASP Top 10 for LLM Applications-Improper Output Handling 是什麼
系列文
淺談OWASP Top 10 for Large Language Model Applications 共 29 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言