
心灵签名-你需要知道的
2022年4月19日, Neil Madden 透露了一个漏洞 在 Oracle Java 15 到 18 以及 OpenJDK 15、17 和 18 中。漏洞在于ECDSA签名的加密技术,它允许攻击者完全绕过对这些签名的签名检查。
考虑到 ECDSA 签名的模糊性质,很容易看到有关该漏洞的头条新闻,然后直接跳过这些头条新闻。但是,ECDSA签名实际上在保护互联网系统执行身份验证等关键任务方面起着关键作用。
在我们深入探讨细节之前,如果你想亲身体验黑客如何利用心灵签名。直接跳到我们的 免费实验室-任务 亲自尝试一下。
ECDSA 有什么大不了的?
你以前可能没有听说过ECDSA。它是椭圆曲线数字签名算法的简称,椭圆曲线数字签名算法是一种利用椭圆曲线的数学特性的密码学,提供了目前业界最强大的加密安全性。
这意味着它用于许多重要功能,例如:
- SSL 证书的签名
- 加密通信期间的握手
- SAML
- JWT 签名
- OpenID 连接签名
这意味着,ECDSA 是许多保护系统的最敏感功能的关键部分。绕过签名检查的能力可能会造成相当大的毁灭性。
该漏洞是如何利用的?
不幸的是,ECDSA的数学有些复杂。但是要知道的关键是,ECDSA签名包含两条信息: r, 和 s。
这些数字用于计算签名的有效性。价值 r 是使用两者的计算的 “结果”(左侧) r 和 s 在方程的右边。鉴于乘以 0 是个坏主意,ECDSA 规范明确指出,如果值为 r 要么 s 永远是 0,它们应该被丢弃。
但是ECDSA的Java实现却忘记了这一点。因此,它将接受两者的签名 r 和 s 是 0,这将永远是正确的。我们可以用 JWT 的例子来演示这一点,展示它有多简单。使用 https://token.dev/,我们可以使用算法 ES256 生成令牌,类似于应用程序生成的代币:

回想一下,一个 JWT 分为 3 个部分:
- 标题(蓝色)
- 有效载荷(绿色)
- 签名(红色)
现在,如果我们想绕过签名检查,我们该怎么做呢?签名指定了的值 r 和 s,并以 DER 格式编码。

让我们更改我们的 JWT 以使用这个新签名。请注意,在 JWT 中,不包括等号。

现在,我们的签名有 r 和 s 设置为 0,在易受攻击的 Java 版本中,您指定的任何负载的签名检查现在都将成功。
谁受到了影响,如何减轻影响?
该漏洞同时影响 Oracle Java 和 OpenJDK。其中包括:
Oracle Java SE(以及较早的、不支持的版本):
- 18
- 17.0.2
Oracle GraalVM 企业版:
- 22.0.0.2
- 21.3.1
OpenJDK:
- 18
- 17.0.2
- 15.0.6
- 13.0.10
- 11.0.14
- 8u322
- 7u331
两者都 神谕 和 OpenJDK 已经针对该问题发布了建议和补丁,可以立即应用。
防御此漏洞的动手实践
在 Secure Code Warrior,我们努力为开发人员提供有关关键漏洞的最相关信息和动手练习,无论是诸如心理签名之类的最新漏洞,还是已经存在多年的漏洞。
我们认为,要真正控制风险,必须让开发人员从一开始就了解防御机制并编写安全代码。这就是为什么我们为您和受影响的团队创建了针对该漏洞(以及许多其他漏洞)的分步演练。
在演练中,您将能够按照说明在 JWT 中利用 Physic Signature,并实时查看其对正常运行的应用程序的影响。
现在就试试吧。


Psychic Signature 漏洞存在于 ECDSA 签名的加密中,它可以保护系统执行身份验证等关键任务。黑客可以利用此漏洞绕过任何签名检查。我们将在这篇文章中解释它是什么以及如何缓解它。

Secure Code Warrior peut aider votre organisation à sécuriser le code tout au long du cycle de vie du développement logiciel et à instaurer une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, directeur de la sécurité de l'information ou tout autre professionnel concerné par la sécurité, nous pouvons aider votre organisation à réduire les risques liés au code non sécurisé.
Veuillez réserver une démonstration.

2022年4月19日, Neil Madden 透露了一个漏洞 在 Oracle Java 15 到 18 以及 OpenJDK 15、17 和 18 中。漏洞在于ECDSA签名的加密技术,它允许攻击者完全绕过对这些签名的签名检查。
考虑到 ECDSA 签名的模糊性质,很容易看到有关该漏洞的头条新闻,然后直接跳过这些头条新闻。但是,ECDSA签名实际上在保护互联网系统执行身份验证等关键任务方面起着关键作用。
在我们深入探讨细节之前,如果你想亲身体验黑客如何利用心灵签名。直接跳到我们的 免费实验室-任务 亲自尝试一下。
ECDSA 有什么大不了的?
你以前可能没有听说过ECDSA。它是椭圆曲线数字签名算法的简称,椭圆曲线数字签名算法是一种利用椭圆曲线的数学特性的密码学,提供了目前业界最强大的加密安全性。
这意味着它用于许多重要功能,例如:
- SSL 证书的签名
- 加密通信期间的握手
- SAML
- JWT 签名
- OpenID 连接签名
这意味着,ECDSA 是许多保护系统的最敏感功能的关键部分。绕过签名检查的能力可能会造成相当大的毁灭性。
该漏洞是如何利用的?
不幸的是,ECDSA的数学有些复杂。但是要知道的关键是,ECDSA签名包含两条信息: r, 和 s。
这些数字用于计算签名的有效性。价值 r 是使用两者的计算的 “结果”(左侧) r 和 s 在方程的右边。鉴于乘以 0 是个坏主意,ECDSA 规范明确指出,如果值为 r 要么 s 永远是 0,它们应该被丢弃。
但是ECDSA的Java实现却忘记了这一点。因此,它将接受两者的签名 r 和 s 是 0,这将永远是正确的。我们可以用 JWT 的例子来演示这一点,展示它有多简单。使用 https://token.dev/,我们可以使用算法 ES256 生成令牌,类似于应用程序生成的代币:

回想一下,一个 JWT 分为 3 个部分:
- 标题(蓝色)
- 有效载荷(绿色)
- 签名(红色)
现在,如果我们想绕过签名检查,我们该怎么做呢?签名指定了的值 r 和 s,并以 DER 格式编码。

让我们更改我们的 JWT 以使用这个新签名。请注意,在 JWT 中,不包括等号。

现在,我们的签名有 r 和 s 设置为 0,在易受攻击的 Java 版本中,您指定的任何负载的签名检查现在都将成功。
谁受到了影响,如何减轻影响?
该漏洞同时影响 Oracle Java 和 OpenJDK。其中包括:
Oracle Java SE(以及较早的、不支持的版本):
- 18
- 17.0.2
Oracle GraalVM 企业版:
- 22.0.0.2
- 21.3.1
OpenJDK:
- 18
- 17.0.2
- 15.0.6
- 13.0.10
- 11.0.14
- 8u322
- 7u331
两者都 神谕 和 OpenJDK 已经针对该问题发布了建议和补丁,可以立即应用。
防御此漏洞的动手实践
在 Secure Code Warrior,我们努力为开发人员提供有关关键漏洞的最相关信息和动手练习,无论是诸如心理签名之类的最新漏洞,还是已经存在多年的漏洞。
我们认为,要真正控制风险,必须让开发人员从一开始就了解防御机制并编写安全代码。这就是为什么我们为您和受影响的团队创建了针对该漏洞(以及许多其他漏洞)的分步演练。
在演练中,您将能够按照说明在 JWT 中利用 Physic Signature,并实时查看其对正常运行的应用程序的影响。
现在就试试吧。

2022年4月19日, Neil Madden 透露了一个漏洞 在 Oracle Java 15 到 18 以及 OpenJDK 15、17 和 18 中。漏洞在于ECDSA签名的加密技术,它允许攻击者完全绕过对这些签名的签名检查。
考虑到 ECDSA 签名的模糊性质,很容易看到有关该漏洞的头条新闻,然后直接跳过这些头条新闻。但是,ECDSA签名实际上在保护互联网系统执行身份验证等关键任务方面起着关键作用。
在我们深入探讨细节之前,如果你想亲身体验黑客如何利用心灵签名。直接跳到我们的 免费实验室-任务 亲自尝试一下。
ECDSA 有什么大不了的?
你以前可能没有听说过ECDSA。它是椭圆曲线数字签名算法的简称,椭圆曲线数字签名算法是一种利用椭圆曲线的数学特性的密码学,提供了目前业界最强大的加密安全性。
这意味着它用于许多重要功能,例如:
- SSL 证书的签名
- 加密通信期间的握手
- SAML
- JWT 签名
- OpenID 连接签名
这意味着,ECDSA 是许多保护系统的最敏感功能的关键部分。绕过签名检查的能力可能会造成相当大的毁灭性。
该漏洞是如何利用的?
不幸的是,ECDSA的数学有些复杂。但是要知道的关键是,ECDSA签名包含两条信息: r, 和 s。
这些数字用于计算签名的有效性。价值 r 是使用两者的计算的 “结果”(左侧) r 和 s 在方程的右边。鉴于乘以 0 是个坏主意,ECDSA 规范明确指出,如果值为 r 要么 s 永远是 0,它们应该被丢弃。
但是ECDSA的Java实现却忘记了这一点。因此,它将接受两者的签名 r 和 s 是 0,这将永远是正确的。我们可以用 JWT 的例子来演示这一点,展示它有多简单。使用 https://token.dev/,我们可以使用算法 ES256 生成令牌,类似于应用程序生成的代币:

回想一下,一个 JWT 分为 3 个部分:
- 标题(蓝色)
- 有效载荷(绿色)
- 签名(红色)
现在,如果我们想绕过签名检查,我们该怎么做呢?签名指定了的值 r 和 s,并以 DER 格式编码。

让我们更改我们的 JWT 以使用这个新签名。请注意,在 JWT 中,不包括等号。

现在,我们的签名有 r 和 s 设置为 0,在易受攻击的 Java 版本中,您指定的任何负载的签名检查现在都将成功。
谁受到了影响,如何减轻影响?
该漏洞同时影响 Oracle Java 和 OpenJDK。其中包括:
Oracle Java SE(以及较早的、不支持的版本):
- 18
- 17.0.2
Oracle GraalVM 企业版:
- 22.0.0.2
- 21.3.1
OpenJDK:
- 18
- 17.0.2
- 15.0.6
- 13.0.10
- 11.0.14
- 8u322
- 7u331
两者都 神谕 和 OpenJDK 已经针对该问题发布了建议和补丁,可以立即应用。
防御此漏洞的动手实践
在 Secure Code Warrior,我们努力为开发人员提供有关关键漏洞的最相关信息和动手练习,无论是诸如心理签名之类的最新漏洞,还是已经存在多年的漏洞。
我们认为,要真正控制风险,必须让开发人员从一开始就了解防御机制并编写安全代码。这就是为什么我们为您和受影响的团队创建了针对该漏洞(以及许多其他漏洞)的分步演练。
在演练中,您将能够按照说明在 JWT 中利用 Physic Signature,并实时查看其对正常运行的应用程序的影响。
现在就试试吧。

Veuillez cliquer sur le lien ci-dessous pour télécharger le PDF de cette ressource.
Secure Code Warrior peut aider votre organisation à sécuriser le code tout au long du cycle de vie du développement logiciel et à instaurer une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, directeur de la sécurité de l'information ou tout autre professionnel concerné par la sécurité, nous pouvons aider votre organisation à réduire les risques liés au code non sécurisé.
Veuillez consulter le rapport.Veuillez réserver une démonstration.2022年4月19日, Neil Madden 透露了一个漏洞 在 Oracle Java 15 到 18 以及 OpenJDK 15、17 和 18 中。漏洞在于ECDSA签名的加密技术,它允许攻击者完全绕过对这些签名的签名检查。
考虑到 ECDSA 签名的模糊性质,很容易看到有关该漏洞的头条新闻,然后直接跳过这些头条新闻。但是,ECDSA签名实际上在保护互联网系统执行身份验证等关键任务方面起着关键作用。
在我们深入探讨细节之前,如果你想亲身体验黑客如何利用心灵签名。直接跳到我们的 免费实验室-任务 亲自尝试一下。
ECDSA 有什么大不了的?
你以前可能没有听说过ECDSA。它是椭圆曲线数字签名算法的简称,椭圆曲线数字签名算法是一种利用椭圆曲线的数学特性的密码学,提供了目前业界最强大的加密安全性。
这意味着它用于许多重要功能,例如:
- SSL 证书的签名
- 加密通信期间的握手
- SAML
- JWT 签名
- OpenID 连接签名
这意味着,ECDSA 是许多保护系统的最敏感功能的关键部分。绕过签名检查的能力可能会造成相当大的毁灭性。
该漏洞是如何利用的?
不幸的是,ECDSA的数学有些复杂。但是要知道的关键是,ECDSA签名包含两条信息: r, 和 s。
这些数字用于计算签名的有效性。价值 r 是使用两者的计算的 “结果”(左侧) r 和 s 在方程的右边。鉴于乘以 0 是个坏主意,ECDSA 规范明确指出,如果值为 r 要么 s 永远是 0,它们应该被丢弃。
但是ECDSA的Java实现却忘记了这一点。因此,它将接受两者的签名 r 和 s 是 0,这将永远是正确的。我们可以用 JWT 的例子来演示这一点,展示它有多简单。使用 https://token.dev/,我们可以使用算法 ES256 生成令牌,类似于应用程序生成的代币:

回想一下,一个 JWT 分为 3 个部分:
- 标题(蓝色)
- 有效载荷(绿色)
- 签名(红色)
现在,如果我们想绕过签名检查,我们该怎么做呢?签名指定了的值 r 和 s,并以 DER 格式编码。

让我们更改我们的 JWT 以使用这个新签名。请注意,在 JWT 中,不包括等号。

现在,我们的签名有 r 和 s 设置为 0,在易受攻击的 Java 版本中,您指定的任何负载的签名检查现在都将成功。
谁受到了影响,如何减轻影响?
该漏洞同时影响 Oracle Java 和 OpenJDK。其中包括:
Oracle Java SE(以及较早的、不支持的版本):
- 18
- 17.0.2
Oracle GraalVM 企业版:
- 22.0.0.2
- 21.3.1
OpenJDK:
- 18
- 17.0.2
- 15.0.6
- 13.0.10
- 11.0.14
- 8u322
- 7u331
两者都 神谕 和 OpenJDK 已经针对该问题发布了建议和补丁,可以立即应用。
防御此漏洞的动手实践
在 Secure Code Warrior,我们努力为开发人员提供有关关键漏洞的最相关信息和动手练习,无论是诸如心理签名之类的最新漏洞,还是已经存在多年的漏洞。
我们认为,要真正控制风险,必须让开发人员从一开始就了解防御机制并编写安全代码。这就是为什么我们为您和受影响的团队创建了针对该漏洞(以及许多其他漏洞)的分步演练。
在演练中,您将能够按照说明在 JWT 中利用 Physic Signature,并实时查看其对正常运行的应用程序的影响。
现在就试试吧。
Table des matières

Secure Code Warrior peut aider votre organisation à sécuriser le code tout au long du cycle de vie du développement logiciel et à instaurer une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, directeur de la sécurité de l'information ou tout autre professionnel concerné par la sécurité, nous pouvons aider votre organisation à réduire les risques liés au code non sécurisé.
Veuillez réserver une démonstration.TéléchargerRessources pour vous aider à démarrer
Formation sur les codes de sécurité : thèmes et contenu
Notre contenu de pointe évolue constamment pour s'adapter au paysage changeant du développement logiciel, tout en tenant compte de votre rôle. Les sujets abordés couvrent tout, de l'IA à l'injection XQuery, et s'adressent à divers postes, des architectes et ingénieurs aux chefs de produit et responsables de l'assurance qualité. Découvrez un aperçu par thème et par rôle de ce que notre catalogue de contenu a à offrir.
La Chambre de commerce établit la norme en matière de sécurité à grande échelle axée sur les développeurs
La Chambre de commerce néerlandaise explique comment elle a intégré le codage sécurisé dans le développement quotidien grâce à des certifications basées sur les rôles, à l'évaluation comparative du Trust Score et à une culture de responsabilité partagée en matière de sécurité.
Modélisation des menaces avec l'IA : transformer chaque développeur en modélisateur de menaces
Vous repartirez mieux équipé pour aider les développeurs à combiner les idées et les techniques de modélisation des menaces avec les outils d'IA qu'ils utilisent déjà pour renforcer la sécurité, améliorer la collaboration et créer des logiciels plus résilients dès le départ.
Ressources pour vous aider à démarrer
Cybermon est de retour : la mission AI pour vaincre le boss est désormais disponible sur demande.
Cybermon 2025 : la campagne « Vaincre le boss » est désormais disponible toute l'année dans SCW. La guerre de sécurité avancée de l'IA/LLM tribale, le renforcement de l'IA de sécurité à grande échelle.
Interprétation de la loi sur la résilience des réseaux : que signifie la sécurité par le biais de la conception et du développement de logiciels ?
Comprenez les exigences de la loi européenne sur la résilience des réseaux (CRA), à qui elle s'applique et comment les équipes d'ingénierie peuvent s'y préparer grâce à des pratiques de conception, à la prévention des vulnérabilités et au renforcement des capacités des développeurs.
Facteur déterminant 1 : des critères de réussite clairs et mesurables
Le catalyseur n° 1 constitue le premier volet de notre série en dix parties consacrée aux facteurs de réussite. Il démontre comment relier la sécurité du code aux résultats opérationnels, tels que la réduction des risques et l'accélération de la maturité des programmes à long terme.




%20(1).avif)
.avif)
