技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2023 iThome 鐵人賽
DAY
23
0
Security
Natas 網頁安全:從入門到放棄
系列 第
23
篇
Day 0x17 Natas Level 21 → Level 22
15th鐵人賽
web security
natas
CHA
團隊
好想放假大學
2023-10-08 19:19:28
236 瀏覽
分享至
Natas Level 21 → Level 22
Info
Username:
natas22
Password: 從上關獲取
URL:
http://natas22.natas.labs.overthewire.org
Walkthrough
存取網頁後使用帳號和上關獲取的密碼登入,沒有輸入框或按鈕等互動元件
點擊
View sourcecode
超連結查看兩個網頁的後端 PHP 程式碼
分析程式碼邏輯後畫成流程圖如下,當 GET 的 URL 中帶有
revelio
時,檢查 SESSION 是否存在、SESSION 中是否有
admin
和
admin == 1
,如果不成立則重導向到網頁根目錄
/
,但下方只檢查
revelio
是否存在
使用 cURL 請求頁面獲得 Response,成功獲得下題的登入密碼
Note
網站開發者嘗試透過 redirect,阻止非 admin 權限的使用者瀏覽網頁,但後續沒有正確地終止程式,導致可以通過第二次不安全的驗證,並忽略 redirect 以獲得敏感資料
除了 cURL 以外,也可以使用 Burp Suite 的
Proxy
或
Repeater
、自行撰寫腳本等方式達成
可參考
Day 0x02 Natas Level 0 → Level 1
的方法,透過 Burp Suite 的
Proxy
攔截,找到對應的封包查看 Response
Summary
相關弱點:
CWE-698: Execution After Redirect (EAR)
弱點原因:
攻擊者可忽略重導向,並通過驗證獲得權限來查看敏感資訊
修補建議:
建議評估認證方式的安全性以決定是否更換,且重導向後應適當地終止程式,並立即更換密碼,以減少資訊洩漏的風險
Reference
Curl cheatsheet
Execution After Redirect (EAR) | OWASP Foundation
Authentication - OWASP Cheat Sheet Series
code2flow - online interactive code to flowchart converter
Carbon | Create and share beautiful images of your source code
留言
追蹤
檢舉
上一篇
Day 0x16 Natas Level 20 → Level 21
下一篇
Day 0x18 Natas Level 22 → Level 23
系列文
Natas 網頁安全:從入門到放棄
共
35
篇
目錄
RSS系列文
訂閱系列文
9
人訂閱
31
Day 0x1F Natas Level 29 → Level 30
32
Day 0x20 Natas Level 30 → Level 31
33
Day 0x21 Natas Level 31 → Level 32
34
Day 0x22 Natas Level 32 → Level 33
35
Day 0x23 Natas Level 33 → Level 34
完整目錄
直播研討會
{{ item.subject }}
{{ item.channelVendor }}
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
1064
組
團體組數
40
組
累計文章數
22195
篇
完賽人數
600
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
vue.js
熱門問題
請問內網IP如何轉外網IP?
兩端防火牆使用IPSEC互PING之問題
如何寫公式才能利用excel 觸發一個數據時傳送一個訊息給 自已的line呢?有沒有可以用其它方式,來取代line notify 的方法,因為line 開始收費
Windows7升級Windows10後網路功能異常
python爬蟲 動態生成網頁104人力銀行
區域網路問題提問
新手學習編程,哪種編程語言好?
vmware 虛擬機(windows)裡顯示使用容量與實際檔案容量不符合
2台 Hyper-V 2008 R2 叢集主機(硬體規格相同), 如何加入一台新機? 謝謝.
OBS使用問題
熱門回答
請問內網IP如何轉外網IP?
Fortigate 50B 重置密碼
新手學習編程,哪種編程語言好?
區域網路問題提問
防火牆與DNS請教
熱門文章
每日一篇學習筆記 直到我做完專題 :( [Day31]
每日一篇學習筆記 直到我做完專題 :( [Day32]
每日一篇學習筆記 直到我做完專題 :( [Day33]
每日一篇學習筆記 直到我做完專題 :( [Day34]
隨時切換 WINDOWS 右鍵新舊版選單
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}