Bug 341935 addresses the need to do *something* to disrupt the ability for bots to
trick Launchpad into sending registration email to unsuspecting people. It was
agreed to do a simple, text-based math problem captcha as a first step to try to
defeat the bots. While it would be trivial for bots to defeat this captcha (see the
pagetest!) it is our belief that we are not a real target so no one would invest in a
custom solution for use against Launchpad.
== Proposed fix ==
Add a simple captcha into the form.
== Pre-implementation notes ==
Discussions with Barry and Curtis.
== Implementation details ==
The view for the login page is a mess. It's not a LaunchpadFormView so the additions
were done 'by hand'.
In order to make it a low bar the math question is simple addition with the answer
being in the range [10, 20].
= Summary =
Bug 341935 addresses the need to do *something* to disrupt the ability for bots to
trick Launchpad into sending registration email to unsuspecting people. It was
agreed to do a simple, text-based math problem captcha as a first step to try to
defeat the bots. While it would be trivial for bots to defeat this captcha (see the
pagetest!) it is our belief that we are not a real target so no one would invest in a
custom solution for use against Launchpad.
== Proposed fix ==
Add a simple captcha into the form.
== Pre-implementation notes ==
Discussions with Barry and Curtis.
== Implementation details ==
The view for the login page is a mess. It's not a LaunchpadFormView so the additions
were done 'by hand'.
In order to make it a low bar the math question is simple addition with the answer
being in the range [10, 20].
Screenshot at http:// people. canonical. com/~bac/ captcha. png
== Tests ==
bin/test xx-createaccoun t.txt
== Demo and Q/A ==
https:/ /launchpad. dev/+login
= Launchpad lint =
Checking for conflicts. and issues in doctests and templates.
Running jslint, xmllint, pyflakes, and pylint.
Using normal rules.
Linting changed files: /launchpad/ templates/ launchpad- login.pt registry/ stories/ foaf/xx- createaccount. txt /launchpad/ webapp/ login.py
lib/canonical
lib/lp/
lib/canonical