Ataque hacker ao issues.apache.org

noplace

Há alguns meses, comentamos sobre a senha de seu email e porque mantê-la segura, muito segura. Ocorrido durante a semana passada, um ataque ao site de bugs da mais famosa organização open-source reforça este apelo.

Supõe-se que um site como o issues.apache.org seja um exemplo de segurança da informação. E é de fato. Os sistemas estão sempre atualizados e as políticas de segurança são bem seguidas. Mesmo assim, isso não evitou que um grupo de hackers tivesse acesso de root ao servidor. Tudo começou com um XSS (cross-site scripting) no Jira usando uma tinyurl e acabou com indisponibilidade dos serviços e comprometimento dos dados dos usuários.

O resultado é que os meliantes hoje têm posse da base de usuários do Jira, contendo email e hash da senha de milhares de usuários. Se você tinha um usuário no Jira da Apache, usava uma senha boba (ex.: shelovesyou, baseada em palavras de dicionário ou números simples) e tem a mesma senha em seu email, é possível que sua conta já esteja em outras mãos.

A diferença aqui é que ficamos sabendo. Por ser uma fundação totalmente aberta e transparente, a Apache divulgou o passo-a-passo do que foi feito em seus servidores, como forma de explicação e de evitar novas ocorrências. Aquele sitezinho Web 2.0 que você faz coisas Web 2.0 provavelmente não será tão nobre e você não ficará sabendo que sua senha (porque aquele sitezinho provavelmente não usa nem MD5) está à solta por aí.

Bem, o objetivo não é dar lição de moral, nem me é permitido pela coerência. Comecei a escrever mesmo para compartilhar o relato do incidente. A Fundação Apache fez um resumo claro e didático da invasão, que pode ser lido neste link. É interessante porque não é comum encontrar uma descrição assim. Cito um trecho aqui, grifado por mim:

feather-small

On April 5th, the attackers via a compromised Slicehost server opened a new issue, INFRA-2591. This issue contained the following text:

ive got this error while browsing some projects in jira http://tinyurl.com/XXXXXXXXX [obscured]

Tinyurl is a URL redirection and shortening tool. This specific URL redirected back to the Apache instance of JIRA, at a special URL containing a cross site scripting (XSS) attack. The attack was crafted to steal the session cookie from the user logged-in to JIRA. When this issue was opened against the Infrastructure team, several of our administators clicked on the link. This compromised their sessions, including their JIRA administrator rights.

At the same time as the XSS attack, the attackers started a brute force attack against the JIRA login.jsp, attempting hundreds of thousands of password combinations.

On April 6th, one of these methods was successful. Having gained administrator privileges on a JIRA account, the attackers used this account to disable notifications for a project, and to change the path used to upload attachments. The path they chose was configured to run JSP files, and was writable by the JIRA user. They then created several new issues and uploaded attachments to them. One of these attachments was a JSP file that was used to browse and copy the filesystem. The attackers used this access to create copies of many users’ home directories and various files. They also uploaded other JSP files that gave them backdoor access to the system using the account that JIRA runs under.

By the morning of April 9th, the attackers had installed a JAR file that would collect all passwords on login and save them. They then sent password reset mails from JIRA to members of the Apache Infrastructure team. These team members, thinking that JIRA had encountered an innocent bug, logged in using the temporary password sent in the mail, then changed the passwords on their accounts back to their usual passwords.

One of these passwords happened to be the same as the password to a local user account on brutus.apache.org, and this local user account had full sudo access. The attackers were thereby able to login to brutus.apache.org, and gain full root access to the machine. This machine hosted the Apache installs of JIRA, Confluence, and Bugzilla.

Once they had root on brutus.apache.org, the attackers found that several users had cached Subversion authentication credentials, and used these passwords to log in to minotaur.apache.org (aka people.apache.org), our main shell server. On minotaur, they were unable to escalate privileges with the compromised accounts.

About 6 hours after they started resetting passwords, we noticed the attackers and began shutting down services. We notified Atlassian of the previously unreported XSS attack in JIRA and contacted SliceHost. Atlassian was responsive. Unfortunately, SliceHost did nothing and 2 days later, the very same virtual host (slice) attacked Atlassian directly.

We started moving services to a different machine, thor.apache.org. The attackers had root access on brutus.apache.org for several hours, and we could no longer trust the operating system on the original machine.

By April 10th, JIRA and Bugzilla were back online.

On April 13th, Atlassian provided a patch for JIRA to prevent the XSS attack. See JRA-20994 and JRA-20995 for details.

Our Confluence wiki remains offline at this time. We are working to restore it.

Fiquei sabendo disso através de um email que começava assim:

De: <root@apache.org>
Dear Joao Del Valle,
You are receiving this email because you have a login, [suprimido], on the Apache JIRA installation, https://issues.apache.org/jira/…

Mas sem problemas, minha senha era bem boba, só para consultar e comentar issues. E a sua?

Esta entrada foi publicada em etc. Adicione o link permanente aos seus favoritos.

Deixe uma resposta

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.