技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2023 iThome 鐵人賽
DAY
7
0
Security
Natas 網頁安全:從入門到放棄
系列 第
7
篇
Day 0x07 Natas Level 5 → Level 6
15th鐵人賽
web security
natas
CHA
團隊
好想放假大學
2023-09-22 19:54:23
498 瀏覽
分享至
Natas Level 5 → Level 6
Info
Username:
natas6
Password: 從上關獲取
URL:
http://natas6.natas.labs.overthewire.org
Walkthrough
存取網頁後使用帳號和上關獲取的密碼登入,看到
Input secret
的輸入框
點擊超連結
View sourcecode
看到後端 PHP 程式碼,發現有引入外部檔案
includes/secret.inc
,並比較使用者輸入與
$secret
是否相等來顯示下關密碼
嘗試直接存取
includes/secret.inc
發現空白頁面
右鍵選擇
View Page Source
或
Ctrl + U
來檢視網頁原始碼,發現存在
$secret
變數
回到一開始的網頁將
$secret
值填進輸入框並按下
Submit Query
提交
成功獲得下題的登入密碼
Note
雖然 Natas 應該是基於練習的目的才直接給予後端程式碼,否則真實世界通常看不到,只能憑藉經驗來猜測邏輯,或有漏洞可以利用來撈出原始碼等
即使如果完全看不到後端程式碼,也可能透過漏洞利用或枚舉名稱等方式發現機敏檔案 (例如此關的
includes/secret.inc
),因此最終還是需要針對檔案進行相關保護措施
Summary
相關弱點:
CWE-541: Inclusion of Sensitive Information in an Include File
弱點原因:
網站後端 PHP 引入的檔案可直接存取,且其中包含認證資訊
修補建議:
保護檔案不被直接存取,或者不要將敏感資訊寫進引入的檔案中,並建議立即更換密碼,以減少資訊洩漏的風險
Reference
include()
留言
追蹤
檢舉
上一篇
Day 0x06 Natas Level 4 → Level 5
下一篇
Day 0x08 Natas Level 6 → Level 7
系列文
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
組
累計文章數
22201
篇
完賽人數
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
熱門問題
teams 未完整轉移 skype 聯絡人
雲端 ERP 評估
信箱重覆寄信
請問有推薦初學者使用的 GUI 應用程式開發工具嗎?
遠端連線終端機
【Python】
TEAMS授權帳號問題和連線方式
請問有比樂詞網更好的網絡術語詞典嗎?
Line官方帳號『免費通話』圖文功能連結問題
Outlook信箱畫面閃爍
熱門回答
請問有推薦初學者使用的 GUI 應用程式開發工具嗎?
雲端 ERP 評估
信箱重覆寄信
Wifi cert 証書認証問題
"已解決"USB印表機轉COM
熱門文章
如何將 SKYPE 轉移到 Teams
Visual Studio Community 2022 建立用 C++ 呼叫 EXE 的安裝檔 && Pyinstaller 打包外部文件 (INI)
基於WebGL和Three.js構建高性能虛擬試穿系統:技術實現與挑戰
JAVA 入門筆記 - 2 - 環境建置與開發準備
在Ubuntu系統上架設Sql Server的Redmine-1筆記
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}