sexta-feira, 4 de dezembro de 2015

Gartner lista dez tendências tecnológicas de alto impacto para 2016


O Gartner ligou sua bola de cristal e liberou previsões tecnológicas para 2016. A consultoria listou dez tendências que possuem potencial de influenciar significativamente as organizações em um horizonte de doze meses.
Fatores que denotam o impacto desses conceitos incluem a elevada possibilidade de interferência nos negócios, nos usuários finais ou na TI; a necessidade de grande investimento; ou o risco de ser tarde demais para adotá-lo. Na visão de analistas, essas tecnologias afetam os planos, os programas e as iniciativas das empresas em longo prazo.
As três primeiras apostas do Gartner abordam a fusão dos mundos físico e virtual e o surgimento da malha digital. “Enquanto as organizações se concentram nos mercados digitais, o negócio algorítmico está surgindo – e logo essas relações e interligações definirão o futuro dos negócios”, afirma.
De acordo com a consultoria, no mundo algorítmico, muitas coisas acontecem em um plano em que as pessoas não estão diretamente envolvidas. Isso é possibilitado por máquinas inteligentes, abordadas pelas três tendências seguintes.
As quatro últimas tendências apresentadas se referem à nova realidade de TI, com a arquitetura e a plataforma de tendências necessárias para apoiar os negócios digitais e algorítmico.
1. Malha de dispositivos – O termo ‘malha de dispositivos’ refere-se a um extenso conjunto de pontos utilizados para acessar aplicativos e informações ou para interagir com pessoas, redes sociais, governos e empresas. Ele inclui dispositivos móveis, wearables (tecnologias para vestir), aparelhos eletrônicos de consumo e domésticos, dispositivos automotivos e ambientais – tais como os sensores da Internet das Coisas (IoT).
“O foco está no usuário móvel, que é cercado por uma malha de dispositivos que se estende muito além dos meios tradicionais”, diz David Cearley, vice-presidente do Gartner. Segundo ele, embora os dispositivos estejam cada vez mais ligados a sistemas back-end por meio de diversas redes, eles muitas vezes operam isoladamente. Como a malha evolui, esperamos que surjam modelos de conexão para expandir e aprimorar a interação cooperativa entre os dispositivos.
2. Experiência ambiente-usuário – A malha de dispositivos estabelece a base para uma nova experiência de usuário contínua e de ambiente. Locais imersivos, que fornecem realidade virtual e aumentada, possuem potencial significativo, mas são apenas um aspecto da experiência. A vivência ambiente-usuário preserva a continuidade por meio das fronteiras da malha de dispositivos, tempo e espaço. A experiência flui regularmente em um conjunto de dispositivos de deslocamento e canais de interação, misturando ambiente físico, virtual e eletrônico, ao passo que o usuário se move de um lugar para outro.
“Projetar aplicativos móveis continua sendo um importante foco estratégico para a empresa. No entanto, o projeto objetiva fornecer uma experiência que flui e explora diferentes dispositivos, incluindo sensores da Internet das Coisas e objetos comuns, como automóveis, ou mesmo fábricas. Projetar essas experiências avançadas será um grande diferencial para fabricantes independentes de software (ISVs) e empresas similares até 2018”, afirma Cearley.
3. Impressão 3D – Os investimentos em impressão 3D (três dimensões) já possibilitaram o uso de uma ampla gama de materiais, incluindo ligas avançadas de níquel, fibra de carbono, vidro, tinta condutora, eletrônicos, materiais farmacêuticos e biológicos. Essas inovações estão impulsionando a demanda do usuário, e as aplicações práticas estão se expandindo para mais setores, incluindo o aeroespacial, médico, automotivo, de energia e militar. A crescente oferta de materiais conduzirá a uma taxa de crescimento anual de 64,1% em carregamentos de impressoras 3D empresariais até 2019. Esses avanços exigirão uma reformulação nos processos de linha de montagem e na cadeia de suprimentos.
“Ao longo dos próximos 20 anos, a impressão 3D terá uma expansão constante dos materiais que podem ser impressos, além do aprimoramento da velocidade com que os itens podem ser copiados e do surgimento de novos modelos para imprimir e montar peças”, estima o analista.
4. Informação de tudo – Tudo na malha digital produz, utiliza e transmite informação. Esses dados vão além da informação textual, de áudio e de vídeo, incluindo informações sensoriais e contextuais. O termo ‘informação de tudo’ aborda essa afluência com estratégias e tecnologias para conectar dados de todas essas diferentes fontes.
A informação sempre existiu em toda parte, mas muitas vezes isolada, incompleta, indisponível ou ininteligível. Os avanços nas ferramentas semânticas, como bancos de dados de gráfico e outras técnicas de análise de classificação e de informação emergente, trarão significado para o dilúvio, muitas vezes caótico, de informações.
5. Aprendizagem avançada de máquina – No aprendizado avançado de máquina, as Redes Neurais Profundas (DNN) movem-se além da computação clássica e da gestão da informação, criando sistemas que podem aprender a perceber o mundo de forma autônoma.
As múltiplas fontes de dados e a complexidade da informação tornam inviáveis e não rentáveis a classificação e a análise manual. As DNNs automatizam essas tarefas e possibilitam a abordagem de desafios-chave relacionados a tendências.
As DNNs são uma forma avançada de aprendizado de máquina particularmente aplicável a conjuntos de dados grandes e complexos, e fazem equipamentos inteligentes aparentarem ser ‘inteligentes’. Elas permitem que sistemas de hardware ou baseados em software aprendam por si mesmos todos os recursos em seu ambiente, desde os menores detalhes até grandes classes abstratas de conteúdo de varredura.
Essa área está evoluindo rapidamente, e as organizações devem avaliar como aplicar essas tecnologias para obter vantagem competitiva.
6. Agentes e equipamentos autônomos – O aprendizado de máquina dá origem a um espectro de implementações de equipamentos inteligentes – incluindo robôs, veículos, Assistentes Pessoais Virtuais (APV) e assessores inteligentes –, que atuam de forma autônoma ou, pelo menos, semi autônoma. Embora os avanços em máquinas inteligentes físicas, como robôs, chamem a atenção, elas, quando baseadas em software apresentam um retorno mais rápido e impacto mais amplo.
Assistentes Pessoais Virtuais como o Google Now, o Cortana da Microsoft e o Siri da Apple estão se tornando mais inteligentes e são precursores de agentes autônomos. O surgimento da noção de assistência alimenta a experiência usuário-ambiente, no qual um agente autônomo se torna a interface com o usuário principal. Em vez de interagir com menus, formulários e botões em um smartphone, o indivíduo fala com um aplicativo, que é realmente um agente inteligente.
“Ao longo dos próximos cinco anos evoluiremos para um mundo pós-aplicativos, com agentes inteligentes fornecendo ações e interfaces dinâmicas e contextuais. Os líderes de TI devem explorar como usar equipamentos e agentes autônomos para aumentar a atividade, permitindo que as pessoas façam apenas os trabalhos que humanos podem fazer. No entanto, eles devem reconhecer que agentes e equipamentos inteligentes são um fenômeno de longo prazo, que evoluirá continuamente e expandirá seus usos nos próximos 20 anos”, projeta o vice-presidente do Gartner.
7. Arquitetura de segurança adaptativa – As complexidades dos negócios digitais e a economia algorítmica, combinadas com uma ‘indústria hacker’ emergente, aumentam significativamente a superfície de ameaça às organizações. Basear-se no perímetro de defesa fundamentado em regras é pouco, especialmente pelo fato de que as empresas exploram muitos serviços baseados em nuvem e Interfaces de Programação de Aplicação (API) abertas para clientes e parceiros de integração com seus sistemas.
Os líderes de TI devem concentrar-se em detectar e responder às ameaças, assim como no bloqueio mais tradicional e em outras medidas para prevenir ataques. A autoproteção de aplicativos e a análise de comportamento de usuários e entidades ajudarão a cumprir a arquitetura de segurança adaptativa.
8. Arquitetura de sistema avançado – A malha digital e as máquinas inteligentes requerem demandas intensas de arquitetura de computação para torná-las viáveis para as organizações. Isso aciona um impulso em arquitetura neuro mórfica ultra eficiente e de alta potência. Alimentada por matrizes de Portas Programáveis em Campo (FPGA) como tecnologia subjacente, ela possibilita ganhos significativos, como a execução em velocidades de mais de um teraflop com alta eficiência energética.
“Sistemas construídos em Unidades de Processamento Gráfico (GPU) e FPGAs funcionarão como cérebros humanos, particularmente adequados para serem aplicados à aprendizagem profunda e a outros algoritmos de correspondência de padrão usados pelas máquinas inteligentes. A arquitetura baseada em FPGA possibilitará uma maior distribuição de algoritmos em formatos menores, usando consideravelmente menos energia elétrica na malha de dispositivo e permitindo que as capacidades avançadas de aprendizado da máquina sejam proliferadas nos mais ínfimos pontos finais da Internet das Coisas, tais como residências, carros, relógios de pulso e até mesmo seres humanos”, afirma Cearley.
9. Aplicativo de rede e arquitetura de serviço – Designs monolíticos de aplicação linear, como arquitetura de três camadas, estão dando lugar a uma abordagem integrativa de acoplamento mais informal: aplicativos e serviços de arquitetura. Ativada por serviços de aplicativos definidos por software, essa nova abordagem permite desempenho, flexibilidade e agilidade como as da web.
A arquitetura de micros serviços é um padrão emergente para a criação de aplicações distribuídas, que suportam o fornecimento ágil e a implantação escalável tanto no local quanto na cloud. Contêineres estão emergindo como uma tecnologia essencial para permitir o desenvolvimento e a arquitetura de micros serviços ágeis. Levar elementos móveis e de IoT para a arquitetura de aplicativos cria um modelo abrangente para lidar com a escalabilidade em nuvem de back-end e a experiência de malha de dispositivos de front-end.
Equipes de aplicativos devem criar arquiteturas modernas para fornecer utilitários baseados em nuvem que sejam ágeis, flexíveis e dinâmicos, com experiências de usuário também ágeis, flexíveis e dinâmicas abrangendo a malha digital.
10. Plataformas de Internet das Coisas (IoT) – As plataformas de IoT complementam o aplicativo de rede e a arquitetura de serviço. Gerenciamento, segurança, integração e outras tecnologias e padrões da plataforma são um conjunto básico de competências para elementos de criação, gestão e fixação na Internet das Coisas.
Essas plataformas constituem o trabalho que a equipe de TI faz nos bastidores, de um ponto de vista arquitetônico e tecnológico, para tornar a IoT uma realidade. A Internet das Coisas é parte da malha digital, que inclui a experiência do usuário, e o ambiente do mundo emergente e dinâmico das plataformas é o que a torna possível.
“Qualquer empresa que adote a IoT precisará desenvolver uma estratégia de plataforma, porém abordagens incompletas de provedores concorrentes dificultarão sua implementação até 2018”, projeta Cearley.
Fonte: Computerworld

quinta-feira, 26 de novembro de 2015

Lei de Brooks

Segundo Jeff Sutherland.

...Para simplificar, ele diz que “acrescentar mais gente em um projeto de software atrasado resulta em um atraso ainda maior”. Isso já foi demonstrado em vários estudos. Lawrence Putnam é uma figura lendária na indústria de desenvolvimento de software e tornou sua missão de vida estudar quanto tempo as coisas demoram para ser feitas e por quê. Seu trabalho sempre demostrou que projetos com vinte ou mais pessoas precisavam de mais esforço do que aqueles que contavam com cinco ou menos. 

Não era só um pouco mais, mas muito mais. Uma equipe grande levaria cinco vezes mais horas do que a equipe pequena para realizar o mesmo trabalho. Ele viu isso repetidas vezes, em meados da década de 1990, decidiu tentar realizar um estudo amplo para determinar o tamanho certo de uma equipe. Ele analisou 491 projetos de médio porte em centenas de empresas diferentes; todos exigiam a criação de produtos novos ou novas funcionalidades. 

Lawrence dividiu os projetos de acordo com o tamanho das equipes e logo notou que se uma equipe ficava com mais de 8 membros, ela passava a levar muito mais tempo para realizar seu trabalho. Grupos de três a sete pessoas precisavam de 25% menos esforço do que os de nove a doze pessoas para realizar o mesmo trabalho...

Autor: Frederick P. Brooks Jr.
Experiência: Gerente de projeto no System e OS/360 da IBM.
Anos: 1975, 1986, 1995
Quantidade de capítulos: 19

Ele é uma mistura de fatos sobre Engenharia de SW e opiniões com a visão do autor para a gestão de projetos complexos.

“Leitura obrigatória para todos os gerentes de projeto de Software”.

quarta-feira, 4 de novembro de 2015

SCRUM - Shu HA RI

Shu Ha Ri



O Scrum tem suas raízes no pensamento e na prática japonesas. 

Nas artes marciais aprende-se um conceito Shu Ha Ri, que se refere a diferentes níveis de habilidade. No estado Shu, você conhece todas as regras e formas. As quais deve repetir, como passos de uma dança, em resumo você nunca se distrai.

No estado Ha, quando as formas já estiverem dominadas, você poderá fazer inovações.

No estado Ri você será capaz de descartar formas, já terá dominado totalmente a prática e poderá ser livremente criativo.

O Scrum é bem parecido com isso, exige prática e atenção, mas também um esforço contínuo para chegar a um novo estado no qual as coisas apenas fluem para que todo o resto aconteça.

Pontos principais:

  • Hesitação é a morte - Observe, avalie, decida, aja. Saiba onde está, avalie as opções, tome uma decisão e aja!!!
  • Procure respostas -  Sistema adaptativos complexos seguem algumas regras simples, que aprendem a partir do ambiente em que se encontram;
  • Grandes equipes – São multifuncionais, autônomas, capazes de tomar decisões e motivadas por um objetivo transcendente.
  • Não adivinhe – Planeje (Plan – P), Faça (Do –D), Verifique (Check – C) e Aja (Act – A) Planeje o que irá fazer. Verifique se os resultados são o que desejava. Aja de acordo com as informações e faça as coisas de outra maneira. Repita em ciclos regulares e, ao fazer isso, obtenha um aprimoramento contínuo;
  • Shu Ha Ri -  Primeiro, aprenda as regras e as formas e, uma vez que as dominar, faça inovações. Por fim, em um estado elevado de domínio, descarte as formas e apenas seja – com todo o aprendizado internalizado as decisões são tomadas de forma quase inconsciente.

Livro: Scrum, A arte de fazer o dobro do trabalho na metade do tempo, Jeff Sutherland.

segunda-feira, 26 de outubro de 2015

Normas ISOs que são imprescindíveis para segurança da Informação


ISO 27041: regula sobre a conformidade para métodos de investigação de evidências digitais, sendo mais uma norma entre as disponíveis para análise forense computacional / segurança forense. 

ISO 27039: sistemas detecção de intrusos: um guia para seleção, contratação, desenho, operação e administração de sistemas IDS (Intrusion Detection Systems).

Comentários: as duas próximas normas (ISO 27037 e ISO 27038) tratam sobre segurança forense, e este tema volta a ser citado nas normas ISO 27041 e ISO 27042". Já as ISO 27038 e ISO 27039 tratam sobre ferramentas que automatizam atividades para SI.

ISO 27037: orientações para a identificação, coleta, aquisição e preservação de evidências forenses digitais. Esta norma está focada na manutenção da integridade destas evidências. Sem dúvidas, uma das normas mais relevantes para profissionais que seguem ou pretendem seguir carreira de perito forense (caso não tenha intimidade com este tema, consulte publicações no Portal como estas 04 vídeo aulas de Segurança Forense, este vídeo sobre análise de Malware em forense computacional, ou este e-book gratuito sobre Análise Forense.

ISO 27038: especificação para redação digital. Uma norma qual considero bem interessante por conta do seu grau de especifidade: trata sobre requisitos para a redação e compartilhamento da informação digital de forma adequada, seja ela publicada internamente na organização ou a partes externas.

ISO 27032: aborda “Cybersecurity”. Está em sua definição a preservação da confidencialidade, integridade e disponibilidade da informação em "Cyberspace".

sexta-feira, 25 de setembro de 2015

Discurso “Cidadania numa República” que Teddy Roosevelt, em 1910.




Trecho do discurso “Cidadania numa República” que Teddy Roosevelt em Sorbone, em 1910.


Não é o crítico que conta, não o homem que aponta como o homem forte tropeça, ou onde o executor de ações poderia ter feito melhor. O crédito pertence ao homem que está realmente na arena, com o rosto desfigurado pela poeira e suor e sangue; que se esforça corajosamente; que erra; que tenta de novo e de novo, porque não existe esforço sem erros e lacunas; mas quem realmente se esforça para fazer as obras, quem conhece grandes entusiasmos, as grandes devoções; quem consome-se em uma causa digna é quem melhor conhece, no final, o triunfo das grandes realizações; e que, na pior das hipóteses, se falhar, pelo menos não será enquanto não tiver ousado muito, de tal forma que seu lugar nunca será junto às almas frias e tímidas que não conhecem a vitória nem a derrota.

quinta-feira, 24 de setembro de 2015

ABNT NBR ISO/IEC 14598-4:2003 CANCELADA

Norma Técnica

Código ABNT NBR ISO/IEC 14598-4:2003   CANCELADA

Identica a : ISO/IEC 14598-4:1999
Data de Publicação : 30/06/2003
Válida a partir de : 30/07/2003
Título : Engenharia de software - Avaliação de produto 
Parte 4: Processo para adquirentes
Título Idioma Sec. : Software engineering - Product evaluation Part 4: Process for acquirers
Nota de Título : Confirmada em 07.01.2010
Comitê : ABNT/CB-021 Computadores e Processamento de Dados
Páginas : 32
Status : Cancelada em 02/05/2013  
Idioma : Português
Motivo do Cancelamento : Esta Norma foi cancelada devido ao cancelamento de sua equivalente na ISO.
Organismo : ABNT - Associação Brasileira de Normas Técnicas
Objetivo : Esta parte da ABNT NBR ISO/IEC 14598 contém requisitos, recomendações e orientações para a medição, julgamento e avaliação sistemática da qualidade de produto de software durante a aquisição de produtos de software de prateleira, produtos de software sob encomenda ou modificações em produtos de software existentes. Ela utiliza o modelo de qualidade de software descrito na ISO IEC 9126-1; expande-se sobre o processo geral de avaliação de qualidade de software definido na ABNT NBR ISO/IEC 14598-1; e utiliza o processo de aquisição definido na ABNT NBR ISO/IEC 12207. Pode ser usada em conjunto com as ABNT NBR ISO/IEC 12119, ABNT NBR ISO/ IEC 14598-2,ABNT NBR ISO/ IEC 14598-3 e ISO IEC 14598-6. Os passos do processo de avaliação são similares entre esta parte da ABNT NBR ISO/IEC 14598 e a ABNT NBR ISO/ IEC 14598-5, mas o contexto de uso é bem diferente. No caso do adquirente confiar a avaliação a segundas ou terceiras partes, é requerida a plicação da ABNT NBR ISO/IEC 14598-5. No caso do adquirente requisitar testes de terceira parte a pacotes de software, com relação a requisitos de qualidade para o pacote, a ABNT NBR ISO/IEC 12119 pode ser usada.


Normas Necessárias para a aplicação da ABNT NBR ISO/IEC 14598-4:2003
ABNTNBRISOIEC9126-1:2003
ISOIEC15026:1998

ICS/CIN
35.080 - Software

Palavras-Chave
Qualidade
Avaliação
Software
Tecnologia de informação

terça-feira, 15 de setembro de 2015

Removendo obstáculos

Vou fazer uma citação do livro Sistema Toyota de Produção, desenvolvido por Taiichi Ohno.
Não é exagero dizer que, em um período de crescimento lento, crise, tal desperdício seja mais um crime contra a sociedade do que uma perda nos negócios. A eliminação do desperdício deve ser o principal objetivo de uma empresa. 

terça-feira, 8 de setembro de 2015

Análise de Malware com o Framework Cuckoo SandBox

Por: 
Rangel Viotti (rangel.viotti@gmail.com)
Thiago Pereira (thiagootcm@gmail.com)
William Benthon (benthon@gmail.com)

Introdução
Com o advento da popularização do acesso à rede mundial bem como o crescimento da oferta de serviços de e-commerce, serviços públicos, redes de pesquisas acadêmicas, notícias e comunicações em geral, houve também o crescimento de ameaças e exploração de vulnerabilidades por parte de indivíduos que buscam vantagens financeiras, danos a terceiros ou simplesmente reconhecimento em sua própria comunidade “underground”.
Tais indivíduos lançam mão de seus conhecimentos em tecnologias e linguagens para criar softwares que, uma vez indevidamente baixados e/ou executados, iniciam ações quase sempre imperceptíveis aos olhos da vítima e que causam danos que vão do simples aborrecimento até perda de informações pessoais importantes. O termo “Malware” é comumente usado para referir-se a tais softwares.
No escopo do termo “Malware”, existem os temos mais conhecidos por “Vírus”,
Spyware”, “Trojan”, “Ransomware”, “Backdoor Exploiter”, “Downloader”, entre outros.
Existem vários problemas na questão da prevenção de ataques a sistemas operacionais e na ação de continuidade de negócios em qualquer nível (de usuários comuns a empresas e corporações). Entre estes, podemos citar a dinâmica quase simbiótica entre evolução das técnicas de exploração de vulnerabilidades e o uso da engenharia social que mira usuários desavisados ou descuidados.
A tarefa de manter a segurança de sistemas de informações pelo menos a um passo à frente de intrusos é constantemente posta à prova pela criatividade e determinação dos indivíduos por trás das ações criminosas. Tal dinâmica tende a se tornar um exercício de futilidade se não houver uma compreensão multidisciplinar e profunda das técnicas, linguagens e intenções que podem ser resgatadas dos arquivos e interpretadas objetivamente.

Ferramentas de Análise mais conhecidas.
O estudo de caso abaixo visar apresentar de modo prático o uso do Cuckoo SandBox para realizar a análise de Malware. Primeiramente, são mencionadas algumas ferramentas utilizadas na captura de informações da execução dos programas maliciosos. Mostra-se, também, como implementar a ferramenta Cockoo Sandbox em si .Para finalizar o projeto, os entusiastas terão a oportunidade de acompanhar um estudo de caso completo deste a instalação e configuração das ferramentas até a análise de um exemplar de Malware. Uma das abordagens da SI neste campo é a análise de Malwares através de ferramentas próprias
Abaixo, segue uma descrição das ferramentas mais comuns para a análise de Malwares.
Anubis

Anubis é uma ferramenta de análise de comportamento para Windows PE-executables (Portable executables [binários Windows]) com foco especial em análise de Malware. O uso do Anubis é baseado na geração de arquivos de relatórios contendo informações suficientes para dar ao usuário sobre o propósito e ações dos binários analisados. Os relatórios gerados incluem dados detalhados sobre modificações feitas na register do Windows ou no sistema de arquivos que incluem interações com o Windows Service Manager ou outros processos e, é claro, os logs gerados pelo tráfico na rede.
A análise é baseada na execução de um arquivo binário em um ambiente emulado e observado, i.é. analisando sua própria execução. A análise é focada em aspectos de segurança relevantes das ações dos programas que tornam o processo mais fácil porque o domínio em questão é de baixa granulação, o que permite maior precisão nos resultados. Mais informações sobre a ferramenta, acesse: http://anubis.iseclab.org/
Ether
Ether é investigação da qualidade de código. Foi testado apenas nas distribuições Debian Etch e Lenny como sistema operacional hospedeiro e Windows XP Service Pack 2 como o sistema convidado. Até o momento, o Ether não é está formatado para ser usado em ambiente de produção. Mas é adequado como ferramenta de pesquisa. Todo o código é licenciado sob a GPL. Nota: A licença GPL permanece a menos alguma nova versão cite outro tipo de licenciamento.
Para a sua implementação os seguintes pré requisitos são necessários:
Intel VT (Intel Virtualization Technology) para uma análise de malware transparente e, portanto, ser executado em “bare metal” (O termo se refere a Disco Rígido). Além disso, a máquina hospedeira precisa ter a tecnologia Intel VT (setada na Bios) e plataforma de 64 Bit. Mais informação sobre a ferramenta acesse: http://ether.gtisc.gatech.edu/source.html
Joe Sandbox

A ferramenta Joe Sandbox Desktop executa arquivos e endereços URL em um ambiente controlado e monitora o comportamento de aplicações e sistemas operacionais em busca de atividades suspeitas. Todas as atividades são compiladas em um relatório completo e abrangente.
Tais relatórios de análise contêm informações importantes sobre potenciais ameaças que subsidiam os profissionais de segurança cibernética para implantar implementar e desenvolver a estratégia defesa e proteção adequada. O foco desta ferramenta são sistemas baseados no sistema operacional Windows.

RunScanner


Trata-se de um utilitário freeware baseado em Windows que escaneia o sistema tendo como alvo todos os programas em andamento (sendo executados), arquivos autoexecutáveis locais, drivers, serviços e pontos hijack. O Runscanner pode ser usado para detectar mudanças de estado e desconfigurações do sistema causadas por spyware, vírus ou erros humanos.
Cuckoo SandBox

Trata-se de um sistema de análise de Malware que possibilita ao usuário enviar qualquer arquivo suspeito ao núcleo de análise de Malware e o sistema retorna alguns resultados detalhados descrevendo o que tal arquivo fez ou executou quando testado dentro de um ambiente controlado e isolado. O Cuckoo Sandbox gera vários dados de diferentes naturezas tais como:
      Funções nativas e rastreio de chamadas nativas na API do Windows.
      Cópias de arquivos criados e deletados do sistema de arquivos.
      Despejo de memória dos processos selecionados.
      Despejo total de memória para análise da máquina
      Captura de tela do desktop durante a análise de Malware.
      Despejo da rede gerado pela máquina usada para a análise.
Na geração de relatórios, Cuckoo processa diferentes tipos de apresentações incluindo:
      Formato JSON (Javascript Object Notation)
      Formato HTML.
      Formato MAEC (Malware Attribute Enumeration and Characterization).
      Interface MongoDB (Banco de dados escrito em Python)
      Interface HPFeeds (projeto que implementa um protocolo autenticado "peso-leve" para publicação/assinatura de datafeeds).
Mais informações sobre a ferramenta acesse: http://cuckoobox.org

Aplicação prática – parte 1

Para este trabalho foi escolhida a ferramenta Cuckoo Sandbox que, entre outras vantagens, oferece suporte a várias interfaces para a interação com o usuário, facilidade (moderada) de instalação e integração com várias bibliotecas e frameworks escritas em Python tais como:
Django - Um framework de sucesso para desenvolvimento web.
Dpkt - Biblioteca para a extração de arquivos PCAP.
Jinja2 - Biblioteca para a renderização de relatórios HTML em interface web.
Várias outras bibliotecas também serão usadas, mas só serão apresentadas durante a descrição do processo de instalação e configuração do Cuckoo Sandbox.
Hardware:
Sistema 32 bit robusto (2 ~ 4 GB de memória RAM, HD > 160 GB, etc.)
Processador Intel ou AMD (igualmente robusto)
Sistema Operacional Ubuntu LTS (é recomendável a versão 14.04 devido à presença de vários pacotes instalados por padrão)
Obs: No caso de plataformas de 64 Bit, é necessária a verificação do suporte a virtualização na Bios da placa mãe.
Instalação:
Ubuntu - No caso de uma nova instalação, habilitar o download e atualização da distribuição.
Após finalizar a instalação, seguem-se os seguintes passos:
(Nota: CT = Comando no terminal do Ubuntu. | A = Ação)
CT

sudo apt-get update && sudo apt-get dist-upgrade -y
A

 Buscar por atualizações que não foram feitas durante a instalação



CT

sudo apt-get install virtualbox
A

Instala o Oracle Virtual Box




CT

Sudo python –version
A

Retorna a versão do Python instalado *
* A versão usada é a 2.7.6. No improvável caso de não haver nenhuma versão instalada, ou ainda haver outra versão maior que a 2.XX, recomenda-se buscar orientações em sites de comunidades ou tutoriais sobre como instalar a versão necessária ou alterar a versão instalada.
CT
sudo apt-get install python-sqlalchemy python-bson
A
Instalar os pacotes Sqlalchemy; um toolkit para o Python SQL e mapeamento de objeto relacional e, o Python-Bison; um pacote para codificação e decodificação binária de conteúdo no formato JSON.
CT
sudo apt-get install python-dpkt python-jinja2 python-magic python-pymongo python-gridfs python-libvirt python-bottle python-pefile python-chardet volatility
A
Instala os seguintes complementos:
Dpkt (Altamente recomendado): para extrair informação relevante de arquivos PCAP, ou Packet Capture - captura de pacotes.
Jinja2 (Altamente recomendado): para a renderização de relatórios no formato HTML e interface web.
Magic (Opcional): para a identificação de formato de arquivos.
Pymongo (Opcional): para armazenamento de resultados no banco de dados MongoDB.
Libvirt (Opcional): para o uso do gerenciador Kernel Virtual Machine - KVM.
Bottlepy (Optional): for using the api.py or web.py utility (use release 0.10 or above). Django (Opcional): framework para apresentação de interface web (recomenda-se a versão 1.5 ou posterior).
Pefile (Opcional): para a análise estatística de binários PE32 (arquivos do MS-Windows).
Volatility (Opcional): para a análise forense de memória.
MAEC Python bindings (Opcional): para relatórios MAEC - Malware Attribute
Enumeration and Characterization (recomenda-se a versão maior que 4.0.0 e menor que 4.1).
Chardet (Opcional): para a detecção de codificação de strings.
São necessários dois pacotes adicionais a serem instalados a seguir:
O Pydeep, cuja maneira mais fácil é através do comando PIP. Este comando só estará integrado ao Python e disponível após a instalação do pacote “setup_tools”, que inclui vários outros pacotes de instalação e atualização para o Python ou através da sua instalação individual.
CT
sudo apt-get install python-pip –y
A
Adiciona o instalador ao Python.
Pydeep
CT
sudo pip install Pydeep
A
Instala o pacote Pydeep.
YARA
Para instalar o pacote YARA deve-se, primeiro, preparar o sistema através da instalação de pacotes essenciais.
CT
sudo apt-get install build-essential git python-dev libjansson-dev libmagic-dev libtool eclipse-cdt-autotools -y
A

Instala os pré requisitos (essenciais) para o pacote Yara.

Depois é necessário fazer o download do pacote mais recente em; https://github.com/plusvic/yara/releases/latest. (a versão usada aqui é a 3.2.0)
CT
tar -zxf yara-3.2.0.tar.gz

A

Descompactar o arquivo para uma pasta de nome “yara-3.2.0”





CT
cd yara-3.2.0

A

Acessa a pasta criada




CT

./bootstrap.sh


A

Inicia a coleção de ferramentas, pacotes e instruções para a instalação do pacote







CT

./configure --enable-cuckoo --enable-magic


A

Configura o pacote para usar as bibliotecas Cuckoo e python-magic








CT

make


A

Lê os arquivos de do compilador C e prepara para a instalação








CT


Sudo make install


A


Instalar o compilador C e configura as bibliotecas para serem usadas com Python







CT

cd yara-python


A

Acessa a pasta de bibliotecas yara para o python







CT

python setup.py build


A

Monta o arquivo de instalação do pacote








CT

sudo python setup.py install


A

Instala o pacote


Configurando o arquivo “tcpdump”.
O Cuckoo é executado em uma conta padrão de usuário. Para permitir que o Cuckoo acesse o arquivo tcpdump sem o acesso root, a próxima linha de comando deve ser executada no terminal:
CT
1  - sudo setcap cap_net_raw,cap_net_admin=eip
/usr/sbin/tcpdump
2  - getcap /usr/sbin/tcpdump
A
Permite o acesso do usuário admin ao arquivo tcpdump
Para verificar o êxito, a seguinte mensagem deve ser exibida a seguir:
/usr/sbin/tcpdump = cap_net_admin,cap_net_raw+eip

Aplicação prática – parte 2

Instalar o Cuckoo Sandbox.
A última parte é a instalação do Cuckoo SandBox. Esta etapa é bastante simples em si. Escolha um local aonde queira instalar (neste caso será criada a pasta “~/Bin”:
Nota: Caso ainda esteja na pasta “yara-python” – e não queira instalar o Cuckoo nesta, retorne ao diretório raiz e execute os próximos passos.
CT

mkdir ~/bin
A

Cria uma sub pasta “bin”




CT

cd ~/bin
A

Acessa a pasta



CT

wget http://downloads.cuckoosandbox.org/cuckoocurrent.tar.gz
A

Recupera a última versão do Cuckoo SandBox direto do site




CT

tar -xf cuckoo-current.tar.gz
A

Descompacta o arquivo para uma sub pasta cuckoo




CT

cd ~/bin/cuckoo
A

Acessa a pasta

CT
./cuckoo.py
A

Executa o cuckoo com privilégios de admin


Aplicação prática – parte 3

Criando uma máquina virtual.
Este guia é baseado na criação de uma máquina virtual Windows XP SP3 (nesta implementação foi usado o Windows XP SP1). Entretanto, o Cuckoo também funciona com Windows Vista e 7. Para estas versões é necessário desabilitar o serviço UAC (Controle de Contas do Usuário).
Algumas premissas:
      Você possui uma cópia licenciada do Windows XP;
      Você possui uma mídia ISO disponível;
      Você sabe instalar uma máquina virtual no Oracle Virtual Box;
As configurações a serem feitas ANTES de iniciar a instalação da VM Windows XP são as seguintes:
      Armazenamento em disco rígido com alocação dinâmica
      Disco rígido virtual > 15 GB
      Memória RAM 512 MB (Neste exemplo foram alocados 1024 MB)
      Adaptador de rede (fase inicial) intel PRO/1000 MT Desktop (NAT).
Pós instalação:
A primeira providência a ser tomada após a instalação do Windows XP é desativar alguns recursos e alterar algumas configurações. Segue-se o roteiro.
Acessar o Painel de Controle, clicar em “Ferramentas Administrativas”, depois em “Serviços”. Localiza os serviços de Atualizações automáticas e Firewall do Windows, interrompa, desative e altere a inicialização para Manual.
Ainda no Painel de Controle, se ainda estiverem ativos, desative os recursos de Firewall, Atualizações Automáticas, Alerta de Vírus e Alertas da Central de Controle.
Altere ainda as configurações da Área de Trabalho para modo de exibição clássico, desabilite o descanso de tela, sons e alertas do Windows.
Aplicativos.
São necessários alguns aplicativos para completar o ambiente de testes da VM. Usando o Internet Explorer nativo, baixe, primeiro, uma versão compatível com o XP do Firefox. Instale e use baixar o Google Chrome, Microsoft .NET 2.0, Microsoft Office 2000 ou 2003 além de quaisquer outros aplicativos que queira.
Obss importantes: Um aplicativo é essencial e deve ser instalado obrigatoriamente. Tratase do Python em sua versão 2.7.6 (a versão encontrada no site python.org é a 2.7, mas ao ser instalado, o terminal aponta para a versão 2.7.6).
Antes de seguir adiante, é importante copiar agent.py o arquivo localizado na máquina host (Ubuntu) em;  ~/bin/cuckoo/Agent/ para a pasta de instalação do Python na máquina Guest (Windows XP) em c:\Python27. É aconselhável copiar um atalho do agent.py para o menu de inicialização automatico de aplicativos no Window (iniciar). Isto pode ser feito enviando uma cópia do arquivo para a área de trabalho e arrastando para o menu Iniciar. Existem maneiras criativas de se fazer isto, por exemplo, envie o arquivo para algum repositório seu pela máquina Host e faça o download pela máquina Guest. Ou ainda, envie-o para você mesmo por e-mail.
Obs: Não instale aplicativos que façam atualizações automáticas ou requeiram atualização dos Windows XP.
Depois de completas as instalações, desligue a VM e altere as configurações do adaptador de rede para "Conectado a" Vbox-GuestHost-Only e "Tipo de adaptador" PCnet-FAST
III(Am79c973). Inicie a VM e instale o Vbox Guest Additions.
Configurações de rede.
Até o momento a instalação da máquina virtual não está completa. Para completar, acesse as configurações de rede através do painel de controle e altere o endereço IP do adaptador para 192.168.56.10 e verifique se a máscara de sub rede é preenchida automaticamente para 255.255.255.0.
Premissas:
O adaptador de rede da máquina Ubuntu e a interface de saída. vboxnet0 é a interface virtual.
192.168.56.0/24 é o endereço de sub rede para a interface “virtual host-only”.
Configurando o iptables:
Abra o terminal do Ubuntu e digite os seguintes comandos:

CT
sudo iptables -A FORWARD -o eth0 -i vboxnet0 -s 192.168.56.0/24 -m conntrack --ctstate NEW -j ACCEPT

A
Cria uma regra para conectar as interfaces de rede e aceitar o rastreio de pacotes entre


elas.


CT
sudo iptables -A FORWARD -m conntrack --ctstate
ESTABLISHED,RELATED -j ACCEPT

A

Comando que permite acessar e rastrear os pacotes da conexão quando for estabelecida.



CT

sudo iptables -A POSTROUTING -t nat -j MASQUERADE


A

Comando que permite acessar modificar os pacotes da conexão quando for estabelecida.





CT

sudo sysctl -w net.ipv4.ip_forward=1

A

Comando que ativa o encaminhamento de pacotes


Para verificar se as Configurações foram feitas, Digite o comando “ifconfig vboxnet0”.
O resultado deve ser o que se encontra abaixo (assinalado):
Link encap:Ethernet HWaddr 0a:00:27:00:00:00 inet addr:192.168.56.1 Bcast:192.168.56.255 Mask:255.255.255.0 inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link UP BROADCAST RUNNING
MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:184 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000
Configurações finais do Cuckoo SandBox.
Na máquina Host, acesse a pasta ~/bin/cuckoo/conf/, localize e altere os seguintes arquivos se necessário:
[cuckoo.conf] machinery = virtualbox memory_dump = on
[resultserver] ip = 192.168.56.1 port = 2042
[auxiliary.conf] [sniffer] enabled = yes tcpdump = /usr/sbin/tcpdump interface = vboxnet0
[virtualbox.conf]
Virtual machine name = [nome que você deu à sua máquina virtual XP]
#Host's virtual IP address (vboxnet0)
Ip =  192.168.56.1
#Virtual machine's IP address
Ip = 192.168.56.10
Salvando uma cópia da VM com o Snapshot (recurso de recuperação de estado da VM – via terminal, 3 comandos, recomendado)
OBS: deve-se criar um snapshot com a VM ligada

vboxmanage snapshot "[nome_da_VM_escolido]" take "[nome_do_snapshot]"

--pause vboxmanage snapshot "winxp" take "finalizada" --pause vboxmanage controlvm "winxp" poweroff vboxmanage snapshot "winxp" restorecurrent
Testando a instalação:
Acesse a pasta de instalação do Cuckoo: cd ~/bin/cuckoo
Digite:
./cuckoo.py
As seguintes linhas deverão ser exibidas;
Cuckoo Sandbox 1.1 www.cuckoosandbox.org
Copyright (c) 2010-2014
Checking for updates...
Good! You have the latest version available.
2014-11-05 23:07:42,599 [lib.cuckoo.core.scheduler] INFO: Using "virtualbox" machine manager
2014-11-05 23:07:42,830 [lib.cuckoo.core.scheduler] INFO: Loaded 1 machine/s
2014-11-05 23:07:42,831 [lib.cuckoo.core.scheduler] INFO: Waiting for analysis tasks...

Aplicação prática – parte 4

Submentendo uma amostra de Malware para análise.
Com o Cuckoo sendo executado, deve-se, primeiro, acionar o Oracle Virtual Box, mas não iniciar a VM. Depois, deve-se abrir um novo terminal e navegar até a pasta “~/bin/cuckoo/utils/” e digitar o comando;
./submit.py <caminho_para_a_amostra>
Neste caso;
./submit.py /home/rangel/Analise_malware/exercicio1.exe
Se tudo foi devidamente configurado, o comando ./cuckoo.py executado abrirá automaticamente a VM, e submeterá pela rede configurada o arquivo em questão à VM Windows, e efetuará a análise normalmente.*
* Obss importantes:
1                    – A instalação, mesmo efetuada de maneira sistemática e correta, não impede queeventuais mensagens de erro apareçam durante a execução.
2                    – Se, e quando forem exibidas estas mensagens,  a melhor escolha é ignorar e deixar oCuckoo Sandbox prosseguir com a análise.
3                    – Caso ocorra algum erro crítico, o próprio  Cuckoo Sandbox se encarrega de  parar aanálise e gerar arquivos de log. Essas paradas são absolutamente claras para quem mantém o terminal aberto e os monitora,    bem como a mensagem de fim do processo de análise .
4                    – As análise podem variar (e muito) no tempo de execução e conclusão. As amostras“   exercicio1.exe  ” e “  exercicio2.exe ”, levaram mais de 40 minutos cada uma.
5                    – É importante conhecer os comandos de terminal do Linux tanto para instalação quantopara remoção de pacotes. Pode ser que seja necessário refazer a instalação desde o início.
Pós – análise:
Exitem duas maneiras de acompanhar a análise de malware após a submissão do arquivo de amostra:
1  – Durante a análise, pela interface web e,
2  – Após o fim da análise pela mesma interface.
Para tanto, basta abrir um novo terminal, navegar até “~/bin/cuckoo/web” e digitar o comando: “ ./manage.py runserver ”.
 Se tudo estiver certo, a seguinte mensagem será exibida:
Validating models...
0 errors found
August 05, 2015 - 17:24:12
Django version 1.6.1, using settings 'web.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
Conforme a instrução contida na quinta linha, basta abrir o navegador e acessar o endereço citado.
Submetendo a amostra à análise
Obs: O processo de submissão de amostras para análise é o mesmo para todos arquivos usados aqui. Portanto, usaremos a descrição passo a passo da primeira amostra (exercicio1.exe). E apenas os relatórios serão individualizados.
Mensagens tipo WARNING são as mais comuns (e esperadas), mas não prejudicam o processos de submissão e análise. As mensagens tipo  ERROR podem ocorrer durante o processo de submissão de amostras. Pode ser que o processo de submissão falhe. Já, as mensagens CRITICAL ERROR, podem surgir durante a análise e podem ou ão causar falhas. Caso seja interrompidas a análise será necessário revisear a instalação do framework, da máquina virtual e, para tentar saber o que houve revise as mensagens complementares  e arquivos de log gerados.
Pré requisitos:
Conexão à Internet robusta e estável, revisão da instalação e configuração do ambiente e atenção às mensagens (WARNING, ERROR, CRITICAL ERROR).
Inicialmente, é necessário configurar o IpTables para o encaminhamento e filtragem de pacotes na máquina host:

1) sudo iptables -A FORWARD -o eth0 -i vboxnet0 -s 192.168.56.0/24 -m conntrack --ctstate NEW -j ACCEPT

adiciona regra que permite o encaminhamento de pacotes [-A FORWARD] originados da máquina host(linux) [-o eth0] destinados à maquina guest (VM winxp) [-i vboxnet0] assegurando o tráfego apenas ao endereço 192.168.56.0/24 [-s 192.168.56.0/24] ativa o pacote de rastreio de conexão ativa [-m conntrack] para novas conexões [conexões ainda não detectadas] e as aceita [--ctstate NEW -j ACCEPT]

2) sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

adiciona regra que permite o encaminhamento de pacotes [-A FORWARD] ativa o pacote de rastreio de conexão ativa [-m conntrack]
para conexões já estabelecidas e as aceita [--ctstate ESTABLISHED,RELATED -j ACCEPT]

3) sudo iptables -A POSTROUTING -t nat -j MASQUERADE

Adiciona regra para o pós roteamento de pacotes que constem na tabela NAT e "mascara" o IP da eth0 [-A POSTROUTING -t nat -j MASQUERADE]
Isto significa que o IP da eth0 é considerado válido para os propósitos de roteamento de pacotes.

4) sudo sysctl -w net.ipv4.ip_forward=1

Finaliza as configurações habilitando o roteamento.
Iniciando a VM:
A seguir, inicia-se o Oracle Virtual Box, MAS NÃO A MÁQUINA VIRTUAL. (ícone azul, um clique)
[figura 1]

A seguir, inicia-se o Cuckoo SandBox acessando a pasta ~bin/cuckoo/ - e enviando o comando
“./cuckoo.py”. [figura 2] 



Figura 2

Obs: Se o resultado exibido não for exatamente o mesmo  mostrado na figura 2, então devese rever os passos de instalação e configuração do framework.
A seguir, submete-se a amostra de malware acessando a pasta ~bin/cuckoo/utils/ e enviando o comando “./submit.py /<caminho_para_o_malware>/exercicio1.exe*”. [figura 3] * No meu caso, “./submit.py /home/rangel/Analise_malware/exercicio1.exe”


Figura 3

O que ocorre a seguir é uma sequencia de ações cuja captura de telas para fins de ilustrações neste documento é inviável. Porém a sequencia é a que se segue:
1     – O Cuckoo SandBox inicia a VM em modo de restauração do snapshot;
2     – A seguir submete a amostra de malware à VM;
3     – Alguns segundos após a submissão, inicia o monitoramento de eventos pelo arquivo “agent.py”de dentro da VM.
4     – Finalizada a submissão, o framework interrompe a VM e inicia o processo de análise.
(dependendo do tipo de amostra, o processo de submissão da amostra pode demorar um pouco mais)
5     – O processo de análise é extenso e mais demorado. Esta etapa pode ser acompanha observando oterminal (é aconselhável fazer o acompanhamento caso ocorra algum erro crítico) ou pela interface web.
Para iniciar a interface web basta acessar a pasta ~/bin/cuckoo/web/ e enviar o comando
./manage.py runserver. [figura 4]


Figura 4

Dica: Clicando com o botão direito do mouse sobre o link http://127.0.0.1:8000, surgirá a opção “abrir link”. Escolha esta opção e o navegador padrão do seu Linux será ativado com a url ativa.
Para fins de acompanhamento do processo de análise, é mais produtivo monitorar o terminal. Se  o processo de análise for completado com sucesso, a interface web é bem mais versátil e rica em
detalhes. [figura 5]



Figura 5

Conteúdo da tela:
1 – Dashboard (Painel de instrumentos): é a página inicial. Nela é exibido um  relatório resumido das ações análises realizadas pelo Cuckoo SandBox.  [dash]



dash

Entre as informações, estão; quantas tarefas foram realizadas, completadas, falhas, erros e etc.
A próxima figura [figura 6] mostra o conteúdo da guia “Recent”, que lista as tarefas de análise feitas anteriormente.




Figura 6


Dica: Na coluna “MD5”, os caracteres do hash calculado são hiperlinks. Clicando neles, é aberta a página com o relatório completo de cada um dos arquivos.
Clicando no hash do item “exercicio1.exe”, o navegador exibe o relatório completo dos resultados desta amostra.
Aqui são mostradas as seguintes guias:
Quick Overview => Static Analysis =>Behavioral Analysis => Network Analysis  => Dropped Files =>
Memory Analysis  => Admin [figura 7]



Figura 7

Cada uma das guias exibe um extenso conteúdo que será explicado abaixo de maneira reduzida devido à imensa quantidade de dados para cada biblioteca de análise do Cuckoo SandBox.
Resultados:
Referência / Arquivo / Comando:
Comentário ou Ação:
exercicio1.exe
Amostra submetida à análise
net user lucas%d 123456 /add
Comando que adiciona um novo usuário 'Lucas' e a senha '123456' à lista de contas do Windows.
Detectado em:
http://www.herdprotect.com/knowledgebase_detections.aspx?engine=qihoo-360
Conclusões sobre exercicio1.exe:
Devido à sua natureza de comprovação acadêmica, trata-se de um Malware cujas ações não levaram a maiores danos. Entretanto, a criação de um usuário “clandestino” no sistema e um endereçamento IP falso, foram (e ainda são) grandes aliados de golpistas.
Referência / Arquivo / Comando:
Comentário ou Ação:
exercicio2.exe
Amostra submetida à análise
NtCreateFile
Abre o arquivo 'hosts' localizado em C:\WINDOWS\system32\drivers\etc\
NtWriteFile
Adiciona a entrada de Resolução de IP “200.221.2.45 www.terra.com.br” O IP em questão é do domínio “www.uol.com.br”. Porém, se o usuário tentar acessar o endereço do UOL, será direcionado para o site Terra.
ExitProcess
Encerra todas threads (ou processos) do sistema
Conclusões sobre exercicio2.exe:
Esta amostra faz alterações importantes nos sistema e, a amais significativa, acessa o Gerenciador de serviços do Windows e para o serviço de gerenciamento de temas. Extrapolando as ações, qualquer outro serviço poderia ser afetado (como veremos a seguir) e tornar a máquina vulnerável a ações mais invasivas ou permiti-las.
Referência / Arquivo / Comando:
Comentário ou Ação:
WormAcademic.exe
Amostra submetida à análise
cmd.exe
abre o terminal de comandos do Windows
sethc.exe
reseta a senha do admin do windows
.original => utilman.exe
cria uma tecla aderente de abertura do cmd do Windows (shif pressionada 5 x)
netsh.exe => Firewall set opmode disable
desabilita o firewall do windows
SYSTEM\CurrentControlSet\Servic es\Themes
para o serviço de temas do windows
WinNT:// => ,Computer =>
WormAcademic
cria o usuário "WormAcademic"
SetPassword => W0rm@c@d3mic
seta a senha "W0rm@c@d3mic" para a ação anterior
administrators => administradores
adiciona ao grupo de administradores
Conclusões sobre WormAcademic.exe:
Esta amostra faz alterações mais profundas e prova que vulnerabilidades não são apenas exploradas. Também podem ser criadas e usadas sucessivamente para quaisquer fins que se deseja. No caso desta, é resetada a senha do usuário, cria uma “janela de entrada” sem necessidade de  logar-se no sistema, desabilita o firewall, e cria um novo usuário com login e senha. As possibilidades para estas ações são inúmeras.  Um atacante com bons conhecimentos de linguagens de programação e do sistema que deseja atacar poderia usar seus conhecimentos para extrair quaisquer dados reservados e usa-los para o fim que desejasse.
Conclusões sobre 1002.exe:
Essa amostra foi retirada de um grupo bastante extenso de amostras a partir de pesquisas feitas inicialmente no site https://zeltser.com/malware-sample-sources/ e escolhido devido à sua natureza “recente”.
Este malware (1002.exe) é uma das muitas variações do tipo conhecido como CryptoLocker, que vem a ser a captura e encriptação de arquivos do usuário e exigir o pagamento de um resgate em troca da senha para desbloqueá-los.
Normalmente o malware é elaborado de modo a dar um prazo de 72 horas para o pagamento de 1 bitcoin (aproximadamente 300 dólares ), do contrário ameaça destruir as chaves requeridas para a desencriptação.
Se a vítima não pagar o resgate dentro do prazo estabelecido, o malware exibirá um arquivo "last_chance.txt" ordenando que vítima que  baixe o malware de novo, o que supostamente dará mais 3 dias de prazo para o pagamento do resgate. Na realidade o PClock não destrói nada, portanto a contagem regressiva não significa nada.
As informações a respeito da chave de encriptação usada neste malware são conflitantes. Alguns sites de segurança dizem que algumas versões usam algioritmos de chave forte, (RSA 2048 bits) [https://en.wikipedia.org/wiki/CryptoLocker]. Outros informam que o algoritmo não é tão sofisticado e não é difícil desencriptar os arquivos [http://blog.emsisoft.com/2015/01/04/newransomware-alert-cryptolocker-copycat-pclock-discovered/]. E até existem sites que ajudam vítimas deste malware a desbloquear os arquivos. [http://www.baboo.com.br/seguranca/ferramenta-dedesbloqueio-para-vitimas-do-malware-cryptolocker/].
De qualquer forma, a análise feita no framework Cuckoo SandBox de um amostra de PCLocker gerou um vasto relatório rico em detalhes. Vamos a eles:
1 – A análise de “Strings” possibilitou ver que o próprio malware monta e renderiza a tela de ameaça.[Figura 8]




Figura 8

2  – Algumas versões do malware armazenavam a chave de desbloquear os arquivos infectados nopróprio sistema. Desta forma, uma das maneiras de recuperar os arquivos era ligar o HD da máquina como Slave em outra e procurar pela chave no próprio HD. Com o tempo, as variações do malware passaram a armazenar a chave na memória alta do computador, enviar para um local “seguro” e fazer enviar um comando de limpeza da memória para apagar quaisquer registros das operações.
Neste exemplo, todos os dados obtidos foram analisados, mas até o momento não foi encontrado nenhuma informação que comprove o armazenamento de senha  ou chave de desbloqueio.
3  – O arquivo de dump da memória possui bons dados que podem ser úteis, mas a leitura éproblemática devido ao grande número de linhas com informações truncadas.
4  – Alguns elementos da análise firacam obscuros. A justificativa é de que não haviam os típicosarquivos de trabalho na máquina (planilhas, docs, pdf, PPT e etc.) que pudessem ser explorados pela ameaça. Mesmo assim, o malware fez sua parte, procurou e atacou bibliotecas DLL entre outros arquivos de sistema.
5  – A análise final não foi satisfatória pelas razões que se seguem:
      Após efetuada a submissão, o Cuckoo SandBox fecha a VM e recarrega o snapshot das últimas configurações. Tal aão destrói as todos os vestígios do malware e só restam os dados coletados e analizados pelo framework.
      Durante o processo de submissão, ao iniciar o malware e aparecer a tela de alerta, o sistema entre em estado de espera que só é interrompido clicando em “next” [Figura 9]. Entretanto, tal ação faz com que o Cuckoo SandBox considere a submissão completa e desliga a máquina virtual.



Figura 9

Finalizando, falta a este, conhecimento mais aprofundados sobre o sistema operacional, sobre os comandos que aparecem nos relatórios e a capacidade de filtragem de dados relevantes.