大家好!我是 Pete,也叫 Kybr,这是我为 DEF CON 30 徽章挑战赛写的解题报告。
今年的挑战赛主要围绕音乐和黑客流行文化展开,(我觉得)这使它比以往一些徽章挑战赛更容易上手。从周四早上开始发放徽章的那一刻起,一直到周日下午,我们终于完成了最后一个挑战,距离 DEF CON 结束仅剩四小时。在这期间,一大群黑客在现场和 Discord 上一起攻克徽章挑战。非常感谢 MKFactor 的 Mike、redactd 及其团队,他们打造了这款真正独一无二且漂亮的徽章,也感谢他们带来的无数小时的痛苦与折磨欢乐!
我们把挑战分成了 3 个部分:收集音符、收集朋友,以及最终线索。你可以在这里查看我们的文档:
https://dc30badge.fandom.com/wiki/DC30Badge_Wiki
我们的笔记在这里:
https://docs.google.com/spreadsheets/d/1MdZgv_O3ogv4JDS07iobh5rhoDYXCsF7QVExuG08txA/edit#gid=0
最后,如果你喜欢这类内容,欢迎加入我们的 Discord,一起迎接明年的挑战:
https://discord.com/channels/867438418212683796/867438418212683799
感谢阅读!
第一个挑战可以通过在主菜单中选择“Challenge”选项找到。我们会看到以下文字:
Collect the Measusres
Break the Silence
Continue the Journey
注意:Measures 一词的拼写错误是意外,与挑战无关。

这里指的是徽章面板上的音乐小节。DEF CON 有 9 种不同颜色的徽章类型,每种类型的面板上都有不同的图案。

收集全部 9 种徽章的照片后,我们发现其中 8 种有音乐,1 种(灰色 CFP 徽章)的字母拼写为 POWWYGBR
这就是我们按颜色排列其他 8 种徽章的关键:紫、橙、白、白、黄、绿、蓝、红。

按此顺序排列后,这些小节构成了《培尔·金特第一组曲》的开头。
在“Play”模式下演奏这些音符即可解锁挑战第 2 部分:
ANSWER: in Play mode, play these notes at any speed:
GEDCDE GEDCDE GEGAEA GEDC GEDCDE GEDCDEDE GEGAEA B G# F# E
注意:必须在默认的“4”八度下才能生效,如果你按左或右改变了八度,将无法解锁第 2 部分!
演奏完《培尔·金特组曲》后,徽章上的 Challenge 选项会显示消息 Call YИИEႱ,同时我们的键盘会播放拨号音而不是音符。“YИИEႱ”指的是 Tommy Tutone 的歌曲《867-5309 / Jenny》,因为 Jenny 被倒着写,所以我们应该倒着拨她的号码:903-5768。直接在徽章上拨打这个号码没有反应,大会的 Contests 区域设有实体电话,接下来的挑战需要使用这些电话。

在这些电话上拨打 903-5768,我们会得到关于 5 位失踪朋友的 5 条线索:
Alice - Was last seen shopping for a new water pipe
Bob - Little Bobby turn tables, dropped himself
Carol - Went to her favorite arcade
Dan - Greenwich manhattan
Eve - Cerebrum data link
消息还告诉我们,在接下来的挑战中,每个答案都是一个以 https://defcon.org/badge/30/ 开头的 URL。
因此,我们通过在该 URL 末尾添加内容来提交答案。如果答对了,我们会看到一个包含下一个挑战的新网页;如果答错了,只会得到标准的 404“未找到”错误。现在我们需要跟随 5 条线索,一条对应一位失踪的朋友。
YИИEႱ的消息说:“Alice was last seen shopping for a new water pipe”
这是我们最简单的问题,也让我们了解了挑战的格式。这里的“water pipe”简单地指水烟壶(hookah),我们通过在给定 URL 后面添加“hookah”找到了下一个挑战。
ANSWER: https://defcon.org/badge/30/hookah/
纯蓝色屏幕
hookah URL 显示一个纯蓝色屏幕,代码或网站流量中没有任何有趣的内容。结合名字“Alice”、水烟壶的暗示和蓝色,这个问题指的是《爱丽丝梦游仙境》中爱丽丝遇到一只抽水烟的毛毛虫的情节。我们在 URL 末尾添加“caterpillar”以找到下一个挑战。
ANSWER: https://defcon.org/badge/30/hookah/caterpillar
毛毛虫的图片
我们得到了一张来自《爱丽丝梦游仙境》的抽水烟毛毛虫的图片。下载图片并检查其元数据后,我们发现“OwnerName”属性的值很奇怪:9dFDfOi_-ss。

这是一个 YouTube 视频引用,因此我们访问 https://www.youtube.com/watch?v=9dFDfOi_-ss,得到了一段视频,视频中毛毛虫正在朗诵诗歌《How Doth the Little Crocodile》。
ANSWER: https://defcon.org/badge/30/hookah/caterpillar/howdoththelittlecrocodile
诗歌
我们得到了文本 When is a measure not for science? double the common form.
这指的是 Common Measure(常用格律),一种四行诗格律,在抑扬格四音步(每行四个音步)和抑扬格三音步(每行三个音步)之间交替。诗歌《How Doth the Little Crocodile》就是用这种格律写成的。这首诗有 8 行,数每行的音步得到 4,3,4,3,4,3,4,3,因此将这个格式加倍得到 8,6,8,6,8,6,8,6。由于 86868686 不是一个有效的 URL,我们拨打了 Contest 座机电话上的这个号码,然后获得了 Alice 的解锁代码(她现在出现在徽章的“Friends”菜单选项下!)
YИИEႱ的消息说:“Little Bobby turn tables, dropped himself”
这指的是 XKCD 漫画《Exploits of a Mom》(https://xkcd.com/327/),其中有一个孩子的名字包含破坏性的 SQL 注入逻辑。

ANSWER: https://defcon.org/badge/30/logic
说唱歌手“Logic”的图片
说唱歌手 Logic 以 National Suicide Prevention Lifeline(NSPL,国家自杀预防生命热线)的电话号码命名了他的热门单曲《1-800-273-8255》。https://en.wikipedia.org/wiki/1-800-273-8255_(song)
ANSWER: https://defcon.org/badge/30/logic/18002738255
关于生命热线
上一个链接把我们带到了关于 The Suicide & Crisis Lifeline(自杀与危机生命热线)的页面,从 2020 年开始,拨打 988 就能快速接通(类似于 911)。
https://en.wikipedia.org/wiki/988_Suicide_%26_Crisis_Lifeline
(顺便说一句:感谢挑战作者呼吁大家关注这一重要的工作和信息,尽管讨论它可能会让人不适)
ANSWER: https://defcon.org/badge/30/logic/18002738255/988
数字 8 上的地理藏宝
我们看到了显示在数字 8 上方的 Geocaching(地理藏宝)图标。把上一个挑战的答案 988 除以 8,得到 123。Geocaching 图标暗示 123 房间里藏有一个地理藏宝点。搜索 123 房间后,我们找到了一个带有二维码的 Geocaching 图标。

二维码给出的文字是“By the Numbers”。沿用前两个答案的主题,我们找到了 URL https://988lifeline.org/by-the-numbers/,其中提到生命热线已经接到了 23,044,100 通电话(截至撰写本文时)。
YИИEႱ的消息说 Carol“去了她最喜欢的街机厅”
这指的是剧集《Mr. Robot》(黑客军团),剧中 Carol 最喜欢的街机厅叫“Fun Society”。后来,剧中的主角们以这个名字为基础组建了一个名为“fsociety”的黑客行动主义团体。
ANSWER: https://defcon.org/badge/30/fsociety
Beastie Boys
我们得到了一张 Beastie Boys 乐队在其专辑《No Sleep Till Kawasaki》中的图片。延续《Mr. Robot》的主题,Fun Society 街机厅里有一款名为“Intergalactic Planetary”的街机游戏,它与 Beastie Boys 的著名歌曲《Intergalactic》的歌词同名。
ANSWER: https://defcon.org/badge/30/fsociety/intergalactic
Intergalactic
我们收到一个音频文件,依次播放《Night on Bald Mountain》(荒山之夜)和《Intergalactic》。下载并检查音频文件后,我们看到元数据中有一条注释:“v=N5aAu8CCQY0”。

这又是一个 YouTube 视频链接,指向 DEF CON 7 上关于电话飞客(phreaking)的演讲。
https://www.youtube.com/watch?v=N5aAu8CCQY0&ab_channel=DEFCONConference
查询 DEF CON 档案(https://defcon.org/html/defcon-7/defcon-7-pre.html#SpeakingSchedule)后,我们发现这场演讲是在 1999 年 7 月 9 日星期五下午 4:00 PST(即 GMT 时间晚上 11:00)进行的。将其转换为 Epoch 时间得到 931561200。
FINAL ANSWER: Call the number 931561200 on the contest phones to find Carol.


ANSWER: https://defcon.org/badge/30/01906967Unchained Melody
我们收到一个播放《Unchained Melody》(奔放的旋律)的音频文件。这首歌最著名的出场可能是 1990 年电影《Ghost》(人鬼情未了)中的“制陶”场景。电影名 Ghost、之前的提示“Greenwich, Manhattan”(《捉鬼敢死队》的设定地点),以及我们在寻找 Dan,这些线索都指向 Dan Aykroyd——在 1984 年电影《捉鬼敢死队》中饰演 Ray Stantz 的演员。
ANSWER: https://defcon.org/badge/30/01906967/aykroyd
Ghostbusters(捉鬼敢死队)
我们得到了一张 1984 年《捉鬼敢死队》的图片。你要给谁打电话?搜索捉鬼敢死队的电话号码,会得到他们目前的电话号码 212-897-1964。
https://www.facebook.com/Ghostbusters/photos/theyre-ready-to-answer-your-call-dial-212-897-1964-to-get-a-very-special-ghostbu/722572714463399
FINAL ANSWER: Call the number "2128971964" on the contest phones to find Dan.

YИИEႱ的消息说:“Cerebrum data link”
这是一个简单的谜语,指的是大脑的突触(synapse)。
ANSWER: https://defcon.org/badge/30/synapse
卫星的图片
我们得到一张在轨卫星的图片。下载并检查图片后,我们发现图片文件中嵌入了一个隐藏的 PCAP(网络流量捕获文件),提取并分析 PCAP 可以看到一次对 IP 地址 10.48.29.234 的 ping。

ANSWER: https://defcon.org/badge/30/synapse/10.48.29.234
NURV
你可以在背景的白板上看到缩写 NURV。这指的是 2001 年的电影《AntiTrust》(反托拉斯行动),NURV 是片中一个邪恶公司的名字。之前的两个答案也都指向《AntiTrust》,其中“synapse”是邪恶网络的名字,“10.48.29.234”是他们其中一颗卫星的 IP 地址。
http://mike.passwall.com/uselesstrivia/antitrust.html
ANSWER: https://defcon.org/badge/30/synapse/10.48.29.234/nurv
1 或 0
我们得到了文本 You're eiTher a one or a zero. Alive or dea9. 其中“T9”显然是从文本中突显出来的——T9 是一种手机文本输入技术,代表“Text on 9 keys”(9 键文本输入)。
https://en.wikipedia.org/wiki/T9_(predictive_text)
延续《AntiTrust》的主题,用 T9 输入“antitrust”会得到“268487878”。
FINAL ANSWER: Call the number "268487878" on the contest phones to find Eve.


- .-. . ...- --- .-. ... -.. .- - .,解码为 TREVORSDATE。Trevor 是黑客社区中深受爱戴的一员,不幸于 2017 年 9 月 23 日离开了我们。FINAL ANSWER: Call the number "923-2017" on the contest phones to find Trevor.
```json
FINAL ANSWER: howdoththelittlecrocodile 23044100 intergalactic aykroyd nurv Captain Bipto<br/><br/>
<a name="miss"></a>
如果我错过了比赛区域怎么办?没有电话机我还能做什么?
===
徽章破解 Discord 的其中一位成员成功对徽章上接受 6 个好友代码的软件进行了逆向工程,并且他们好心地将它发布到了网上:https://replit.com/@numinit/DC30Keygen?v=1
点击播放,然后输入:`bundle exec ruby main.rb <yourbadgeID>`
示例:`bundle exec ruby main.rb 3680247087`
如果你访问那个网站并输入你的徽章 ID(玩过 Peer Gynt 之后就能看到你的徽章 ID),它应该会输出那 6 个代码,你需要选择 Challenge 菜单选项,然后使用钢琴键拨号输入。一旦你解锁了全部 6 个好友,你的徽章就达到了“win”状态,之后就没有其他事情需要做了。尽情享受闪烁的灯光和跳舞的好友吧 :)
<br/><br/>
<a name="after"></a>
后记
===
如果你能读到这里,我想感谢你抽出时间阅读。希望你在此过程中学到了一些有趣的东西。而且我真心希望你看过 Trevor 的视频——如果你以前从未看过的话。
请允许我感性一下:赢得今年的徽章挑战赛让我感到无比震撼。这让我深有感触——许多年前,我偶然在网上看到一篇文章,结果发现那是过去某届 DEF CON 的徽章挑战赛 writeup。正是那篇 writeup 不仅激励我开始参加 DEF CON,还让我开始经常打 CTF,并尽可能多地参与像这样的挑战。仔细想来,它可能对我的人生和职业生涯产生了巨大的影响。而现在,我真的赢得了这场比赛,坐在这里,写着当初激励我的那类文章……我激动得说不出话来。
当然,归根结底,功劳属于徽章破解社区。解决这些挑战靠的是集体努力——没有我们之间的密切合作与团队协作,我们任何人都无法做到。这是一段愉快的经历。我期待明年与大家再次合作!
<br/>

<br/>

<br/>
如果你参加了颁奖典礼,并与我和大会上的其他人一起用徽章演奏音乐,我只想说:你们太棒了。

FINAL ANSWER: Call the number "86868686" on the contest phones to find Alice.

ANSWER:点与斜杠
页面只给了我们文本 ./ - ../,没有其他内容。在 UNIX 目录结构中,“./”代表当前目录,“../”代表上级目录。在我们当前的挑战 URL https://defcon.org/badge/30/logic/18002738255/988/23044100(它本身就是一个目录结构的引用)中,“./”指的是 23044100,“../”指的是 988。用 23044100 减去 988,得到 23043112。
FINAL ANSWER: Call the number "23043112" on the contest phones to find Bob.
