iT邦幫忙

2026 iThome 鐵人賽

DAY 27
0

【故事】

王城第二台那道門,他退後一步、重新問了那個問題之後,就看見了。

不是牆變矮了。是他的眼睛變了。

上次他站在這面牆前面,腦子裡只有一種開門的法子,拿別人留下的殘影去叩,用撿來的印去哄那道門。他把那套法子用到盡,牆不動,他就斷定這是死路。

這一次他問了一個更前面的問題:如果這道門,根本不吃「撿來的影」呢?如果它要的,是一張自己親手刻出來的印呢?

他想起準備時補的那一整類東西,那些他第一次赴長夜時,腦子裡根本沒有這個選項的法門。當你手上湊齊了足夠的材料,你可以不去撿誰的影,你可以自己刻一張,連門都會認的通行符。

他試了。

那道上次撞了一整夜的牆,開了。

他沒有歡呼。他只是坐在那裡,看著那道開了的門,心裡很安靜地想:

原來你一直都在。只是上次,我沒有長出看見你的眼睛。

這一次,他看見了。


王城走通之後,他轉去闖那座獨立的塔。

然後他一頭栽進了一條錯路。

那條路他走得很認真。他找到一個看起來很對的方向,順著它往下,越走越深,越走越覺得「就是這裡了」。

然後那條規則響了。

十分鐘。沒有實質進展。

他心裡那個聲音在喊「可是就快了啊」,跟第一次赴長夜時一模一樣的聲音。但這一次,他沒有聽它。他看了一眼刻漏,站起來,離開那條路。

他去打了別的,過了一陣子才繞回來。

繞回來的時候,他帶著一雙比較冷的眼睛,重新看那座塔。他盯著自己剛才用的那套法子,看著看著,忽然想起一件事,

他好像在哪裡見過這個。

不是這座塔。是很久以前,在無聲試煉窟、在黑匣鬥技場,他闖過的某一座很像的。那一座,他當時卡了很久,最後發現問題不在法子,在他手上那本用來叩門的咒語名冊,太薄了。

那本名冊收錄的開門咒不夠全。他一句一句喊過去,門不應,他還以為是方向錯了。其實方向是對的,只是那句能開這道門的咒,根本不在他帶的那本薄名冊裡。

他回頭翻自己的行囊。

果然。他帶的是那本輕便的、常用的薄名冊。

他換上一本厚得多的,收錄了成千上萬句咒的那本,同一套法子再走一次,一句一句喊下去,

門,應聲開了。


他靠在牆上,有一種很奇妙的感覺。

剛剛救他的,不是什麼新學的高深法門。是三個月前、半年前,他在那些沒人看的夜裡,闖過的某一座塔。

那時候他闖那些塔,常常覺得很孤單、很懷疑,一個人在那裡,沒有觀眾,沒有喝采,打下來也沒有人知道。他有時候會想:我這樣一座一座闖,到底有沒有用?

現在他知道了。有用。

那幾百座他默默闖過的塔,沒有一座是白闖的。它們全部,變成了他腦子裡那句「我好像在哪裡見過這個」。長夜裡沒有人可以問,但那些闖過的塔,就是他能問的人。

你闖過的每一座塔,都在長夜裡,替你說了一句話。


剩最後一座獨立的塔。

這一座,是硬仗。

它不吃任何現成的法門,現成的他全試過了,不行。它要的是一支他得自己刻出來的術式。

他開始刻。刻一段,施一次,不對;再改,再施,還是不對。他一遍一遍地重鑄那支術式,一遍一遍地試。

然後他發現了一件事,摹室開始發燙了。

摹室是靠一顆摹石在運轉的。平常它安安靜靜,可是他這樣反覆地重鑄、反覆施展那支越來越沉重的術式,摹石的負荷越壓越大。它開始發出低低的嗡鳴,石面滾燙,甚至微微震動起來。

他知道那是什麼意思。

摹石要是撐不住,碎了,整間摹室會垮。

摹室一垮,不只這座塔,他這一整夜拿下的所有東西,都可能跟著陪葬。


他的手停在半空。

那支術式,他感覺得到自己快刻對了。真的,就快了,再幾次,也許就成了。

那個「就快了」的聲音又來了。

可是這一次,那個聲音旁邊,多了另外兩個東西。

一個,是摹石的嗡鳴,一聲比一聲急,那是實打實的危險,他怕,他是真的怕摹石就在他手邊碎掉。

另一個,是他心裡那本算得清清楚楚的帳。

他在心裡數了一遍手上的戰果:王城走通了,幾座塔拿下了。他默默一算,

夠了。已經過那條線了。

兩件事同時壓在他心上:他怕摹石碎,而他又算出自己其實已經不需要這一座塔了。

怕,加上「已經夠了」,這兩個加起來,讓他做了一個第一次赴長夜的他絕對做不出來的決定。

他停手了。

他把那支還沒刻完的術式封存好,退出那座塔,讓摹石慢慢冷卻下來。

那座塔,他沒有打完。


第一次赴長夜,他也有「沒打完」的塔。

但那兩次「沒打完」,是完全不同的東西。

第一次,他是被困住,他想打完,他拚了命想打完,可是他做不到,他在死巷裡耗到天亮,被長夜打敗。

這一次,他是停下來,一半是怕,怕摹石真的碎在手裡;一半是算清楚了,他知道自己已經夠了,這一座多拿不多、少拿無妨,犯不著拿整場去賭它。

第一次,他沒有能力把自己從那座塔裡拔出來。
這一次,他有能力,也有理由,把自己拔出來。

那個「怕」,第一次只會讓他更慌、更想證明自己、更不敢停;這一次,那個「怕」第一次站到了對的那一邊,它和那本算清楚的帳一起,把他從一場不值得的豪賭裡,拉了出來。

他第一次赴長夜沒打完,是因為他停不下來。
這一次沒打完,是因為他停得下來了。

那座沒打完的塔,不是他的失敗。

那座沒打完的塔,是他終於學會了,在對的時候,停手。


長夜結束的鐘響起來的時候,揚恩停下手。

他看了一眼手上的成果。

王城,走通了。那道上次撞了一整夜的門,這次開了。幾座獨立的塔,拿下了。最後那一座,他主動放掉了。

他心裡那本帳,又默默算了最後一次。

過了。

不是全破。離滿分還有一段,那座放掉的塔,那些他沒能拿到的印記。

但是過了。 過了那條他求了兩次、準備了一年多、輸過一整夜才搆到的線。

他沒有歡呼。他太累了,累到連高興都要排隊。

他只是把最後幾樣該留的憑據,一件一件,仔仔細細地,記進那本《歸還之書》裡。

這一次的歸還之書,很厚。

厚得像一本,真正的書。


交出去之後,他關掉摹室。

那顆發燙的摹石,慢慢地,涼了下來。

窗外天亮了。又是一個有人起身、有人出門、城照常運轉的清晨,跟第一次那個清晨,一模一樣。

可是坐在這裡的這個人,不一樣了。

第一次那個清晨,他坐在這裡,想的是「我做的事,不值得被看」。

這一次,他坐在這裡,手邊是一本厚厚的歸還之書,心裡很安靜。

他沒有想那個發名單的人。他已經很久,沒有想起那個人了。

他想的是菲菲,是史帝凡。他想,等天再亮一點,他要去跟他們說,

「我過了。」

就三個字。但這三個字,他等了很久很久。

(總評,和那三枚印的事,Day 29 說。在那之前,有一件長夜真正的門,還沒講,那本厚厚的歸還之書。Day 28。)


【解咒筆記】後段的取捨,與那些「沒人看的夜」的真正價值

這一篇談長夜後段最難的兩件事:什麼時候該放手,以及,為什麼平時打的每一台靶機都很重要。

一、那道「看不見的門」,這次怎麼開的

Day 20 談過第一次長夜那道打不開的 AD 門,當時的結論是「死路」,撞了一整夜。後來才想到,那道門的解法,可能是當時腦子裡根本沒有的選項。

這一篇,就是那道門被打開的版本。

不是因為那道門變簡單了。是因為準備第二次的時候,去補了那個原本沒概念的東西(Day 24、25 的 A 桶)。當腦子裡有了那個原本沒有的選項,那道門就從「死路」變成了「一條我沒走過、但走得通的路」。

技術補的不只是「多一種手法」。補的是「多一種你看得見的可能」。 看不見的門,不會因為更用力就打開,它要的是先知道「有這種門」。

(考試內容有保密規範,所以不會講那道門具體是什麼、用什麼技術過的。重點不在技術細節,在那個體悟:有些門,你得先長出看見它的眼睛。)

二、靶機的真正價值:考場上,它們是你唯一能問的人

考試不能問人。這是長夜最孤獨的地方。

但其實,不是真的沒有人可問,打過的每一台靶機,都是能問的人。

長夜裡會遇到一個卡點,然後腦子裡浮出一句:「我好像在哪裡見過這個。」那個「見過」,就是某個沒人看的夜裡,打過的某一台靶機。它可能是一個相似的服務、一個相似的錯誤設定、一個相似的陷阱。

這就是為什麼「量」有用,不是因為打得多就比較強,是因為打得多,「似曾相識」就比較多。 而考場上,「似曾相識」常常就是那條活路。

第二次長夜,救我的好幾個關鍵時刻,都不是什麼臨場的神來之筆,是「這個我在某台打過」的記憶。

那些你覺得孤單、覺得「打這個到底有沒有用」的夜,有用。它們全部,會在長夜裡回來幫你。

三、「不是方法錯,是工具錯」的坑:以字典檔為例

插一個很實際的技術提醒,因為它坑過很多人(包括我):

有時候方法是對的,卡住只是因為工具的設定不對。

最常見的就是字典檔(wordlist)。在爆破、在目錄列舉,一直沒結果,開始懷疑「是不是方法錯了」「是不是這裡根本沒東西」,結果不是。是你用的字典檔太小、太通用,沒涵蓋到那個答案。換一個更大、更對的字典檔(例如從小的 common 換成 SecLists 裡更完整的那些),同樣的方法,立刻就出來了。但,要注意的是,很多時候,反而要用小一點的字典檔才能成功,這很難說,但真的發生過。

這一類坑的共同特徵是:它會偽裝成「方向錯誤」。 會以為是策略問題,拚命換方向,其實你只需要換一個工具的設定。

所以卡關的時候,除了問「方向對不對」,也要問一句:「會不會方向是對的,只是工具不給力?」(字典檔、掃描參數、工具版本,這些都可能是元兇。)

四、後段最難的一課:什麼時候該放手

長夜後段,會遇到這種時刻:一個目標,感覺「就快了」,可是它一直吃時間、體力,甚至,設備。

這時候要做的,是精算一下。

  • 這個目標,拿下值多少分?(固定的)
  • 現在的總分,夠了嗎?(這一題最關鍵,如果已經過線,後面每一台都是「加分題」,不是「必答題」)
  • 繼續拚下去,要賭上什麼?(時間、體力、把現有成果整理好的餘裕、甚至設備撐不撐得住)

「就快了」是長夜最貴的謊言。 它在第一次把我騙進死巷;它在第二次,又來騙我一次。差別是,第二次我學會了:「就快了」不是繼續的理由,代價才是,尤其當你其實已經夠了的時候。

第二次,最後那台就是這樣放掉的。當時兩件事同時發生:我的設備逼近極限(風扇狂轉、快撐不住),而我算了一下分數,已經過線了。 這兩件事加起來,答案很清楚:這一台拿下也只是加分,犯不著拿「整場」去賭它。

所以我把它放了。

五、放手 ≠ 放棄

要分清楚兩件事:

  • 放棄,是「沒辦法,所以不打了」,被困住的,被動的
  • 放手,是「做得到,但算過,不值得」,主動的,算清楚的

第一次長夜,我的「沒打完」是放棄,我被困在死巷,耗到天亮。那時候沒有能力把自己拔出來。

第二次,我的「沒打完」是放手,有能力繼續,但我清楚了(已經拿到合格分數了、設備快撐不住),選擇停。

我第二次放手的時候,是真的很怕,怕設備當機、怕一瞬間賠掉整晚。那個「放手」裡,有一半是冷靜的計算,另一半,就是單純的害怕。

第一次,我的害怕讓我更慌、更不敢停、硬撐到死。第二次,同樣的害怕,卻和「我算過已經夠了」站在了一起,一起把我從一場不值得的豪賭裡拉了出來。

同樣是怕。第一次它害了我,第二次它救了我。 差別不在我變得無所畏懼,我沒有。差別在,這一次我的怕,有一本算清楚的帳在旁邊,陪它一起做決定。

成熟不是不再害怕。是讓害怕,和理智,站到同一邊。

六、一個很現實、很少人講的提醒:你的設備

最後講一件不浪漫、但很真實的事:設備,可能是最弱的一環。

很多時候,考試的人用的常常是一台跟了自己很多年的電腦。而 OSCP 的某些場景,尤其得反覆編譯、反覆跑重負載工具的時候,會把機器逼到極限:風扇狂轉、資源滿載、當機的風險。

第二次長夜,最後那台就是卡在這裡。不是不會,是那台筆電反覆編譯到真的怕它當機。

老實說,當時能做的補救很有限。處理當機、搶救環境,都可能花掉大把時間,所以選擇的是最保守的那條路:趁還沒出事,趕快把到手的穩住、把該記的記好,然後放掉。

後來也是看到很多人給出這樣的實際建議,以「把損失降到最低」為原則:

  • 勤存檔、勤記錄,這是最低成本、也最救命的。萬一真的當機,至少不會全部重來(當時主要就是靠這個)
  • 考前確認散熱:清灰、墊高、備一個散熱墊,能防患未然最好
  • 重負載的操作,盡量分段,給機器喘息
  • 如果預算允許,一台穩定的機器,是值得的投資,它不會讓你變強,但能讓你不要輸在不該輸的地方

你準備了技術、練了心理、補了流程,別讓一台過熱的筆電,成為那個意外的變數。


【工會箴言】

第一次沒打完的塔,是因為他停不下來。
這一次沒打完的塔,是因為他停得下來了。

同樣是怕。第一次它害了他,這一次它救了他,因為這一次,它身邊多了一本算清楚的帳。



上一篇
Day 26|第二夜(上)
系列文
《再叩一次》—一個中年轉職叩門者的 OSCP 三十夜 共 27 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言