分类
安全
全部文章形式化理解零知识证明
如何严格证明一个协议“没有泄露秘密”?用模拟器刻画验证者获得的信息,让零知识证明的直觉落到数学定义上。
ReDos——低效的正则表达式
一次 CodeQL 告警引出的 ReDoS 问题:看正则表达式如何陷入大量回溯,以及哪些写法容易拖垮匹配性能。
格式化字符串漏洞
一个 printf,为什么能读写不该访问的内存?拆解参数读取方式,用实例解释格式化字符串漏洞的成因。
Terraria 破解
拆解 Terraria 人物存档的 AES 加密与二进制结构,用代码解密存档并修改背包物品。
Snort 和 Scapy
配置 Snort 并编写检测规则,再用 Scapy 构造和发送报文,验证规则能否触发告警。
过往归档9 篇
我的服务器成了 DDoS 的肉鸡!
VPS 上传流量突然暴涨,抓包后发现异常 DNS 请求。记录一次疑似反射放大攻击的排查,以及收紧防火墙的临时处置。
Zeek 使用
配置并部署 Zeek 网络监测工具,编写事件处理脚本,分析流量并生成日志。
DefendTheWeb
页面上看不见的密码,可能正躺在源码里。记录 DefendTheWeb 的部分解题过程,练习检查浏览器实际收到了什么、又信任了什么。
WeChall
一道题未必只有一种解法。记录 WeChall 部分关卡的分析过程,尝试把线索写成可验证的脚本,并比较不同语言的做法。
Try2Hack
Try2Hack 部分关卡题解,从网页源码、脚本和请求中寻找密码,记录绕过前端限制的思路。
Narnia
《OverTheWire》第 3 篇:分析 Narnia 首关的 C 程序,用缓冲区溢出覆盖变量,观察栈布局与小端字节序。
Crypton
《OverTheWire》第 2 篇:不知道密钥,还能读出密文吗?跟着 Krypton 关卡,利用字符频率与重复模式寻找古典密码留下的线索。
Bandit
《OverTheWire》第 1 篇:下一关的密码藏在服务器里,手边只有命令行。跟着 Bandit 逐关寻找线索,练习组合 Linux 工具解决具体问题。
Nazo
Nazo 网页解谜记录:从文字、图像和源码中寻找线索,借助编码、逻辑与一点脑洞逐关推理。
共 14 篇文章