175

是否使用过任何编程方法来击败 reCAPTCHA?

我有兴趣看到证据和潜在的证明,特别是 reCAPTCHA 已经被完全自动化的、无人化的方法过时了。

澄清一下,不要以任何方式寻找涉及人类的 reCAPTCHA 作弊解决方案,无论是负责填写 CAPCHA、色情搜索者还是 Mechanical Turk 的团队。

也不是在寻找 reCAPTCHA 的替代品,比如选择动物的类型、背景字段或 JavaScript 技巧。

4

14 回答 14

94

我注意到这里几乎所有的答案都与CAPTCHA概念的无效性有关,原则上——虽然我非常同意他们的观点,但实际上几个月前在 OWASP 上发表了一次演讲,解释了这一点——这个问题非常具体,所以我将提供一个演示。
但首先,我将重申该演示,重新阅读其他评论,因为验证码是毫无意义的,没有帮助,与实施无关......

但实际上,请查看CAPTCHA Killer。您可以上传验证码图像,它会自动(如果不是立即)提供 OCR 的答案。它还提供了一个 API(我认为是 REST,但也可能是 SOAP)。我亲自尝试了许多 reCAPTCHA 图像,它实际上是一些最容易(或至少最快)损坏的图像。

更新:CAPTCHA Killer 的网站现已被撤下,显然是在法律压力下。有关该主题的完整概述,请参见http://captcha.org/

是的,OCR 并不是破解受 CAPTCHA 保护的站点的最佳方法——还有许多其他更好的方法。

于 2009-02-14T21:43:10.577 回答
54

您可能会对这份关于 4chan 如何击败 reCAPTCHA 并使用它来操纵 Time.com 的年度 TIME 100 民意调查结果的详细报告感兴趣。

Hacking Recaptcha(又名“阴茎洪水”)

使用的下一个策略是查看他们是否可以找到 reCAPTCHA 实施中的缺陷。他们发现关于 reCAPTCHA 的一件事是,它总是向用户提供两个词以供解码 - 一个词是 reCAPTCHA 系统已知的控制词,而另一个是未知词(reCAPTCHA 使用人类来帮助纠正 OCR 错误)。维基百科描述了这个过程:“扫描的文本由两个不同的光学字符识别程序进行分析;在程序不一致的情况下,有问题的单词将被转换为验证码。该词与已知的控制词一起显示并由人类标记。那些一直被人类评委赋予单一标签的词被回收为控制词”。2iasdo4 Anonymous 意识到,如果他们总是用同一个词标记未知的扫描文本 - 如果他们这样做成千上万次,最终很大一部分未知词将被错误地标记为他们的词。他们所要做的就是查看验证码中的两个词,为“简单”的词输入正确的标签(大概是两个光学扫描仪会同意的词),然后输入“阴茎”一词硬一个。如果他们经常这样做,那么很快就会有很大一部分图像被标记为“阴茎”,并且自动投票的能力将恢复(一个副作用,匿名者并没有丢失,这是未来几年的概念会有一些数字书籍在整个文本中随机插入“阴茎”这个词。更新:我问 Ben Maurer,

优化验证码

与将“阴茎”一词洒在文本中的想法一样吸引人,匿名团队知道时间在流逝,如果他们要恢复消息,他们没有时间等待自动投票者重新上线 -他们将不得不手动投票,很多很多次。因此,他们需要能够尽可能快地输入验证码。他们制定了一套指导方针,使他们能够快速决定可以跳过哪些 reCAPTCHA 单词。例如:

您将得到 2 个字:1 真,1 假。

对于[REAL FAKE]or [FAKE REAL],您只需输入REAL它应该被接受。

如果是[LOOKSREAL LOOKSREAL][LOOKSFAKE LOOKSFAKE],通常只输入两个单词会更快。不要浪费宝贵的时间来决定其中哪一个是真实的。

使用单词的外观和类型来识别假单词。不要只依赖其中之一。

整个规则集在这里:fake captcha

于 2009-04-29T09:17:29.510 回答
32

CAPTCHA 系统的弱点在于,人们在中国设置了一个满是人的房间,他们唯一的工作就是查看 CAPTCHA 图像并输入结果,该结果会插入实际发送垃圾邮件的自动化系统。

你真的无能为力。

它也比尝试在实际图像上进行图像识别、OCR 等便宜得多(反之,您可能会得到低于 0.01 美元的响应)。

于 2009-01-15T23:34:28.077 回答
21

在屈服于使用验证码的压力之前,请考虑创造性的变通方法,例如设置一个标记为“您的评论”的字段,该字段被 CSS 隐藏。如果输入了该字段,则请求将被服务器丢弃。即使仍然没有很好的方法来击败满是报酬过低的工人的房间,大多数机器人也会爱上它,而验证码无论如何也无济于事。

更新:只需阅读一个案例研究,其中删除 CAPTCHA 可将转化率提高近 10%。这将向我表明,如果您仅仅为了过滤掉机器人而失去 10% 的潜在客户,那就太糟糕了。想象一下 10% 对大多数企业意味着什么。

于 2009-01-15T23:53:19.130 回答
18

我最喜欢的验证码来自 Microsoft:http ://research.microsoft.com/en-us/um/redmond/projects/asirra/

Asirra(用于限制访问的动物物种图像识别)是一种 HIP,它通过要求用户识别猫和狗的照片来工作。这项任务对计算机来说很困难,但我们的用户研究表明,人们可以快速准确地完成它。许多人甚至认为它很有趣!

这是一项免费服务,他们有示例代码可以帮助您入门。

我想知道它会被破解多久。

于 2009-01-15T23:40:08.830 回答
11

reCAPTACHA 没有损坏,也不会在很长一段时间内损坏。问题是,如果你实施自己的验证码,如果它坏了,可能需要很长时间才能修复它。

这取自关于 reCAPTCHA 安全性的页面

reCAPTCHA 是一种 Web 服务。这意味着所有图像都是由我们的服务器生成和分级的。(...) 这也提供了额外的保护级别:只要发现安全漏洞,我们的验证码就会自动更新。

例如,如果有人编写了一个程序,可以读取我们扭曲的图像,我们可以在很短的时间内添加更多的扭曲,而无需网络管理员在他们这边进行任何更改。

我相信,由于他们专注于验证码,他们已经存储了改进的版本,如果需要,可以在很短的时间内部署。(当弱者还没有被破坏时,他们为什么要创造更强的安全性?)

于 2009-02-19T23:55:21.423 回答
9

它不仅被打败了,而且还在其上成功构建了一个有用的应用程序,成为打败大量直接下载网站(不仅是megaupload和rapidshare)的各种免费帐户保护的最神奇工具)。

Jdownloader是开源的,并且是用 Java 编写的,因此查看源代码不仅可以回答它是否损坏,还可以了解它是如何损坏的。

编辑:大多数直接下载网站不使用 reCaptcha,而是使用更简单的 Captcha 方法(3 个大写字母以不同颜色着色)。尽管如此,Jdownloader 和Cryptload(类似于 Jdownloader 的程序)是我所知道的唯一有效地破坏了 Captcha 方法的有效实现。我还没有听说过任何破解 reCaptcha 的实现。

更新:似乎至少一个 reCaptcha 实现(不是整个 reCaptcha 本身)也已被破解

2010 年 12 月更新:Jdownloader似乎终于击败了 reCaptcha。该插件仍处于实验阶段,仅适用于 Windows 版本的 Jdownloader,但是,正如一位尝试过它的伙伴告诉我的,它确实有效。

于 2009-02-16T07:58:59.297 回答
8

去年在 Defcon 上有一次演讲,谈到了 CAPTCHA 的一般问题。他们所做的其中一件事是使用多个免费的 OCR 引擎并让他们投票选出最好的单词。这样做,他们能够获得一些不错的成功机会。对于一种,它是 40% 左右,但我不认为它是 reCaptcha。

于 2009-01-15T23:59:07.403 回答
8

2-3 年前,基于文本输入的验证码方法在他们输掉战斗时越界了,即进一步的复杂化只会使它们相对(因为计算机能力正在增加,而人类没有)更容易被机器使用,并且更令人反感和排斥,如果不是的话对人类来说,完全不可能。这与 CAPTCHA 的原始范例相矛盾,作为一种测试,以确保响应不是由计算机生成的

更新:
请注意,reCAPTCHAGoogle Inc.所有,但Google Inc.不通过他们自己的服务使用它。
这是一个链接,其中包含 Google 自身/内部使用的验证码网页, 例如用于 Gmail 注册:

替代文字



请注意,Google 的reCAPTCHA始终包含 2 个单词。
这是提供给其他人使用的带有 Google 的 reCAPTCHA 的图像链接。

还有 reCAPTCHA 的截图:

替代文字

我离开是为了向读者做出明显的结论。

引用: [ 1 ]
vBulletin 论坛被 reCAPTCHA 破解垃圾邮件机器人攻击 | PC Pro 博客由 Davey Winder 于2011 年 1 月 12 日
发布

于 2011-01-13T10:32:36.767 回答
5

我在一个受 reCAPTCHA 保护的系统上看到博客评论,页面加载,1 秒后帖子成功发布。User-Agent 是无稽之谈(在这种特殊情况下,它声称运行的是 Ubuntu 9.25/Firefox 3.8),引荐来源网址来自一个完全不相关的站点,没有指向我们的链接。

这显然是自动化的。

于 2010-03-02T14:49:39.427 回答
3

reCAPTCHA 并没有被击败。如果是这样,那么为什么 Google 只是购买它并宣布他们将在 Google 内部应用该技术来增加对 Google 产品的欺诈和垃圾邮件保护?

来自Google Acquires reCAPTCHA于 2009 年 9 月 16 日发布到 Google 博客:

通过这种方式,reCAPTCHA 的独特技术改进了将扫描图像转换为纯文本的过程,即光学字符识别 (OCR)。该技术还为 Google 图书和 Google 新闻档案搜索等大型文本扫描项目提供支持。拥有文档的文本版本很重要,因为可以搜索纯文本,在移动设备上轻松呈现并显示给视障用户。因此,我们将在 Google 中应用该技术,不仅可以增强对 Google 产品的欺诈和垃圾邮件保护,还可以改进我们的图书和报纸扫描流程。

于 2009-10-03T02:39:15.583 回答
3

击败验证码的最简单方法是 Amazon Mechanical Turk。有一个叫 Kermit Welda 的人每人支付一美分来注册 Hotmail、AOL 和 Gmail 帐户。那是 6,000 个假电子邮件帐户,每天 5 美分 = 300 美元。当您让其他人为您做肮脏的工作时,做生意的成本非常便宜。难怪我们服务器的垃圾邮件过滤器想要拒绝来自 Hotmail 的任何内容。

于 2011-02-09T05:06:46.913 回答
2

AFAIK 实际上,没有工具可以破解 RE-captcha 实现,但最终我认为有人会得到它。

有趣的是,如果有人设法得到它,那么整个 RE-captcha 项目就毫无意义,因为 re-captcha 设计了无法以自动化方式完成的数字化书籍。

顺便提一句 :

CAPTCHA 系统的弱点在于,人们在中国设置了一个满是人的房间,他们唯一的工作就是查看 CAPTCHA 图像并输入结果,该结果会插入实际发送垃圾邮件的自动化系统。

你不能像这样想保护一个系统,这就像说“如果你的主机不在一个旧的军事掩体中,你的 Web 应用程序就不够安全,因为现在人们可以窃取你的机器”。

于 2009-02-16T08:01:14.487 回答
2

有很多方法可以用来废话recaptcha。虽然很难使用启用了神经网络的程序来自动解决它们,但它可以抓取图像并让亚马逊的机械土耳其人或一些等效的程序来解决它们。

http://codemagician.wordpress.com/2010/01/22/solving-recaptcha/

于 2010-01-30T21:46:20.883 回答