[OpenStack-Infra] Wiki.o.o sustaining spam attack

JP Maxwell jp at tipit.net
Sat Feb 27 12:50:51 UTC 2016


Cool. Are these applied? Any indication it has stopped the spam? Should we
clear out these non launchpad accounts from the DB?

J.P. Maxwell | tipit.net | fibercove.com
On Feb 27, 2016 6:47 AM, "Marton Kiss" <marton.kiss at gmail.com> wrote:

> And the mobile frontend will be disabled permanently with this patch:
> https://review.openstack.org/285672 Disable mobile frontend
>
> M.
>
> On Sat, Feb 27, 2016 at 1:39 PM Marton Kiss <marton.kiss at gmail.com> wrote:
>
>> I made some investigation, and it seems to be that the spam pages are
>> created by accounts registered with password accounts, and the launchpad
>> openid auth is not affected at all.
>>
>> So the spam script is creating accounts like this:
>> mysql> select * from user where user_name = 'CedricJamieson'\G;
>> *************************** 1. row ***************************
>>                  user_id: 7494
>>                user_name: CedricJamieson
>>           user_real_name: Cedric Jamieson
>>            user_password:
>> :pbkdf2:sha256:10000:128:Mlo9tdaP+38niZrrEka7Ow==:jEVnrTclkwIpE1RzJywDlrSvkY5G3idYwOwYRkv5O0J/MSHjY+gdhtKmArQ53v6/w7o8E1wXb2QOR6HdL5TPfOI1bswS/fYXVVYjPjkEEdxqZ8q9L5p2f3N6rEYpMfT5tk+wDiy+j5aimrHrGSga44hndAHgX9/SnqUyxlutDVY=
>>         user_newpassword:
>>        user_newpass_time: NULL
>>               user_email: balashkina.evdokiya at mail.ru
>>             user_touched: 20160227052454
>>               user_token: 7c39e44e849fb0e2bfae8790d6cc1379
>> user_email_authenticated: NULL
>>         user_email_token: be963ac3bd43e70ff2f323063c61e320
>> user_email_token_expires: 20160305052441
>>        user_registration: 20160227052441
>>           user_editcount: 2
>>    user_password_expires: NULL
>>
>> The user_password field is always filled with a value, meanwhile this
>> field of non-infected user accounts with openid logins is empty.
>> We have 423 total accounts with passwords:
>> mysql> select count(*) from user where user_password != '';
>> +----------+
>> | count(*) |
>> +----------+
>> |      423 |
>> +----------+
>> 1 row in set (0.00 sec)
>>
>> Mediawiki logs-in the newly created users without any preliminary email
>> confirmation, right after the registration. I disabled the standard user
>> login page, as described here:
>> https://www.mediawiki.org/wiki/Manual:Special_pages#Disabling_Special:UserLogin_and_Special:UserLogout_pages
>>
>> And I made this patch to make it permanent:
>> https://review.openstack.org/285669 Disable standard password based auth
>>
>> Just for the record, the last spam user account:
>> 7536 | EarthaChester22
>>
>> Marton
>>
>>
>> On Sat, Feb 27, 2016 at 8:31 AM Marton Kiss <marton.kiss at gmail.com>
>> wrote:
>>
>>> Hi,
>>>
>>> I created the following patch, infra cores must approve that:
>>> https://review.openstack.org/285641 Add ssh key of JP Maxwell to
>>> wiki.o.o
>>>
>>> Marton
>>>
>>> On Sat, Feb 27, 2016 at 6:41 AM JP Maxwell <jp at tipit.net> wrote:
>>>
>>>> Marton has SSH access and applied a patch earlier today.  It appears
>>>> the spam continues to flow:
>>>>
>>>>
>>>> https://wiki.openstack.org/wiki/40_Thoughts_Of_Using_Open_Shelves_On_A_Kitchen
>>>>
>>>> Marton let me know if you can look at it some more or Infra if you want
>>>> to give me SSH I'll do so as well in the morning (public key attached).
>>>>
>>>>
>>>>
>>>> ssh-rsa
>>>> AAAAB3NzaC1yc2EAAAABIwAAAQEA2b5I7Yff9FCrtRmSjpILUePi54Vbc8zqJTbzrIAQZGFLBi3xd2MLlhV5QVgpDBC9H3lGjbdnc81D3aFd3HwHT4dvvvyedT12PR3VDEpftdW84vw3jzdtALcayOQznjbGnScwvX5SgnRhNxuX9Rkh8qNvOsjYPUafRr9azkQoomJFkdNVI4Vb5DbLhTpt18FPeOf0UuqDt/J2tHI4SjZ3kjzr7Nbwpg8xGgANPNE0+2pJbwCA8YDt4g3bzfzvVafQs5o9Gfc9tudkR9ugQG1M+EWCgu42CleOwMTd/rYEB2fgNNPsZAWqwQfdPajVuk70EBKUEQSyoA09eEZX+xJN9Q==
>>>> jpmaxman at tipit.net
>>>>
>>>>
>>>>
>>>>
>>>> J.P. Maxwell / tipit.net <http://www.tipit.net>
>>>>
>>>>
>>>> On Fri, Feb 26, 2016 at 12:09 PM, Jimmy McArthur <jimmy at openstack.org>
>>>> wrote:
>>>>
>>>>> Super thankful for all the folks that have jumped in over the last
>>>>> couple of days to help with the puppetization, etc... I just feel like
>>>>> we're taking a very wrong approach here.
>>>>>
>>>>> Paul Belanger wrote:
>>>>>
>>>>> Right, and I don't have an issue with that approach.  Based on the work we did
>>>>> yesterday, anybody can do that via our workflow. Please submit a patch to
>>>>> puppet-mediawiki[1] and ping an infra-root in #openstack-infra IRC.
>>>>>
>>>>> What I'm proposing is the workflow is really meant for software, not
>>>>> for web applications. It's tedious and time consuming when what's needed
>>>>> here is a set of tests on the server. Submitting a patch, waiting for a +1,
>>>>> then getting on IRC to find someone with access (and time) to paste the
>>>>> logs is a pretty time consuming process for what should be a series of
>>>>> rapid-fire changes/fixes on the server. Especially when we're dealign with
>>>>> an active attack.
>>>>>
>>>>>
>>>>> We can then have somebody look at the logs.  I think it is more about scheduling
>>>>> the task since more infra-root as travling back from the mid-cycle last night
>>>>> and today.
>>>>>
>>>>> Right, this is my point. This has been going on for 3 weeks (or more).
>>>>> Tom Fifeldt was asking for help without response. And here we are through
>>>>> another week and no closer to stemming the flow.
>>>>>
>>>>> I'm fully aware what I'm proposing goes against what Infra and the
>>>>> OpenStack workflow is all about, but I'd ask you all to look at this from a
>>>>> web development perspective instead of a software development perspective.
>>>>>
>>>>> Jimmy
>>>>>
>>>>>
>>>>> Last email from me, just on a plane.  Will follow up when I land.
>>>>>
>>>>> [1] https://git.openstack.org/cgit/openstack-infra/puppet-mediawiki
>>>>>
>>>>>  J.P. Maxwell | tipit.net [http://tipit.net] | fibercove.com
>>>>> [http://www.fibercove.com]
>>>>> On Fri, Feb 26, 2016 at 11:25 AM, Paul Belanger <pabelanger at redhat.com> <pabelanger at redhat.com>
>>>>> wrote:
>>>>> On Fri, Feb 26, 2016 at 11:08:18AM -0600, Jimmy McArthur wrote:
>>>>>
>>>>> Given the state of the wiki a the moment, I think taking the quickest path
>>>>> to get it fixed would be prudent. Is there a way we can get JP root access
>>>>> to this server, even temporarily? We get 25% of our website traffic (2
>>>>> million visitors) to the wiki. I realize we're all after the same thing,
>>>>>
>>>>> but
>>>>>
>>>>> spammers are not going to hit the dev environment, so there's really no
>>>>>
>>>>> way
>>>>>
>>>>> to tell if teh problem is fixed without actually working directly on the
>>>>> production machine. This should be a 30 minute fix.
>>>>>
>>>>>
>>>>> I am still unclear what the 30min fix is. If really 30mins, then it
>>>>> shouldn't be
>>>>> hard to get the fix into our workflow. Could somebody please elaborate.
>>>>>
>>>>> If we are talking about deploying new versions of php or mediawiki manually,
>>>>> I
>>>>> not be in-favor of this. To me, while the attack sucks, we should be working
>>>>> on
>>>>> 2 fronts. Getting the help needed to mitigate the attack, then adding the
>>>>> changes into -infra workflow in parallel.
>>>>>
>>>>>
>>>>> I realize there is a lot of risk in giving ssh access to infra machines,
>>>>>
>>>>> but
>>>>>
>>>>> I think it's worth taking a look at either putting this machine in a place
>>>>> where a different level of admin could access it without giving away the
>>>>> keys to the entire OpenStack infrastructure or figuring out a way to set
>>>>>
>>>>> up
>>>>>
>>>>> credentials with varying levels of access.
>>>>>
>>>>>
>>>>> As a note, all the work I've been doing to help with the attack hasn't
>>>>> require
>>>>> SSH access for me to wiki.o.o. I did need infra-root help to expose our
>>>>> configuration safely. I'd rather take some time to see what the fixes are,
>>>>> having infra-root apply changes, then move them into puppet.
>>>>>
>>>>> It also has been discussed to simply disable write access to the wiki if we
>>>>> really want spamming to stop, obviously that will affect normal usage.
>>>>>
>>>>>
>>>>> Jimmy
>>>>>
>>>>> Paul Belanger wrote:
>>>>>
>>>>> On Fri, Feb 26, 2016 at 10:12:12AM -0600, JP Maxwell wrote:
>>>>>
>>>>> But if you wanted to upgrade everything, remove the mobile view
>>>>>
>>>>> extension,
>>>>>
>>>>> test in a dev/staging environment then deploy to production fingers
>>>>> crossed, I think that would be a valid approach as well.
>>>>>
>>>>>
>>>>> Current review up[1]. I'll launch a node tonight / tomorrow locally to
>>>>>
>>>>> see
>>>>> how
>>>>>
>>>>> puppet reacts. I suspect there will be some issues.
>>>>>
>>>>> If infra-roots are fine with this approach, we can use that box to test
>>>>>
>>>>> against.
>>>>>
>>>>> [1] https://review.openstack.org/#/c/285405/
>>>>>
>>>>> J.P. Maxwell | tipit.net | fibercove.com
>>>>> On Feb 26, 2016 10:08 AM, "JP Maxwell"<jp at tipit.net> <jp at tipit.net> wrote:
>>>>>
>>>>>
>>>>> Plus one except in this case it is much easier to know if our efforts
>>>>>
>>>>> are
>>>>>
>>>>> working on production because the spam either stops or not.
>>>>>
>>>>> J.P. Maxwell | tipit.net | fibercove.com
>>>>> On Feb 26, 2016 9:48 AM, "Paul Belanger"<pabelanger at redhat.com> <pabelanger at redhat.com> wrote:
>>>>>
>>>>>
>>>>> On Fri, Feb 26, 2016 at 09:18:00AM -0600, JP Maxwell wrote:
>>>>>
>>>>> I really think you might consider the option that there is a
>>>>>
>>>>> vulnerability
>>>>>
>>>>> in one of the extensions. If that is the case black listing IPs will
>>>>>
>>>>> be
>>>>>
>>>>> an
>>>>>
>>>>> ongoing wild goose chase.
>>>>>
>>>>> I think this would be easily proven or disproven by making the questy
>>>>> question impossible and see if the spam continues.
>>>>>
>>>>>
>>>>> We'll have to let an infra-root make that call. Since nobody would be
>>>>> able to
>>>>> use the wiki. Honestly, I'd rather spend the time standing up a mirror
>>>>>
>>>>> dev
>>>>>
>>>>> instance for us to work on, rather then production.
>>>>>
>>>>>
>>>>> J.P. Maxwell | tipit.net | fibercove.com
>>>>> On Feb 26, 2016 9:12 AM, "Paul Belanger"<pabelanger at redhat.com> <pabelanger at redhat.com>
>>>>>
>>>>> wrote:
>>>>>
>>>>> On Thu, Feb 25, 2016 at 08:10:34PM -0800, Elizabeth K. Joseph wrote:
>>>>>
>>>>> On Thu, Feb 25, 2016 at 6:35 AM, Jeremy Stanley<fungi at yuggoth.org> <fungi at yuggoth.org>
>>>>>
>>>>> wrote:
>>>>>
>>>>> On 2016-02-25 02:46:13 -0600 (-0600), JP Maxwell wrote:
>>>>>
>>>>> Please be aware that you can now create accounts under the mobile
>>>>> view in the wiki native user table. I just created an account for
>>>>> JpMaxMan. Not sure if this matters but wanted to make sure you
>>>>> were aware.
>>>>>
>>>>> Oh, yes I think having a random garbage question/answer was in
>>>>>
>>>>> fact
>>>>>
>>>>> previously preventing account creation under the mobile view. We
>>>>> probably need a way to disable mobile view account creation as it
>>>>> bypasses OpenID authentication entirely.
>>>>>
>>>>> So that's what it was doing! We'll have to tackle the mobile view
>>>>>
>>>>> issue.
>>>>>
>>>>> Otherwise, quick update here:
>>>>>
>>>>> The captcha didn't appear to help stem the spam tide. We'll want to
>>>>> explore and start implementing some of the other solutions.
>>>>>
>>>>> I did some database poking around today and it does seem like all
>>>>>
>>>>> the
>>>>>
>>>>> users do have launchpad accounts and email addresses.
>>>>>
>>>>>
>>>>> So, I have a few hours before jumping on my plane and checked into
>>>>>
>>>>> this.
>>>>>
>>>>> We are
>>>>> using QuestyCaptcha which according to docs, should almost be
>>>>>
>>>>> impossible
>>>>>
>>>>> for
>>>>> spammers to by pass in an automated fashion. So, either our captcha
>>>>>
>>>>> is too
>>>>>
>>>>> easy, or we didn't set it up properly. I don't have SSH on wiki.o.o
>>>>>
>>>>> so
>>>>>
>>>>> others
>>>>> will have to check logs. I did test new pages and edits, and was
>>>>>
>>>>> promoted
>>>>>
>>>>> by
>>>>> captcha.
>>>>>
>>>>> As a next step, we might need to add additional apache2
>>>>>
>>>>> configuration
>>>>>
>>>>> to
>>>>>
>>>>> blacklist IPs. I am reading up on that now.
>>>>>
>>>>>
>>>>> --
>>>>> Elizabeth Krumbach Joseph || Lyz || pleia2
>>>>>
>>>>> _______________________________________________
>>>>> OpenStack-Infra mailing listOpenStack-Infra at lists.openstack.org
>>>>>
>>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
>>>>> _______________________________________________
>>>>> OpenStack-Infra mailing listOpenStack-Infra at lists.openstack.org
>>>>>
>>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
>>>>>
>>>>> _______________________________________________
>>>>> OpenStack-Infra mailing listOpenStack-Infra at lists.openstack.orghttp://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
>>>>>
>>>>> _______________________________________________
>>>>> OpenStack-Infra mailing listOpenStack-Infra at lists.openstack.orghttp://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
>>>>>
>>>>> _______________________________________________
>>>>> OpenStack-Infra mailing listOpenStack-Infra at lists.openstack.orghttp://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> OpenStack-Infra mailing list
>>>> OpenStack-Infra at lists.openstack.org
>>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
>>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-infra/attachments/20160227/97dd7114/attachment-0001.html>


More information about the OpenStack-Infra mailing list