Hacktivate 计算机知识游戏

自己半路学编程,主要是 iOS 开发,但毕竟没有系统学过计算机,有很多科班人士的基本专业知识自己认知都很浅。有时候多了解一下也是好事。Paul 大神开发的 Hacktivate 这个 mac 版游戏,希望用游戏的方式教给玩家一点计算机和网络安全的知识,这个方向真是非常小众。我试玩了一下,总之如果是让我去看这类的书,估计是没什么兴趣,但通过这种游戏的方式,还挺有不断挑战的好奇心。

Hacktivate


ASCII 字符

ASCII 字符是计算机中最基础、最经典的字符编码标准。ASCII 全称是 American Standard Code for Information Interchange(美国信息交换标准代码)。它用 7 位二进制数(实际常用 8 位,最高位为 0)来表示 128 个字符(0~127),包括:

  • 控制字符(0~31):如换行、回车、制表符等
  • 可打印字符(32~126):空格、数字、大小写字母、标点符号
  • 删除符(127)

后来扩展出的 扩展 ASCII(0~255)可以表示更多符号,但标准 ASCII 只定义到 127。在 ASCII 表中,同一个字符通常会同时用三种进制:十进制 DEC 、十六进制 HEX、八进制 OCT 表示它的编号。


常见的数据识别经验

  • 数据以一个或两个等号 “=” 结尾的,一般都是 Base64 的数据
  • 数据用 Base64 解码后,是以 png 开头,就代表图像
  • 数据以 pk 开头的一般为 zip 压缩包
  • PNG 图片数据是包含一些固定的 chunk ,其中 IEND 就是一个标准的 chunk 名称,它表示图片数据到此就正式结束了。所以如果发现它后面还有数据,那可能就是额外藏的信息。如果图片数据是用十六进制表示的,那就要留意 49 45 4E 44 ,因为它们对应 ASCII:49 = I、45 = E、4E = N、44 = D
  • 图像有时候看不出有什么异样的,很可能是设置了肉眼无法分辨的相似像素颜色,这个时候用像素颜色随机化处理,就能看出图像里面的信息
  • 在浏览网页时,可以直接在 console 调试台,输入网页已有的定义好的 JS 方法,直接运行。都不需要依赖界面操作
  • 表面看起来是一个文件的,里面可能是将多个文件压缩成一个了


常见的密码 / 编码思路


Hacktivate

Hacktivate 通关 Flag 清单

  • challenge 01: FIRST BASE
  • challenge 02: WILD GOOSE CHASE(两次通过 Base64 解码)
  • challenge 03: BACKWARDS(将音频反转,并提高速度播放)
  • challenge 04: MUSIC(将音频视觉化)
  • challenge 05: COMMAND LINE COMMANDO (熟悉命令行 ls -a、cat)
  • challenge 06: LOST AND FOUND(熟悉命令行)
  • challenge 07: SHARK IN THE DARK (像素颜色随机映射)
  • challenge 08: Belfast (像素颜色随机映射,再 base64 解码)
  • challenge 09: YOU BEAT ME (在 console 直接调用 JS 方法)
  • challenge 10: SPARKLE (在 console 输入提示的方法名调用)

  • Cipher Salad: SPIN TO WIN (Caesar 凯撒加密 rotate text)
  • Patience Need: TIMEWASTER (查看网页源代码)
  • Tango Hotel Echo: WOOT (NATO 字母表)
  • Raseac Cipher: cryptoquest (将字符翻转,再用凯撒加密)
  • Pretty QR Patterns: SUPERFLUOUS (二维码 – 摩斯密码 – 二进制 – 文字)
  • Ghost Extraction: COMBO (extract files 从单个文件中检出多个文件)
  • Radio Silence: STATIC (听长短音,用摩斯密码解码)
  • Truth Table: IT’S ONLY LOGICAL (逻辑门)
  • Log Jam: UNCLOG (查看 console 调试台输出的每行首字母)
  • Family Reunion 2: SKIRLING (toHex 找到 PNG 的 IEND,然后 From Hex 转成 ASCII,再 Base64 解码成坐标)

  • Devious Ddoggos: persistence pays off (From Hex — 以==开头的字符串 — 翻转字符串 — from base64 — identify file type 为 jpg 图片 — 渲染图片)
  • Vision of a complex cipher: FUZZYWUZZY (Vigenère Cipher Decode 暴力解码)
  • Hide and seek: badminton(base64 解码后仔细在里面观察)
  • Magnify: SUPERSIZE (调试台运行 document.querySelector(‘p.text-center img’).style.width = ‘300px’; 可直接修改样式)
  • The 64 times table: BOOPLESNOOTLE (以 PK 开头的 ZIP 文件 — 解压得到 file.txt — 再 base64 — HEX十六进制 – Binary二进制 — Text)
  • Pixel reco: SLICED AND DICED(将图像中间空白去掉,拼起来看)
  • Hack: NO HACKS HERE (看懂题目意思后逐步调整即可)
  • A curious ASCII: ASCII TO THE MAX (ASCII 字符混合了三种进制表示,表里没有的字符代表空格)
  • You have got fail: Nemesis Biotech (从邮箱备份文件获取账号密码)
  • Checkmate: HACKALOT(有棋子的格子记作 1,空格记作 0,每行从左往右读取得到 8 位二进制数,再把每行转换成对应的 ASCII 字母)

后续 $14.99 美金解锁所有关卡,暂时就不付费了… 在破解这个游戏迷题的过程中,自己没少问 AI 大模型,一方面大模型的确挺强,推理破解这种简单的“黑客”任务轻而易举;另一方面当我问了几次后,Claude 和 GPT 都出现了中断和警告的情况,原因是识别到我使用 AI 完成一些网络安全的任务,需要验证身份或直接拒绝,于是我也不敢再问了。

可见 AI 大模型的能力在信息战中日益重要,在那个我们接触不到的领域,应该早已暗流涌动。大国之间互相提防自然也是顺理成章。

微信扫码打赏