原文出處:https://lylemi.github.io/2018/10/29/unicode-normalization/
文章前言:
做SSRF測試的時候,常提到用類似 a 字元來bypass過濾器,之前沒有做深究,偶然的一次機會,發現baidu.com(\uff41)能跳轉到百度,但是bаidu.com(\u0430)會被認為是一個新的IDN域名,並不指向baidu.com。先在瀏覽器中開啟工具偵錯,發現第一個case在HTTP包中的Host欄位的值是baidu.com,那麼應該是先處理過再發送的請求。
想到了其中可能會有編碼轉換,簡單看了一下IDN的RFC沒有找到有價值的資訊,於是開始找源碼,以idna為關鍵字在WebKit的源碼中找到相關函數 uidna_nameToUnicode ,在Chromium中也找到這個函數。
順著關鍵字找到icu標準的實現,其在官方網站上很清楚的給出了轉換的demo和瀏覽器normalize的demo,那麼使用其進行測試。
文章圖片來源:https://lylemi.github.io/2018/10/29/unicode-normalization/
前言引用來源:https://lylemi.github.io/2018/10/29/unicode-normalization/
-------------------
如果你認同我們每日分享的文章,請幫我們按個讚並且點擊追蹤「搶先看」,讓我們提供最新消息給您!您的分享及點讚,是我們持續推廣資訊安全最大的動力來源。
https://www.facebook.com/LonelyPoPo/