acacode / acacode/swagger-typescript-api

Cannot apply `require-trusted-types-for 'script'` Content-Security-Policy

未關閉
#985 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
enhancement
主要語言
TypeScript
星號
4.1k
分支
436
PR 合併指標
30 天內沒有已合併 PR

描述

Our SOC-2 auditor identified a vulnerability risk with our content security policy because we didn't have explicit list of `trusted-types` in our application's Content-Security-Policy. In theory, if a 0-day exploit was found, someone could inject malicious javascript into the page and the Content-Security-Policy would block ordinary users from seeing it unless they manually edited the local response headers. The CSP acts as a last line of defense against XSS.

The usual fix is to add `require-trusted-types-for 'script'` to our CSP, find which elements it is blocking and whitelist them. However, this does not work on the docs page because the elements rendered by the Swagger Docs do not have a `trustedType` associated with them to whitelist.

We do not have a lot of frontend resources available at the moment, so wrapping everything in the frontend code in our own trusted types would be a heavy lift as a workaround. What I would like is for the swagger components to have their own trustedType(s) that I can whitelist on the `trusted-types` section of the CSP so the docs page will actually render instead of looking like this:

![Screenshot 2024-11-18 at 1 03 49 PM](https://github.com/user-attachments/assets/9246fe80-cc07-4445-982d-d693a287e34c)

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。