Corte em 60 segundos ou loucura em quarentena

Uma breve história sobre um cliente inadequado e a descoberta de uma vulnerabilidade em um site em 1 minuto .

imagem

Não esperava que essa história em particular fosse meu primeiro artigo sobre Habré. Estou escrevendo enquanto está quente!

Tudo o que você lê mais adiante não é um plano de ação ou uma tentativa de "comprometer" ninguém.

5 de abril de 2020.
Vi uma mensagem no linkedin : “Boa tarde. Estamos à procura de um desenvolvedor para finalizar o projeto no yii2 ... tel: + 79 ... whatsapp "

Publicado em whatsapp :" Bom dia. Sou do linkedin, envie TK, se houver.
Em resposta, ele recebeu uma mensagem enorme com links para o site, um quadro no Trello e um pequeno TK.

imagem

Estudou violoncelo . Segundo o conselho, pelo menos 4 desenvolvedores trabalharam no projeto.

6 de abril de 2020

Devido à quarentena, na minha opinião, as pessoas estão começando a enlouquecer. Aqui está o que eu vi no whatsapp quando acordei:

imagem

Tudo parece não ser nada, leia e esqueci. Mas algo dentro não dava descanso, havia uma sensação de incompletude, da qual eu realmente queria me livrar.

Não havia mais nada a não ser entrar no projeto do “agressor” e livrar-se das sensações desagradáveis ​​dentro de: D.

A contagem regressiva começou.

00:00 Eu

abro o site.

Eu vejo o formulário de pesquisa e tento verificar a injeção de SQL que eu conhecia anteriormente :

' UNION SELECT
1,group_concat(username,0x7c,password),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
fRom user-- -

Como esperado - não funciona , mas valeu a pena tentar.

00:20

O site tem a oportunidade de se registrar de duas maneiras: como usuário e como empresa .

Com base nas capturas de tela vistas no trello , decidi me registrar e trabalhar com a conta pessoal da empresa .

Preencha os campos em que a frente permite as linhas

SELECT * FROM users;

Apenas para aprimorar o "efeito de presença" dos desenvolvedores quando eles examinam o banco de dados.

00:40

Após o registro bem-sucedido, seremos redirecionados para a página de perfil da empresa .
Abra o item de menu "Carregar documentos" (muito conveniente, não é: D) e tente carregar o arquivo php .

imagem

Primeiro baixei o adminer.php , como estava disponível. O arquivo foi carregado com sucesso e os desenvolvedores prepararam cuidadosamente para mim um redirecionamento para a página com um link para o arquivo.

imagem

Ele foi aberto pelo link: /upload/certified/15861775921.phpe funcionou corretamente.

Aquele foi o começo do fim!

1:00

Em seguida, carregue o php-web-shell mais simples através do mesmo formulário.

Primeiro você precisa entender quem somos e onde estamos:

pwd && whoami

imagem

Vamos ver a lista de arquivos do diretório do site:

ls /var/www/admin/data/www/_/

imagem

Vemos a estrutura padrão da estrutura Yii2 , que esperávamos lá.

Temos acesso ao banco de dados, que pode ser inserido no adminer.php carregado anteriormente :

cat /var/www/admin/data/www/_/config/db.php

imagem

De fato, fiquei surpreso que essas vulnerabilidades ainda existam. E ainda mais porque eles podem ser encontrados com tanta facilidade e rapidez.

A propósito, este foi um projeto de uma empresa dos Emirados Árabes Unidos, que atua no fornecimento de produtos industriais e de perfuração para as indústrias de petróleo, gás e perfuração.

Fui adicionado à lista negra no whatsapp após a última mensagem e não consegui falar sobre a vulnerabilidade, então deixei os ovos de Páscoa no servidor para desenvolvedores.

Lembre-se de fazer verificações de tipo de arquivo no servidor e geralmente preste mais atenção à segurança do seu código!

All Articles