iT邦幫忙

2026 iThome 鐵人賽

DAY 0
0
Security

從 Linux 到 Pwn:30 天學習資安攻防系列 第 12 篇

Day 11|使用絕對路徑尋找隱藏的 Flag

  • 分享至 

  • xImage
  •  

前言
前一天學習了如何透過 cat /flag
直接讀取位於根目錄的 Flag。
不過在真實環境中,目標檔案通常不會剛好放在容易找到的位置。
今天的 Challenge 則將 Flag 放在某個特殊目錄中,而且禁止使用 cd
因此無法透過切換目錄後再讀取檔案。
這也讓我開始體會到 Absolute Path(絕對路徑)的重要性。


一、題目重點

題目:more catting practice
題目提到I will put the flag in some crazy directory.

代表 Flag 不會放在/flag
而是被放到某個較深層的目錄中。
此外還有一個限制I will not allow you to change directories with cd.

也就是說 cd 無法使用。
因此不能依靠cd某個目錄cat flag
這種方式取得 Flag。


二、為什麼不能用相對路徑?

假設 Flag 位於 /tmp/abc/def/flag
如果能夠切換目錄 cd /tmp/abc/def cat flag
就能利用相對路徑讀取。
但這次 Challenge 禁止使用 cd
因此必須直接指定完整位置。
例如 cat /tmp/abc/def/flag
這就是 Absolute Path 的應用。


三、Absolute Path 的優勢

Absolute Path(絕對路徑)具有一個重要特性不受目前工作目錄影響。

例如 cat /tmp/abc/def/flag
無論目前位於/ 或 /home/hacker
甚至 /var 結果都相同。
因此在無法切換目錄的情況下,Absolute Path 是最可靠的方式。


四、實際操作

這次 Challenge 啟動後,系統會提示 Flag 的實際位置。
https://ithelp.ithome.com.tw/upload/images/20260926/20183180tFOtZ8FWav.png
可以看到系統提示位置在 /usr/libexec/dpkg/flag
因此輸入 cat 加上位置 /usr/libexec/dpkg/flag
https://ithelp.ithome.com.tw/upload/images/20260926/20183180U8NT9wObIH.png
即可讀取檔案內容。
成功取得 Flag。


五、為什麼這題重要?

這題表面上只是使用 cat 讀取檔案。
但實際上是在訓練路徑定位能力
在 Linux 中

  • 程式
  • 設定檔
  • Log 檔
  • 系統資源
    幾乎都有固定位置。
    因此能夠正確理解路徑並透過 Absolute Path 存取檔案,是非常重要的基礎能力。

六、今天的心得

今天的 Challenge 雖然仍然使用 cat,但和前兩天相比更有實戰感。
過去的 Flag 都在容易找到的位置,而今天則必須依靠完整路徑才能取得目標檔案。
此外,由於無法使用 cd,也讓我更明顯感受到 Absolute Path 的優勢。
只要知道檔案位置,就不需要在意目前工作目錄在哪裡。
我認為這個概念不只是 Linux 基礎操作的重要內容,在未來學習系統管理、Reverse Engineering 以及 Pwn 時也一定會經常使用到。


上一篇
Day 10|使用絕對路徑讀取檔案:cat /flag
下一篇
Day 12|使用 grep 在大量資料中搜尋 Flag
系列文
從 Linux 到 Pwn:30 天學習資安攻防 共 15 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言