iT邦幫忙

鐵人檔案

2023 iThome 鐵人賽
回列表
Security

Beyond XSS:探索網頁前端資安宇宙 系列

如果把網頁前端資安的領域比喻成一個宇宙的話,XSS 或許就是那顆最大最亮的星球,佔據了多數人的目光。但除了它以外,在宇宙中還有很多沒這麼大的行星與恆星,它一直都在那,你只是沒發現而已。

除了 XSS 以外,還有更多值得學習的資安議題。在這個系列文中,我希望能帶著讀者一起探索前端資安宇宙,介紹更多有趣的攻擊手法以及防禦措施,讓大家對於「前端安全」有著不同的理解。

鐵人鍊成 | 共 31 篇文章 | 227 人訂閱 訂閱系列文 RSS系列文
DAY 1

達標好文 [Day1] 前端資安比你想的還要多東西

身為一個軟體工程師,對資訊安全一定不陌生。在工作上的專案可能有經過資安的審核,包括靜態程式碼掃描、弱點掃描或是滲透測試等等,再更進階一點可能做過更全面的紅隊演練...

2023-09-01 ‧ 由 huli 分享
DAY 2

[Day2] 瀏覽器的安全模型

在談網頁前端的資安議題時,我們必須先對網頁前端的核心有個最基礎的認識。 網頁前端最大的不同,就在於程式碼是跑在瀏覽器上面。是瀏覽器負責 render 你的 HT...

2023-09-02 ‧ 由 huli 分享
DAY 3

[Day3] 前端資安還是得從 XSS 開始談起才對味

在第一篇的序言裡面我有提到前端安全不只有 XSS,還有許多很有趣的東西,但其實光是 XSS 本身就很有趣,也是許多人認知中的「前端資安」,因此還是不免俗地得從...

2023-09-03 ‧ 由 huli 分享
DAY 4

[Day4] 再多了解 XSS 一點點

上一篇中有提到針對不同的情境,攻擊者會需要調整 XSS payload 才能確保效果,例如說注入點在 innerHTML 的話,用 <script>...

2023-09-04 ‧ 由 huli 分享
DAY 5

[Day5] 危險的 javascript: 偽協議

前一篇中有提到各種 XSS 情境以及執行程式碼的方式,講到了一種叫做 javascript: 偽協議的東西,我覺得這個就算放在現代前端的角度來看,也是開發者需要...

2023-09-05 ‧ 由 huli 分享
DAY 6

[Day6] XSS 的第一道防線:Sanitization

講完了 XSS 的各種基本知識以及攻擊手法,該來談一下防禦了。從這篇開始會正式進入到第二章:「XSS 的防禦方式以及繞過手法」。 之前在講 XSS 的防禦時其實...

2023-09-06 ‧ 由 huli 分享
DAY 7

[Day7] XSS 的第二道防線:CSP

XSS 的第一道防線就是把使用者的輸入處理乾淨,確保內容是沒有問題的。但說起來容易,做起來難,尤其是對一些 legacy 的專案來講,程式碼又亂又雜又多,要修哪...

2023-09-07 ‧ 由 huli 分享
DAY 8

達標好文 [Day8] XSS 的第三道防線:降低影響範圍

在第一道防線中,我們對使用者的輸入做了處理,盡可能確保使用者的輸入有經過編碼或是消毒,不要讓他們插入惡意的內容,而第二道防線則是 CSP,靠著 CSP 的規則,...

2023-09-08 ‧ 由 huli 分享
DAY 9

[Day9] 最新的 XSS 防禦:Trusted Types 與內建的 Sanitizer API

在講 XSS 的防禦時,我有提到要處理使用者的輸入,如果原本就允許 HTML,那需要找個好用的套件設定規則去處理。 這些需求其實有很多網站都會需要,因此瀏覽器也...

2023-09-09 ‧ 由 huli 分享
DAY 10

[Day10] 繞過你的防禦:常見的 CSP bypass

之前有提過開發者可以設置 CSP 當作守護網站的第二道防線,讓攻擊者就算能夠插入 HTML,也不能執行 JavaScript,大幅降低了影響程度。由於 CSP...

2023-09-10 ‧ 由 huli 分享