# File path traversal Lab3 一樣進入網站看會炸出什麼東西來。 ![image](https://hackmd.io/_uploads/Hkkoo161lg.png) 看起來就跟之前一樣,所以我直接隨便抓一個丟到 Repeater 中,並直接將路徑改為絕對路徑試試。 ![image](https://hackmd.io/_uploads/BkSg2kpJex.png) 看來是不行使用絕對路徑的,那試試我們最基本的 ../。 ![image](https://hackmd.io/_uploads/HktA2JpJle.png) 依舊不行,所以我們試試 ....//....// 的方式。 ![image](https://hackmd.io/_uploads/rJSZTy6Jxe.png) 顯然的我們成功了,也完成本題 LAB。 :::info - `../../` - 是標準的目錄上跳,代表「往上一層」兩次。 - `....//....//` - 看起來很奇怪,但其實系統會怎麼看呢? 作業系統處理路徑的時候,通常會把多餘的 / 視為一個 /。 但是多了這種奇怪的` ....` 時,系統就不會當成「上層目錄」的意思,而是把 `....` 當成一個正常目錄名稱(就像叫資料夾名字是四個點一樣),也就是說: - `../../` 指上一層 → 再上一層為正常目錄遍歷,但有時被防護攔住 - `....//....//`指目錄叫 `....` → 目錄叫 `....` →(可能被繞過),繞過一些不嚴謹的防護 那為什麼 `../../` 失敗,`....//....//` 成功? 很可能是因為WAF或過濾規則只檢查了正常格式的 `../`,結果你用了「變種」路徑沒擋下來。 ::: ### File path traversal Lab4 -> [write up](https://hackmd.io/@mio0813/BJkmcEE7le) ---