问题标签 [dictionary-attack]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
security - 如何使用密码对 .p12 进行字典攻击(教育目的)
您使用哪个程序或命令从受密码保护的 p12 中提取公钥?我正在尝试使用该命令hydra
,但我认为它仅适用于网络
bash - BASH中的for循环以获取用户名和密码元组
我正在使用 Bash 4.4.23 编写一个简单的脚本,以对使用默认密码的各种 Web 服务器执行示范性字典攻击。
包含用户名和密码的数组在“for”循环上方声明,如下所示:
代码应返回如下内容:
但相反,它正在返回
哪些是数组中声明的值(用户名和密码)。
我怎样才能实现我想要做的事情?然后必须将元组传递给 curl 以执行字典攻击。
recaptcha - 如何检测验证码农场并阻止验证码机器人
简要总结
让我们先简单介绍一下 Google reCaptcha 农场是什么——机器人开发人员可以通过 API 查询以自动解决 Google reCaptcha 的服务:
- 机器人被验证码挑战阻止。
- 它使用网站的验证码公钥及其域名作为参数对验证码农场进行 API 调用。
- Captcha 农场要求其中一名工人解决 Captcha。
- 大约 30-45 秒后,验证码被解析,您将获得其响应令牌。
- 机器人通过提交响应令牌来解决验证码。
简而言之,解决验证码就像在机器人代码中调用函数一样简单。攻击者甚至不需要通过点击直接与 Google reCaptcha 进行交互。如果攻击者知道 Google reCaptcha 回调的结构和 URL,即网站在提交成功响应后发送 Google reCaptcha 响应令牌的请求(通过查看 devtools 很简单),他们可以证明他们'已经解决了验证码,甚至没有使用真正的浏览器。
问题
我的网站与Google reCaptcha V2 (Invisible reCaptcha)完全集成。实施遵循文档中列出的所有步骤。到目前为止,它就像一个魅力。随着时间的推移,我们经历了不同类型的试图渗透我们登录的攻击。造成最大问题的一个是字典攻击与自动 Google reCaptcha 解决机制相结合。攻击者正在使用解决 Google reCaptcha 并生成唯一响应代码的农场(或可能是脚本),这些代码被机器人网络(世界各地的不同 IP 地址、用户代理、浏览器指纹等)使用。使用这些代码,Google reCaptcha 被排除在外,我们必须使用不同的机制来阻止攻击者。
问题
我多次查看 Google reCaptcha 文档以及与此问题相关的不同主题,但找不到一种简单的方法来防止此类攻击。我有几个问题,如果有人成功回答,我将不胜感激:
- 是否可以将 Google reCaptcha 响应代码绑定到代码质询、cookie 或类似的东西,以确保代码由确切的客户端生成?
- 有什么方法可以区分来自农场/脚本的 Google reCaptcha 代码和由确切客户端生成的代码?
- 我发现有一些像DataDome这样的解决方案,非常昂贵。是否有类似但价格较低的东西或可以自己实现的算法?
提前非常感谢!
脚本
以下是类似于 Google reCaptcha 农场的脚本的简化:
我正在使用服务器端验证 - 像这样:
似乎该remoteip
参数没有按预期工作 - 无论客户端 IP 是什么,验证都是成功的。我检查了一些主题,似乎这是一个常见问题:
cryptography - 长度扩展攻击疑点
所以我一直在研究这个长度扩展攻击的概念,在我的研究过程中我注意到的一些事情对我来说并不是很清楚。
1.研究论文正在解释如何将某种类型的数据附加到末尾并制作新的数据。例如
所需的新数据:count=10&lat=37.351&user_id=1&long=-119.827& waffle =eggo& waffle =liege
(注意 2 华夫饼)。我的问题是,如果服务器端的解析器函数可以跟踪重复属性,那么整个长度扩展攻击会是无稽之谈吗?因为服务器会注意到重复的属性。用于检查任何重复项的适当解析器是否是与长度扩展攻击相比的良好解决方案?我知道 HMAC 方法和其他保护措施,但现在在这里专门讨论解析器。
2.Research 说只有易受攻击的数据是 H(key|message)。他们声称 H(message|key) 对攻击者不起作用,因为我们必须附加一个新密钥(我们显然不知道)。我的问题是为什么我们必须附加一个新密钥?我们在攻击 H(key|message) 时不会这样做。为什么我们不能相信我们将通过验证测试(我们将创建正确的哈希)以及如果解析器试图从中提取密钥,它将获取我们发送的块中的唯一密钥并从那里恢复?为什么我们必须发送 2 个密钥?为什么对 H(message|key) 的攻击不起作用?
python - 在 Python 中迭代大量数据的有效方法
我正在尝试对 sha512 哈希进行字典攻击。我知道哈希由两个单词组成,全小写,用空格分隔。这些单词来自一个已知的字典 (02-dictionary.txt),其中包含 172,820 个单词。目前,我的代码如下:
但是,当我运行此代码时,程序运行速度非常慢。我知道 Python 不是最有效的语言,但我猜这个问题更多源于数据结构的选择。有没有更高效的数据结构?我尝试使用该array
模块,但文档使它看起来好像被设计用于更原始的类型(整数、浮点数、短裤、布尔值、字符等),而不是更复杂的类型,如字符串(或列表个字符)。改进此代码的最佳方法是什么?在大约一个小时的运行时间中,我只完成了所有可能的单词组合中的大约 1%。