HOHOHO!! Papai Noel deu belos presentes de natal para o Zone-H: Análise da Invasão

23/12/2006 Written by Roberto Preatoni (SyS64738)

evilsantaComo todos sabem, o site do Zone-​H ver­são inglesa, foi inva­dido durante a noite do dia 21 para 22 de Dezem­bro. Este foi um ataque bem elab­o­rado (como a maio­ria dos ataques con­tra o Zone-​H), começando por explo­rar o fator humano. E ter­e­mos o prazer de explicar como a sua segu­rança pode estar com­pro­metida por bugs em serviços de ter­ceiros (Hot­mail), com uma falha de XSS, que é con­sid­er­ada estúp­ida por alguns administradores.

O mais engraçado foi que o ataque foi na hora em que os mem­bros do Zone-​H estavam reunidos em um jan­tar para comem­o­rar o Natal e dis­cutindo sobre segu­rança e políti­cas de backup.

Tudo começou no dia 17 de Dezembro…

Dez. 17 – Primeiro passo: O cracker decide atacar um dos colab­o­radores do Zone-​H (não ire­mos dizer o nome dele, ape­nas chamá-​lo de ALVO, o qual não tinha acesso total ao sis­tema do Joomla), cli­cando na opção “Esqueci minha senha”, o servi­dor do Zone-​H man­dou uma nova senha para o endereço de e-​mail do ALVO, um endereço de e-​mail do Hotmail.

Dez. 17 – Segundo passo: O ata­cante usando de uma falha con­hecida em serviços do Hot­mail e MSN pegou o cookie da sessão de e-​mail deste mem­bro pela falha de XSS. Como solic­i­tou uma senha nova o cracker leu a nova senha ger­ada pelo sis­tema do Joomla.

Dez 17 – Ter­ceiro passo: Obtendo a senha de acesso ao sis­tema do Joomla, o cracker gan­hou acesso como out­ros mem­bros para enviar notí­cias e ima­gens (mas não publicá-​las). Com este priv­ilé­gio de enviar arti­gos com ima­gens ele pub­li­cou uma notí­cia como se fosse uma invasão. Mas não fun­cio­nou, por que a página podia ser vista ape­nas pelos admin­istradores, por este motivo nos­sos robôs de mir­ror não con­seguiram efe­t­uar a cópia. Como não tinha nen­huma mir­ror da pseudo-​defacement e era visível ape­nas para nos­sos admin­istradores, decidi­mos não pub­licar esta entrada em nossa base de dados e desati­va­mos o usuário deste colaborador.

Dez. 18 – Quarto passo: Como o cracker não con­seguiu pub­licar a invasão, mas tinha pre­vi­a­mente envi­ado a noti­cia com a imagem, a qual con­tin­u­ava arquiv­ada na pasta de ima­gens, a qual foi noti­fi­cada pelo defacer. Então nosso robô aceitou este endereço e efe­tuou a cópia de invasão e então reg­is­tramos o ataque.
Depois de atacar o usuário do Zone-​H e envi­ado os arquivos, final­mente ele desco­briu uma maneira de tornar isto visível ao mundo. Tra­balho real­izado com sucesso foi pub­li­cado e demos uma “estrela” (usada para mar­car sites famosos).

Dez. 21 – Quinto passo: Pen­samos que o ataque tinha ter­mi­nado por quê a “invasão” estava arquiv­ada. Mas durante o primeiro ataque ele enviou não ape­nas a imagem, mas tam­bém um arquivo php mali­cioso (uma ver­gonha para nós por não encon­trar, mas agora é natal, e esta­mos todos ocu­pa­dos com­prando pre­sente…). O defacer não sabia como usar a shell, pois a política de segu­rança do Zone-​H blo­queava a exe­cução tanto dire­ta­mente quando pela frame de um ataque. Durante os dias 1718 o defacer se inte­grou do sis­tema de admin­is­tração do front-​end (uma mis­tura de módu­los padrões com out­ros cri­a­dos por nós). Um destes módu­los era o JCE de edição de con­teúdo o qual con­tém uma falha de segu­rança no parâmetro “plu­gin” e “file” na página jpe.php que não é ade­quada­mente ver­i­fi­cado e per­mite a inclusão de arquivos locais.

Ele então desco­briu como mover esta shell PHP e torna-​la pos­sível para usar.

– — [21/Dec/2006:23:23:15 +0200] “GET

/index2.php?act=img&img=ext_cache_94afbfb2f291e0bf253fcf222e9d238e_87b12a3d14f4b97bc1b3cb0ea59fc67a

HTTP/1.0404 454

“http://www.zone-h.org/index2.php?option=com_jce&no_html=1&task=plugin&plugin=..<>/<…<///..<////..<////..<////..<////files/images/food/x

&file=defi1_eng.php.wmv&act=ls&d=/var/www/cache/&sort=0a”

“Mozilla/4.0 (com­pat­i­ble; MSIE 6.0; Win­dows NT 5.1; SV1; .NET CLR 1.0.3705)”

 

e pouco depois:
– — [21/Dec/2006:23:23:59 +0200] “GET

/index2.php?option=com_jce&no_html=1&task=plugin&plugin=..<>/<…<///..<////..<////..<////..<////files/images/food/x&file=defi1_eng.php.wmv

&act=ls&d=/var/www/cache/cacha/&sort=0a

HTTP/1.0200 3411 “-” “Mozilla/4.0 (com­pat­i­ble; MSIE 6.0; Win­dows NT 5.1; SV1; .NET CLR 1.0.3705)”

212.138.64.176 – — [21/Dec/2006:23:25:03 +0200] “GET /cache/cacha/020.php

HTTP/1.0200 4512 “-” “Mozilla/4.0 (com­pat­i­ble; MSIE 6.0; Win­dows NT 5.1; SV1; .NET CLR 1.0.3705)”

Dez 21 – Sexto Passo: O defacer explo­rando esta falha de inclusão de arquivos locais no com­po­nente JCE, usou o arquivo PHP até então desnecessário, para criar um novo diretório (var/​www/​cache/​cacha) e criou uma nova shell (020.php) e criou um novo arquivo espe­cial .htac­cess neste diretório para desati­var o mod_​security.

Dez 21 – Sétimo passo: O defacer com esta nova shell PHP, sem nen­huma restrição porque o mod_​security estava desati­vado, con­seguiu mod­i­ficar o arquivo configuration.php e inserir os códi­gos da página HTML.

- - [22/Dec/2006:01:05:15 +0200] “POST

“http://www.zone-h.org/cache/cacha/020.php?act=f&f=configuration.php&ft=edit&d=%2Fvar%2Fwww%2F

“Mozilla/5.0 (Win­dows; U; Win­dows NT 5.1; ar; rv:1.8.0.9) Gecko/​20061206

Firefox/1.5.0.9

/cache/cacha/020.php?act=f&f=configuration.php&ft=edit&d=%2Fvar%2Fwww%2F

HTTP/1.0200 4781

Muito bem, nada a dizer! Agora o ataque era real. Um longo tempo havia se pas­sado desde o último ataque real con­tra o Zone-​H (em 2002), todas as out­ras invasões depois disso era por sen­has roubadas (social engi­neer­ing con­tra um de nos­sos muitos e muitos colab­o­radores) e esta sig­nifi­cou uma ele­vação de priv­ilé­gios usando o sis­tema admin­is­tra­tivo de login, graças primeira­mente ao nosso (estúpido) membro.

Vamos fazer uma breve reca­pit­u­lação de onde erramos:

1° Ter um mem­bro que não é inteligente o bas­tante para recon­hecer um ataque de XSS no Hotmail.

2° Não ver­i­ficar todos os arquivos que foram envi­a­dos, como a shell php. O Zone-​H tem mais de 80 GB de dados, mas isto não é desculpa.

3° Não aplicar as dev­i­das cor­reções no com­po­nente JCE que tinha prob­lema (e todos nós vive­mos lendo toneladas de avi­sos de segu­rança todos os dias…)

Onde não erramos:

Usar um CMS Open Source como o Joomla. Todos os CMS têm bugs e assu­mindo que ninguém tem tempo sufi­ciente de pro­gra­mar seu próprio CMS (tem uma idéia de quanto tempo irá demorar?) e mesmo assim você seria vul­nerável, como éramos vul­neráveis no antigo site, um CMS total­mente escrito pelo Zone-​H (no qual os defac­ers nunca tiveram nen­huma noção de como invadir ou explo­rar as fal­has, mas tín­hamos várias delas…). Esta é minha opinião pes­soal, mas alguns mem­bros do Zone-​H são a favor de um CMS Open Source out­ros são rad­i­cal­mente contra.

Como segundo pre­sente do Papai Noël, recebe­mos uma grande doze de ataque de DDoS de pes­soas que não que­ria que nosso site fosse visto inva­dido (mas por quê não? A inter­net não é um local seguro, e o Zone-​H está aqui para mostrar isto, e acima de tudo, até nossa própria invasão…).

Isto foi o Zone-​H hoje. Nós dese­jamos a todos vocês um Feliz Natal (até para o defacer, que efe­tuou um ataque muito bem elab­o­rado, parabéns a ele, e dese­jamos que ele coloque todas estas habil­i­dades demon­stradas para realizar algo líc­ito como um pen­test e não mais defaces).

PS: Esta cópia da invasão não foi salva, pois o domínio da invasão (zone​-​h​.org) tinha sido noti­fi­cado 3 dias antes e nosso sis­tema não aceita noti­fi­cação de ataque de um mesmo domínio em menos de 6 meses. Mas vocês podem ver o ataque que era o mesmo de nossa home­page nos sites forum​.zone​-​h​.org/.net/.com/ os quais foram noti­fi­ca­dos e arquivados.

Gostaríamos de infor­mar que nas próx­i­mas sem­anas as pub­li­cações de notí­cias e invasões serão um pouco lenta, pois a maio­ria de nos­sos mem­bros estarão de férias. Gostaríamos tam­bém que a quan­ti­dade de invasões noti­fi­cadas este ano no período de natal fosse um pouco menor, mas a maio­ria dos defac­ers, como de cos­tume inva­dem mil­hares de sites nesta época.
Por quê não tiram umas férias REAIS, longe do teclado, e longe dos prob­le­mas cau­sa­dos pelas suas ativi­dades ilíc­i­tas?
Vamos aproveitar a vida real “offline” (muitas garo­tas lin­das estão esperando vocês…).

Agradec­i­men­tos espe­ci­ais ao grande Siegfried (Kevin Fer­nadez da França) pela análise forense do ataque.

zone-h-defaced


Share this content: