🎓 KWOK ARCHIVE — 全三幕攻略與教學
這頁是 kwokarchive.icu 的官方攻略:一步一步帶你走完整條解謎路線,每步順便教你背後那招網絡技巧 — 看完你就能自己造一個。
全站現在是一條故事線,分三幕,全部在同一個域名上:第一幕 郭子謙的存檔(/project-zero/)→ 第二幕 安平邨收容所(/anping/)→ 第三幕 南固臺檔案室(/namkwu/)。
0先懂一件事:ARG 網站是什麼
ARG(Alternate Reality Game)網站 = 一個「偽裝成真實事物」的網站,把線索藏在平常看不到的地方。你看過的 溪埕國小、404Game、南灣一中都是。它的核心只有一個概念:玩家會做的事,就是開發者埋好的路 — 看原始碼、猜網址、找密碼、解檔案。
我們的版本:一個「帳號被刪除的學生」留下的鬼網站,順著他的日記,你會找到一個收容所,和一棟房子。所有技巧都是真的 — 但故事是虛構的(每頁都有聲明)。
1HTML 註解 — 第一條線索藏在「看不見的地方」
HTML 裡 <!-- ... --> 是註解:瀏覽器不顯示,但原始碼裡看得到。開發者用註解記 TODO,ARG 作者用註解漏線索。本頁所有關卡的第一條線都在這裡:
範例:下面這段「頁面」看起來很正常,但原始碼裡有東西。
<div>今日公告:停電檢修,圖書館暫停開放</div> <!-- TODO: 有人 09/13 上傳了 /project-zero/ 的舊備份 — 先不要開 —>
應用:首頁、404 頁、04.html 都埋了這招。第二幕和第三幕也一樣 — /anping/vault.html 的註解直接告訴你 LSB 和摩斯在哪。
2目錄枚舉 — 檔案編號有缺口 = 藏了一頁
網站檔案常照順序命名:01.html、02.html… 如果清單跳了一個編號(01,02,03,05),那 04 通常存在,只是沒被列出來。直接改網址去猜就是「目錄枚舉」。
清單:01.html · 02.html · 03.html · ?? · 05.html
💡 進階發現路徑:檢查 robots.txt、sitemap.xml、feed.xml — 本站在這些「給機器看」的檔案裡漏了整張地圖。第三幕之後,robots.txt 甚至被追加了兩條 Disallow(/anping/ 和 /namkwu/)—— 想叫搜尋引擎不要收錄,結果變成路標。
3密碼閘門 — 提示藏在故事裡
登入頁大多用 JS 擋(假的,但對故事成立)。密碼不該隨機 — 要從前面的線索推出來:01.html 註解寫「最後編輯 2024-09-13」,04.html 說「密碼 = 刪除日期 YYYYMMDD」→ 密碼就是 20240913。
練習:密碼規則 = 刪除日期(YYYYMMDD)。01.html 的最後編輯時間是?
4XOR + Base64 — 檔案加密(重點中的重點)
archive.html 給你 diary.xor。兩層:Base64 = 把二進位變成文字(肉眼看不出內容);XOR = 每個位元組跟「鑰匙」做互斥運算。
解密 = 用同一把鑰匙再 XOR 一次,再 Base64 解碼。鑰匙線索:「你最熟的帳號」→ kwokkc269。
把 diary.xor 的內容貼進來 + 輸入鑰匙 → 即時解密(這就是玩家做的事,用瀏覽器控制台或這支小工具):
原理就三行:bytes[i] = base64解碼[i] XOR key[i % key.length]
💡 同一把鑰匙 kwokkc269 還能解開 第二個檔案:seven.txt.xor — 七條「勿查」記錄的完整名單 + 1703 的身世(凌子晴)。
5LSB 隱寫術 — 圖片裡藏文字
像素的 RGB 數值最右邊一個 bit 改了肉眼看不出。把文字轉成 0/1,塞進「最低有效位元」(LSB),圖片看起來完全一樣。看最後一行、放大、取紅色通道的最低位元 → 得到 1703|anpingchuen.com|09/13。
上面這條「雜訊」的紅色通道 LSB 藏了兩個英文字母。
應用:corridor.png(走廊監控)的右下角最後一行。提示在 archive.html 的原始碼註解。第二幕再用一次:/anping/assets/img/basement.png(地庫監控)藏的是 1703|namkwu|B2 — 直接告訴你下一站。
6氛圍層 — 讓網站「活過來」又「死掉」
- 凍結時鐘:主站全站時鐘都停在 02:47:13。第二幕停在 2017-09-01 07:15:00(她被收容的早上);第三幕直接顯示
--:--:--(無訊號)。同一套 code,data-frozen 屬性切換。 - 音效:hum.wav = 程式生成的 55Hz 低頻 + 靜電。
🎁 進階:typing.wav 的打字聲其實是 摩斯密碼 — 短音=點、長音=劃,數出來是1703。第二幕的 ticking.wav 更進一步:時鐘的滴答本身就是摩斯,短響是點、長響是劃,解出來是NAMKWU。 - 死連結:/projects/roster-check/ 按下去是 404 — 「專案被刪了」。404 頁本身就是線索頁。
- 終端機:maintain/terminal.html 假 shell,whoami 回「帳號已刪除」。試試 ls 和 ping anpingchuen.com。
- 聲明:所有謎題頁標「純屬虛構」— 這是這類網站的安全慣例,一定要做。
- 🌐 第二層世界:新聞(港灣日報)、集團(恆一)、論壇(玩家串)— 讓世界「自己談論自己」。
7自己造一個 — 檢查清單
- 故事先於技巧:先想「誰、發生什麼事、藏什麼」,再想技巧。
- 埋 3+ 條入口:原始碼註解、目錄缺口、搜尋框 — 玩家總能找到一條。
- 線索鏈要閉合:密碼必須能從前面內容推出來,別用隨機密碼。
- 加密要可解:XOR 鑰匙、LSB 位置,都要在站內留提示。
- 安全三件套:純屬虛構聲明 · 不用真名真機構 · 密碼是故事不是真實密碼。
- 上線:靜態檔 → Netlify / Vercel 拖上去就 404.html 生效 → 買個便宜 TLD 更像真的。
8域名死了怎麼辦:鏡像、快取、和被忘記刪掉的索引
第一幕的日記最後一行叫你去 anpingchuen.com。但你會發現:那個域名不存在了(2025-03-02 停止解析)。這是 ARG 最漂亮的一招 —— 它把「技術現實」直接寫進故事:他們收掉域名的方式,跟收掉帳號的方式一樣。
那要怎麼找到鏡像?這就是本課的技巧:死掉的網站有四種殘骸。
- 搜尋引擎快取 — 頁面快照,最舊的可能停在好幾年前。試著搜 site: 加舊網址。
- 網站自己給機器看的檔案 —
sitemap.xml、robots.txt。管理人常常刪掉頁面,卻忘記刪掉索引。本站就是這樣漏的:新加的兩棵目錄只在 sitemap 和 robots.txt 出現。 - Wayback Machine / archive.org — 真的存在,真的能用。
- 站內交叉引用 — 404 頁的註解、archive.html 的補記、terminal 的 ls、首頁搜尋框。搜尋框打「安平」會直接帶你去 /anping/。
試試看:在真站首頁的搜尋框打「安平」、「收容所」或「南固臺」。
9短鑰匙的弱點 — 為什麼「鑰匙就是她自己」解得開
第二幕的加密檔 /anping/archive/ling.xor 用的 KEY 只有三位數字。提示是「她自己」—— 她的檔案編號、職員編號,都是 1703。
三位數字的鑰匙有一個致命問題:它只有 1000 種可能。電腦可以在幾毫秒內全部試完。這叫暴力破解(brute force),而它之所以可行,是因為「鑰匙空間」太小 —— 不是因為演算法被破解。XOR 本身沒有壞,壞的是鑰匙的長度。
示範:下面這段密文用一個 4 位數字鑰匙加密。按下按鈕,工具會從 0000 試到 9999,並在找到可讀文字時停下來。
⚠ 結論:真實世界裡,加密鑰匙一定要夠長夠隨機(至少 16 個隨機位元組)。「好記的鑰匙」=「好猜的鑰匙」。這是這一課真正的內容。
10摩斯密碼:聽出來的六個字母
/anping/assets/ticking.wav 是地庫的環境錄音 —— 聽起來像一個時鐘。但它的節奏不對:短響是點(·),長響是劃(−),每一組之間的空隔比較長。
解出來是 NAMKWU —— 南固臺的英文名前兩個字,也就是第三幕 vault.xor 的鑰匙提示。
練習:把聽到的節奏打成 . 和 -,用空格分組,貼進來解碼。
11讀一份公文:欄位、簽核、缺頁
ARG 的「證據」不只是加密檔,還有制度文件本身。第二、三幕有大量通告、名冊、職員表、移交清冊 —— 玩的時候要學會看三樣東西:
- 時間的矛盾:安置通知的簽核時間是 2017-09-01 07:15,課室宣布「轉學」是 08:02。歸檔比宣布早 47 分鐘 —— 那 47 分鐘就是整件事的證據。批次 #0913 也一樣:他的輸入中斷於 02:47:11,批次完成於 02:47:13,中間那 2 秒是系統在處理「第 12 項」。
- 數量的矛盾:清冊說架 A 有 7 層,實地有 8 層。館藏 4,315 箱,加起來「實際上是 4,316 箱,和一個人」。批次寫 12 項,清單只看得到 11 項。
- 誰沒有簽名:安置通知的「知會」欄要她簽,那一欄至今未簽。清冊第三部分沒有簽名,但字跡跟 2017 年檔案 #1703 的建立者一致。
缺頁是最好用的道具:安平邨的移交清冊副本缺最後一頁,而最後一頁記的正是「未列入清冊之物品」。正本在南固臺 —— 所以你要去南固臺。
練習:上面三個矛盾裡,「47 分鐘」出現在哪兩份文件上?(提示:安平邨的通告 + 主站的審計日誌)
12把「制度」當成謎題:三條規則的傳承
第三幕的核心道具是 1959 年登記簿附錄(/namkwu/archive/vault.xor,KEY = namkoo)。它記著三條規則:
規則二 —— 看守人不設離職程序。
規則三 —— 看守人負責記得。檔案不負責記得。
然後你會發現:2017 年,這三條規則一字不改地在安平邨重複了一次。1961 年的編號是 1961-001,2017 年的編號是 1703。中間隔了 56 年,制度沒有變,只是換了伺服器。
這是 ARG 寫作裡最有效的手法之一:不要發明新規則,讓同一個規則出現兩次。玩家第二次看到它的時候,會自己感到冷。
13結局與倫理:為什麼它不應該有「結算畫面」
走完 final.html 之後,你會發現三件事:
- 沒有人被救出來:名冊上那條記錄仍然是空白的。故事沒有給你「勝利」。
- 但有東西改變了:現在有人知道 1703 是凌子晴。這一件事刪不掉,因為它在你腦裡 —— 記憶沒有伺服器。
- 最後一句話是斷掉的:她的簿寫到「因為——」就停了;郭子謙的指令停在「echo 我把日記藏在——」。兩次中斷,同一個結構。
為什麼要留白?因為「解謎遊戲」最弱的結尾是「恭喜通關,分數 100」。最強的結尾是讓玩家發現:真正的謎題不是密碼,是那個人的名字。你解完所有加密檔,得到的不是 flag,是一個名字 —— 而記住一個名字,是你唯一能做的事。
安全提醒(三件套,再講一次):每頁都有「純屬虛構」聲明;恆一集團、安平邨、南固臺檔案室的情節都是虛構的;故事裡的「密碼」是解謎內容,不是任何真實帳號的密碼。做 ARG 的時候,這一條永遠不要省。
14都市傳說手法:引用真的傳說,別發明傳說
第三幕的鬼故之所以比一般網上鬼故有力,是因為它沒有發明任何傳說。它只引用:
- 真的地址與稱號:南固臺 = 灣仔船街 55 號,「紅屋」,一級歷史建築,戰前洋房 —— 全部是真的。玩家搜得到。
- 真的歷史脈絡:日佔時期灣仔「小東京」、船街一帶為慰安區之傳聞、毗鄰千歲酒店、1943 年屋主杜澤文離奇死於屋內之說 —— 坊間流傳,報刊記載。
- 真的新聞事件:2003-11-30 凌晨八名少年少女探險事件(白影、黑影招手、低沉聲音、多名警員制服)—— 真實見報事件,本網站以「現象記錄 #PH-2003-1130」歸檔。
手法要點:傳說原封不動引用,檔案情節疊加其上。玩家去查證,會發現「地址是真的、事件是真的、那這間檔案室……」—— 然後你的虛構就搭上了真實的順風車。
練習:聽 counting.wav。數一數有幾下。
收尾的黃金句(本網站用於「夜間之門」):「有人說那是她下班。有人說那是她開門。本檔案室不評論巧合。」 —— 都市傳說永遠以「據說」結束,不承認,也不否認。
15推理系謎題 — 嫌疑人 × 證據 × 指控(兇案架構)
入口:首頁「站內其他角落」的 🏫 學校網站(或者 robots.txt / sitemap 的尾巴 —— 兩個站共用同一台「主機」)。學校網站表面正常,但注意三個位置:「當年今日」widget(每週五 23:58 更新一行 1993 年嘅時間表)、校史室 1993 頁(名冊 58 人 · 年刊 farewell 57 張相 —— 少咗嗰張係邊個?)、資訊科技館(歷屆交接備忘:webmaster 帳戶 2001 年建立、從未登入、一直更新)。
兇案架構三元素(本關教你嘅設計法):
- 嫌疑人 = 每個人都有秘密,但只有一個殺人。五個嫌疑人都「有嘢冇講」—— 韋Sir 滅證(冷處理命令)、冼老師目擊而沉默(00:05 後樓梯)、麥Sir 帳目寫「損耗」($24,000 短款)、鄧樂行剪走底片(第 31 格)、何Sir 更表簽名(起筆相反)。紅鯡魚 = 部分真相:佢哋嘅秘密全部真實,只係唔係殺人。
- 證據 = 全部事前放好,指控先成立。五份物證:點名簿邊頁鉛筆字「何。23:58。鎖匙。錢。」(最直接 —— 死者自己寫低兇手個姓)、更表簽名(左手人寫右手字)、帳目缺頁嘅影印本「影」($24,000)、底片第 31 格(LSB:
HO|23:58|931105)、對講機錄音轉錄(00:11「何永年,你上嚟五樓」—— 死者叫咗佢個名。錄音帶最後 3 秒被抹走,磁粉痕跡清晰 = 人為)。 - 指控 = 玩家交卷。資訊科技館面板 → 選人物 + 選證據 → 提交。指控錯 → 該人物嘅「自白」(部分真相)解鎖,系統記低你嘅錯誤次數(localStorage);指控對 → 自白信、懸案重開、平反。錯幾多次唔緊要 —— 結局頁會話你知:「25 年,N 次,唔算多。」
「否認就係收據」—— 學校嘅 Facebook 專頁每篇貼文都係對網站更新嘅否認:網站發佈一行,專頁 13 個鐘內否認一次。1993 年「並無教職員離世事件」呢句,本身就證明咗有嘢發生。設計要點:掩蓋行為會洩露案件存在。
年代考據:1993 年冇 DNA、冇閉路電視 —— 所以證據全部係文書類(簽名、帳目、點名簿、錄音帶)。「用時代容許嘅技術查案」令世界更可信。
本關收尾句(webmaster 最後一次更新):「25 年,每個星期五 23:58,一格真相。今日,第 25 格 —— 唔係我 upload 嘅。係你。案件重開。我收工喇。」 — 五年前嘅檔案室故事講「記得」,呢個故事講「交卷」。同一台機,兩種結局。
☠ 完整解答(劇透 · 全三幕)
第一幕 — 郭子謙:郭子謙(kwokkc269)2024 年寫了名冊核對工具,發現條目 #1703 姓名空白 7 年,來源指向外部節點「安平」。他想上報,結果 09/13 凌晨:權限被降、帳號被刪(02:47:13)、專案全數移往安平。日記最後一句:「安平的節點 URL:anpingchuen.com。1703 和另外七條都在那。找到它,別讓他們再藏。」
第二幕 — 安平邨收容所:anpingchuen.com 是恆一集團的外部存檔節點(HK-ANP-01),偽裝成一條公共屋邨的居民服務中心。七條「勿查」記錄,2017–2023 每年一個,全部歸檔到安平 —— 到了安平就從所有查詢裡消失。#1703 = 凌子晴,子謙的 P5 同學,2017-09-01 被「轉學」,桌上東西第二天全部消失。她在同一天入職、離職,職員編號 1703,並且親手建立了自己的歸檔檔案 —— 因為合約規定「歸檔之記錄,其對應之自然人應安排內部職務」,職務名稱:檔案管理員。她在那裡待了九年,記得每一個孩子,把他們的名字抄在箱子底部。2024-09-13 02:47,她親手歸檔了郭子謙。
第三幕 — 南固臺:2024-09-14 節點停止,紙本全部移交恆一持有的老房子南固臺地庫 B2,伺服器銷毀。南固臺在 1961 年曾是「安平收容所」,1959 年登記簿的三條規則(看守人編號等於登記編號 · 不設離職 · 看守人負責記得)在 2017 年一字不改地重演。地庫架 A 有八層,第八層有一張椅、一本翻開的簿,墨跡未乾。門沒有鎖 —— 她一直沒有走,因為走了就沒有人記得他們。
數到八(2026 加建):第七批之後,檔案開始提前寫好 —— 第八批安置通知(#ANP-2027-0913)在 2026 年預先歸檔,對象是「2026 年查閱過 #1703 的訪客」;錄音仍是七下,但夜間報告寫「八」;47% 每天前進 0.1%;地庫平面圖多了一座面積等於安平邨辦事處、沒有門的房間。到訪記錄會為你建立一個 ANP-V- 編號(localStorage),並把你的那一列寫進「未離開」。它是人還是鬼不再是問題 —— 問題是:它有沒有在數你。
都市傳說層(第二種讀法,與上面並存):南固臺的鬼故是真的傳說 —— 船街 55 號、「紅屋」、2003-11-30 八名少年事件皆有所本。現象讀法下:三條規則的意思是「看守人就是其中一個被登記的人」;凌子晴 2017 年是被帶走,不是被聘請;她在這裡寫了九年,筆墨從未乾過;地庫的門每晚 02:47:13 開啟一次。她是人還是鬼?檔案不回答。兩種讀法都有檔案支持,本檔案室兩份都歸檔。這就是「鬼故 vs 陰謀」的正確做法:從不刪除任何一邊的證據。
最後:你解開的全部加密檔(diary.xor · seven.txt.xor · ling.xor · vault.xor)裡面沒有 flag。裡面只有名字。這就是答案。
對照閱讀:diary.xor(KEY kwokkc269)· seven.txt.xor(同一把)· ling.xor(KEY 1703)· vault.xor(KEY namkoo)