技術文章
技術問答
My Project
iT 徵才
聊天室
2026 鐵人賽
登入/註冊
文章
問答
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
628 瀏覽
分享至
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系列文
訂閱系列文
11
人訂閱
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鐵人賽
參賽組數
929
組
團體組數
32
組
累計文章數
15695
篇
完賽人數
219
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
17th鐵人賽
14th鐵人賽
12th鐵人賽
18th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
熱門問題
好奇問問各位大大當如果面對上層施壓時,工程師應當如何捍衛自己的工作優先考量權?上層威脅利誘時,又應當如何用溫和不失堅定的語氣讓上司明白自己為什麼這麼做
本地跑模型做評測,你們是怎麼給 context 長度設上限的?我們沒設,7.1 GB 的模型吃掉了 51 GB
網咖外掛
讓 AI Agent 唯讀連 PostgreSQL:BEGIN READ ONLY 擋不住 COPY TO PROGRAM,防線該設在交易還是角色?
新的IR ? 適合嗎 Dynamic Incident Response: A Framework for Security Teams
熱門回答
好奇問問各位大大當如果面對上層施壓時,工程師應當如何捍衛自己的工作優先考量權?上層威脅利誘時,又應當如何用溫和不失堅定的語氣讓上司明白自己為什麼這麼做
網咖外掛
本地跑模型做評測,你們是怎麼給 context 長度設上限的?我們沒設,7.1 GB 的模型吃掉了 51 GB
讓 AI Agent 唯讀連 PostgreSQL:BEGIN READ ONLY 擋不住 COPY TO PROGRAM,防線該設在交易還是角色?
熱門文章
Day 13|多開幾個 Subagent,會比較快嗎?
Claude code 新手篇 8.5: Auto mode — 你的預設模式到底在幫你擋什麼
Day1 | 【前言與觀念】為什麼選擇 n8n?認識 Low-Code 自動化的力量
Day 15|Skill 什麼時候該出場:用 description 劃清觸發範圍,再用 eval 驗證
Day1 學習RSA、ECC(橢圓曲線密碼學)的運作原理與應用場景(HTTPS、憑證)
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}