4.9 KiB
哈希长度扩展攻击
从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS红队专家)!
支持HackTricks的其他方式:
- 如果您想看到您的公司在HackTricks中被广告或下载PDF格式的HackTricks,请查看订阅计划!
- 获取官方PEASS & HackTricks周边产品
- 发现PEASS家族,我们的独家NFTs系列
- 加入 💬 Discord群组 或 电报群组 或在Twitter上关注我们 🐦 @hacktricks_live。
- 通过向HackTricks和HackTricks Cloud github仓库提交PR来分享您的黑客技巧。
WhiteIntel
WhiteIntel 是一个由暗网支持的搜索引擎,提供免费功能,用于检查公司或其客户是否受到窃取恶意软件的侵害。
WhiteIntel的主要目标是打击由于信息窃取恶意软件导致的账户劫持和勒索软件攻击。
您可以在以下网址检查他们的网站并尝试他们的引擎,免费使用:
{% embed url="https://whiteintel.io" %}
攻击摘要
想象一个服务器,通过将一个秘密附加到一些已知的明文数据上,然后对该数据进行哈希运算来签署一些数据。如果您知道:
- 秘密的长度(这也可以从给定长度范围内进行暴力破解)
- 明文数据
- 算法(及其容易受到此攻击)
- 填充是已知的
- 通常会使用默认填充,因此如果满足其他3个要求,这也是
- 填充根据秘密+数据的长度而变化,这就是为什么需要秘密长度
那么,攻击者可以附加数据并为先前数据+附加数据生成有效的签名。
如何实现?
基本上,易受攻击的算法首先通过对数据块进行哈希运算生成哈希值,然后,从先前创建的哈希(状态)开始,它们添加下一个数据块并对其进行哈希运算。
然后,想象秘密是"secret",数据是"data","secretdata"的MD5是6036708eba0d11f6ef52ad44e8b74d5b。
如果攻击者想要附加字符串"append",他可以:
- 生成64个"A"的MD5
- 将先前初始化的哈希状态更改为6036708eba0d11f6ef52ad44e8b74d5b
- 附加字符串"append"
- 完成哈希运算,生成的哈希将是**对"secret" + "data" + "填充" + "append"**的有效哈希值
工具
{% embed url="https://github.com/iagox86/hash_extender" %}
参考资料
您可以在https://blog.skullsecurity.org/2012/everything-you-need-to-know-about-hash-length-extension-attacks中找到对这种攻击的很好解释
WhiteIntel
WhiteIntel 是一个由暗网支持的搜索引擎,提供免费功能,用于检查公司或其客户是否受到窃取恶意软件的侵害。
WhiteIntel的主要目标是打击由于信息窃取恶意软件导致的账户劫持和勒索软件攻击。
您可以在以下网址检查他们的网站并尝试他们的引擎,免费使用:
{% embed url="https://whiteintel.io" %}
从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS红队专家)!
支持HackTricks的其他方式:
- 如果您想看到您的公司在HackTricks中被广告或下载PDF格式的HackTricks,请查看订阅计划!
- 获取官方PEASS & HackTricks周边产品
- 发现PEASS家族,我们的独家NFTs系列
- 加入 💬 Discord群组 或 电报群组 或在Twitter上关注我们 🐦 @hacktricks_live。
- 通过向HackTricks和HackTricks Cloud github仓库提交PR来分享您的黑客技巧。