密码代码审计与CTF挑战:理论与实践深度解析

本文详细介绍了WCCA+CTF工作坊,聚焦密码代码审计的理论与实践,涵盖侧信道攻击、多方计算等关键技术,并解析CTF挑战赛的规则与获胜团队,适合安全研究人员和开发者深入阅读。

WCCA+CTF 信息页面

密码代码审计研讨会与夺旗赛(WCCA+CTF)是 EUROCRYPT 2024 的附属活动,于 2024 年 5 月 26 日在瑞士苏黎世联邦理工学院(ETH Zurich)举行(对于不熟悉 ISO-8601 格式的读者,日期为 2024 年 5 月 26 日)。
本页面包含研讨会的信息、日程和注册流程。此页面仅用于存档目的,并反映当时的状态。
更新 2024-11-05:更新此页面记录,包括 CTF 获胜者。

活动描述

密码学领域的快速发展带来了日益增长的复杂性,使得安全代码实现极具挑战性。这在快速变化的 Web3 世界中尤其成问题,因为前沿的密码方案被部署用于保护大量资金,同时也应用于隐私敏感应用和安全通信。在此背景下,不仅理解密码理论很重要,有效实现和审计密码代码也同样关键。

这一为期一天的研讨会,独特地位于理论和应用密码学的交叉点,旨在通过真实案例提供沉浸式的密码代码审计学习体验。它面向希望深化理解并提升安全密码代码审计技能的专业人士和研究人员。

形式

当天将以一系列资深专家的讲座开始,涵盖密码代码审计艺术的各个主题,从非常哲学的问题(密码代码审计的“为什么”和“如何”),到商业和组织考虑(如何在实践中进行代码审计,无论是作为承包商还是在组织内部),再到更技术性的内容(在哪里寻找以及如何识别密码代码中的漏洞,包括哈希函数、分组密码、随机性、零知识协议和多方计算方案)。讲座将丰富以我们公司为高知名度客户进行的过往密码审计案例研究。

下午,与会者将通过一个引人入胜的夺旗赛(CTF)挑战来测试所学知识。参与者将分成团队,努力识别组织者提供的存在缺陷的代码片段中的漏洞,并通过在线门户提交他们的发现。

活动将以简要讨论一些解决方案结束,获胜团队将在会议的余兴环节宣布并颁奖。

组织者和演讲者

  • Luca Dolfi:Kudelski Security 的安全工程师,专注于密码库和智能合约的安全代码审查。在过去两年中,他从事了许多加密钱包的安全代码审查,评估了多个 Web3 实体(如 crypto.com、Torus Labs 和 Aleph Zero)的阈值签名方案实现。他在苏黎世联邦理工学院获得计算机科学硕士学位,专注于信息安全;他在隐私保护技术方面的学术工作已发表在 USENIX Security Symposium 上。

  • Tommaso Gagliardoni:Kudelski Security 高级密码服务和量子安全计划的技术负责人。他在密码学、量子计算、安全和隐私领域发表了同行评审论文,并在 CRYPTO、EUROCRYPT、ASIACRYPT、DEF CON Demolabs 和 Black Hat Europe 等会议上发言。作为量子安全主题专家,他担任 PQCRYPTO 和 ACNS 等学术会议的程序委员会成员,并与世界经济论坛和官方机构在国际协议背景下合作。Tommaso 是区块链和 DeFi 技术专家,曾为 Binance、Coinbase 和 ZenGo 等客户执行密码代码审计。他还有隐私黑客行动主义、调查新闻和道德黑客的背景,曾在国际新闻节等场合发言,并设计了开源磁盘隐私工具 Shufflecake。

  • Adina Nedelcu:Kudelski Security 的安全工程师,专注于阈值签名方案和智能合约的密码代码审查。她获得雷恩第一大学博士学位和巴黎-萨克雷高等师范学院(MPRI)硕士学位。Adina 在 ESORICS、ACNS 和 PETS 等会议上发表过密码学论文,并且是 CSAW’22 的决赛选手之一。

  • Marco Macchetti:拥有超过 20 年各种应用密码学主题的经验,包括超过 30 项专利,专注于密码方案的硬件实现,尤其是 ECDSA 签名。他发现了针对 ECDSA 弱随机性的 Polynonce 攻击,并在 DEF CON 上共同介绍了关于真实世界 Polynonce 攻击的演讲。他曾为 AMIS 和 Coinbase 等客户执行密码代码审计。

  • Sylvain Pelissier:密码学专家,专注于硬件攻击和漏洞研究。Sylvain 从事过不同平台上密码实现的安全以及关键代码安全审计。他曾在 FDTC、CCC、Hardwear.io、Insomni’hack、NorthSec 和 SSTIC 等会议上发言,主题包括公钥和对称密钥漏洞、椭圆曲线和逆向工程。特别是,他逆向了一个广泛使用的文件加密解决方案,引入了针对 EdDSA 签名算法的第一个实用故障攻击,并发布了 CurveBall 漏洞的概念验证。他喜欢参与和组织 CTF。

研讨会日程

星期日,2024-05-26

  • 8:30 注册开始。
  • 9:00 Tommaso Gagliardoni:密码代码审计简介:为什么和如何。
  • 9:30 Adina Nedelcu:侧信道攻击和常见陷阱。
  • 10:00 Luca Dolfi:构建块中的漏洞。
  • 10:30 咖啡休息。
  • 11:00 Adina Nedelcu:迷失在翻译中:从论文到代码。
  • 11:30 Luca Dolfi:多方计算和阈值签名 1。
  • 12:00 Tommaso Gagliardoni:多方计算和阈值签名 2。
  • 12:30 午餐。
  • 13:30 CTF 注册和教程。请准时参加!
  • 14:00 CTF 门户开放,比赛开始。
  • 15:00 可选咖啡休息。
  • 17:00 当天结束,请离开房间。

星期一,2024-05-27

  • 14:00 CTF 门户关闭。

星期三,2024-05-29

  • 21:30(大约)在余兴环节宣布获胜者和奖项。

CTF(夺旗赛)

CTF(“夺旗”)是一种在黑客社区和活动中非常流行的竞赛类型。通常,人们以团队形式参与,目标是在给定时间内通过向交互门户提交正确的“标志”来解决尽可能多的挑战,团队得分通常在公共记分牌上实时更新。要输入到输入框中的标志通常是一个秘密字符串,只能通过解决给定挑战来找到,例如通过利用故意易受攻击的服务并窃取一些凭据,或通过黑客攻击挑战中指定的某个网站。所有这些易受攻击的服务和网站都是由 CTF 组织者设置的,唯一目的是被黑客攻击,但找到方法并不总是那么容易,这就是挑战的来源!有时挑战描述中会给出提示,有时不会,但当你看到标志时,你就会知道你已经找到了它。

出于包容性原因,并为新手提供温和的介绍,CTF 将以略微非标准的形式构建。

我们将在下午首先进行教程,帮助参与者注册并熟悉网络门户。

请注意,团队必须通过携带您的 Eurocrypt 徽章并在此时间段的 CTF 教程中注册您的用户名(以及可选的团队)来进行现场验证,使用我们将现场提供的注册代码。确保您的互联网连接正常工作。时间执行将非常严格。

然后,我们将通过一两个挑战示例,展示如何解释挑战、获取信息、构思并执行攻击,以及提取标志。

之后,真正的竞赛门户将开放,团队将自由解决尽可能多的挑战。此阶段不强制留在房间内,即您可以离开回家/回酒店解决挑战,但我们将根据需要提供现场澄清。

一些挑战将非常容易,其他则非常困难,以便为所有参与者提供满意的参与水平。不需要按特定顺序完成挑战,但在完成一个挑战后,您将被告知一个我们认为在难度上接下来的“下一个”挑战。

一些挑战将是标准 CTF 风格,即您需要黑客攻击服务或网站(您将获得相关源代码或配置数据),提取并提交标志。其他挑战将更具“理论”性质:您将获得源代码进行审计,并被要求以简短(几句话)报告的形式在文本框中输入您的观察和漏洞发现。

团队得分不会实时显示。从比赛开始起,您将有 24 小时解决所有挑战,然后门户将关闭。获胜者将在 Eurocrypt 余兴环节宣布并颁奖!

CTF 获胜者

一等奖:West Ham Defence Audit Group

  • bluek1ttens
  • bbjubjub
  • Hapaxlegomenon
  • htmb

二等奖:K(AU)LMAR AND ROBIN

  • Robin_Jadoul
  • Lance
  • killerdog
  • lenerd

注册和先决条件

要注册,请在注册 Eurocrypt 2024 时在“附属活动”下选择 WCCA+CTF。

研讨会本身的先决条件是对 C、Python、Go、Rust 等编程语言的高级熟悉度,以及对密码学概念的通用知识,这应该是对任何 Eurocrypt 参与者而言理所当然的。

对于 CTF,需要带有 WiFi 连接的个人笔记本电脑和现代的、支持 JavaScript 的浏览器。您还需要提供电子邮件地址进行注册,它可以与您用于注册 Eurocrypt 的地址不同,它仅用于从 CTF 门户发送公告和通知。我们不会不必要地记录此信息:它将在 CTF 结束后删除。

不需要严格安装完整的开发堆栈或 IDE,但它可能对您有帮助,例如运行自动化脚本。

日期、地点和后勤

2024 年 5 月 26 日星期日,瑞士苏黎世。
开始时间:8:30。
ETH 主楼(“Hauptgebäude” – HG)。
房间 D5.2
附加单页信息
查看更大地图

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计