<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>beraldoleal.com &#187; Featured</title>
	<atom:link href="http://beraldoleal.com/index.php/category/featured/feed/" rel="self" type="application/rss+xml" />
	<link>http://beraldoleal.com</link>
	<description>Just another geek site</description>
	<lastBuildDate>Mon, 19 Jul 2010 00:31:22 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Kids 0.1b released</title>
		<link>http://beraldoleal.com/index.php/2008/02/kids-01b-released/</link>
		<comments>http://beraldoleal.com/index.php/2008/02/kids-01b-released/#comments</comments>
		<pubDate>Thu, 07 Feb 2008 16:47:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://beraldoleal.com/index.php/archives/46</guid>
		<description><![CDATA[
It is my great pleasure to announce the availability of KIDS 0.1b, an Kernel (Network) Intrusion Detection System. This project is the result of a year of research on kernel and Network IDS. The Kernel Intrusion Detection System-KIDS, is a Network IDS, where the main part, packets grab/string match, is running at kernelspace, with a [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://beraldoleal.com/wp-content/uploads/2008/02/kids_logo2.png" alt="" align="left" /></p>
<p align="justify">It is my great pleasure to announce the availability of KIDS 0.1b, an Kernel (Network) Intrusion Detection System. This project is the result of a year of research on kernel and Network IDS. The Kernel Intrusion Detection System-KIDS, is a Network IDS, where the main part, packets grab/string match, is running at kernelspace, with a hook of Netfilter Framework. This project is not ready for use. It is only a proof of concept and should not be put in an environment in production, yet.</p>
<p align="justify">The main goal of KIDS is to try to reduce the delay in the processing of the rules, with the elimination of two changes in context (kernel-user-user-kernel), as this task is performed in kernelspace.</p>
<p align="justify">The main goal of KIDS is to try to reduce the delay in the processing of the rules, with the elimination of two changes in context (kernel-user-user-kernel), as this task is performed in kernelspace.</p>
<p align="justify">Very thanks to Amador Pahim, my boss and Teacher Advisor.</p>
<p align="justify">A more detailed document for development / hacking will be drafted later.</p>
<p>For more information about KIDS project, please see:</p>
<p><a href="http://sourceforge.net/projects/ids-kids/">http://sourceforge.net/projects/ids-kids/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://beraldoleal.com/index.php/2008/02/kids-01b-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oops</title>
		<link>http://beraldoleal.com/index.php/2007/09/oops/</link>
		<comments>http://beraldoleal.com/index.php/2007/09/oops/#comments</comments>
		<pubDate>Wed, 26 Sep 2007 00:21:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Featured]]></category>

		<guid isPermaLink="false">http://beraldoleal.com/index.php/archives/41</guid>
		<description><![CDATA[Quem disse que o Linux não trava ?? Que atire a primeira pedra quem nunca viu ao menos um kernel panic na tela ? Pois bem, quando um erro grave ocorre no sistema, entre outras coisas que o kernel faz uma delas é exibir no terminal e/ou sistema de log, uma mensagem bastante conhecida por [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">Quem disse que o Linux não trava ?? Que atire a primeira pedra quem nunca viu ao menos um kernel panic na tela ? Pois bem, quando um erro grave ocorre no sistema, entre outras coisas que o kernel faz uma delas é exibir no terminal e/ou sistema de log, uma mensagem bastante conhecida por quem já passou por isso, a famosa mensagem de <strong>Oops</strong>. Trata-se de um dump do estado do CPU e da pillha do Kernel no momento em que o problema ocorreu. A mensagem de Oops mais conhecida é a que vem acompanhada de um kernel panic. Muitos ao se deparar com isso, percebem que nada funciona (na maioria dos casos), Ctrl+Alt+Backspace, teclas de função, e nem água, ai, simplesmente reiniciam a máquina, podendo causar ainda mais problemas.</p>
<p>Abaixo um exemplo de uma mensagem de Oops:</p>
<pre>Unable to handle kernel paging request at virtual address 00010015
 printing eip:
c01e6608
*pde = 00000000
Oops: 0000
CPU:    0
EIP:    0010:[usb_unlink_urb+8/64]    Tainted: P
EFLAGS: 00010202
eax: 00010001   ebx: d70c6494   ecx: c7c81000   edx: 00010001
esi: c7c81640   edi: d70c6400   ebp: d70c64f0   esp: d2daded0
ds: 0018   es: 0018   ss: 0018
Process kpilotDaemon (pid: 30778, stackpage=d2dad000)
Stack: d892a2ed 00010001 d70c6494 d70c6400 d3df51c0 00000000 d8924350 d70c6494
       d3df51c0 d725a000 cc5faa40 c16063c0 c018c460 d725a000 d3df51c0 d3df51c0
       cc5faa40 c16063c0 c8117e40 00000001 d3df51c0 bffff0e8 00000000 00000000
Call Trace: [] [] [release_dev+576/1280]
[n_tty_ioctl+257/1200] [tty_release+10/16]
   [fput+76/224] [filp_close+92/112] [sys_close+67/96] [system_call+51/56] 

Code: 8b 42 14 85 c0 74 21 8b 80 bc 00 00 00 85 c0 74 17 8b 40 18</pre>
<p align="justify">Esta mensagem pode ajudar aos desenvolvedores do kernel a depurar melhor o problema, e mesmo que você não reporte o bug, você pode se utilizar de um recurso que foi desenvolvido pensando nisto: As <strong>Magic SysRq Keys</strong>.</p>
<p align="justify">Trata-se de uma combinação de teclas que é utilizada para comunicar-se com o kernel do Linux, caso a opção CONFIG_MAGIC_SYSRQ  tiver sido habilitada durante a compilação do kernel, ou em <strong>/proc/sys/kernel/sysrq</strong>.</p>
<p align="justify">Basta apertar <strong>Alt+PrintScreen+Tecla</strong> e a saída (dependendo da tecla) é enviada para o dmesg. Abaixo apenas algumas teclas:</p>
<table border="0" width="100%">
<tbody>
<tr>
<td><strong>Tecla</strong></td>
<td><strong>Descrição</strong></td>
</tr>
<tr>
<td>t</td>
<td>Lista de tarefas/processos com suas informações detalhadas</td>
</tr>
<tr>
<td>u</td>
<td>Remonta todas as partições montadas, só que em read-only</td>
</tr>
<tr>
<td>m</td>
<td>Mostra informações sobre o estado atual da memória</td>
</tr>
<tr>
<td>e</td>
<td>Envia um sinal do tipo SIGTERM para todos os processos, exceto para o init</td>
</tr>
</tbody>
</table>
<p align="justify">Existe a famosa combinação: <strong>Alt+PrintScreen+R E I S U B</strong>, onde basicamente mata todos os processos, sincroniza os discos, remonta todas os filesystems montados em read-only, e só então reinicia a máquina. Por tanto, antes de "meter o dedão" no botão de power, <strong>REISUB</strong>. <img src='http://beraldoleal.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://beraldoleal.com/index.php/2007/09/oops/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>KIDS na Argentina</title>
		<link>http://beraldoleal.com/index.php/2007/07/kids-na-argentina/</link>
		<comments>http://beraldoleal.com/index.php/2007/07/kids-na-argentina/#comments</comments>
		<pubDate>Mon, 02 Jul 2007 09:47:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Strolls]]></category>

		<guid isPermaLink="false">http://beraldoleal.com/index.php/archives/6</guid>
		<description><![CDATA[Para quem não sabe, estou trabalhando em um projeto desde do início deste ano, chamado Kernel Intrusion Detection System - KIDS, este projeto visa o desenvolvimento de, entre outras partes, um módulo para o kernel 2.6 que fará a parte principal de um Network IDS, a captura e análise dos pacotes de redes, tentando com [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">Para quem não sabe, estou trabalhando em um projeto desde do início deste ano, chamado Kernel Intrusion Detection System - KIDS, este projeto visa o desenvolvimento de, entre outras partes, um módulo para o kernel 2.6 que fará a parte principal de um Network IDS, a captura e análise dos pacotes de redes, tentando com isso obter um melhor desempenho, que as aplicações que utilizam a libpcap. Este projeto não tem por objetivo "concorrer" com os NIDS já existentes, é apenas uma prova de conceito, porém o módulo que faz a captura dos pacotes, pode muito bem ser utilizada por estes IDSs, já que está sob GPL.</p>
<p align="justify">Pois bem, de 7 à 11 de Agosto, acontecerá em Córdoba, na Argentina <a href="http://jornadas.grulic.org.ar/7">7a. Jornadas Regionales de Software Libre</a>, e estarei lá pela primeira vez apresentando o KIDS para que outros desenvolvedores possam conhecer e opinar/ajudar com este projeto. Nunca fui a este evento, mas as expectativas são as melhores, o evento tem um porte grande e terá convidados como Christoph Hellwig, Jonas Öberg e outros que podem ser consultados <a href="http://jornadas.grulic.org.ar/7/contenido/invitados">aqui</a>. O evento terá aproximadamente, até o momento, <a href="http://jornadas.grulic.org.ar/7/contenido/programa">100 palestras</a> dividas nos macro-temas: Sociedade, Técnica e Empresa. Portanto, <em>amigos argentinos, nos veremos en breve.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://beraldoleal.com/index.php/2007/07/kids-na-argentina/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Buumm&#8230;</title>
		<link>http://beraldoleal.com/index.php/2007/06/buumm/</link>
		<comments>http://beraldoleal.com/index.php/2007/06/buumm/#comments</comments>
		<pubDate>Tue, 19 Jun 2007 14:08:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Teletypewriter]]></category>

		<guid isPermaLink="false">http://beraldoleal.com/index.php/archives/4</guid>
		<description><![CDATA[Trechos de código maliciosos que tem por objetivo a negação de um serviço ou até mesmo a obtenção de um recurso privilegiado do sistema, a internet tá cheia. Muitos já vi, mas um deles me chamou a atenção quando me deparei com ele pela primeira vez, foi um simples fork bomb, feito em meia linha, [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">Trechos de código maliciosos que tem por objetivo a negação de um serviço ou até mesmo a obtenção de um recurso privilegiado do sistema, a internet tá cheia. Muitos já vi, mas um deles me chamou a atenção quando me deparei com ele pela primeira vez, foi um simples <a href="http://en.wikipedia.org/wiki/Fork_bomb" target="_blank">fork bomb</a>, feito em meia linha, utilizando a bash. Reparem como é "medonho" o danado:</p>
<pre>$ <img src='http://beraldoleal.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> ){ <img src='http://beraldoleal.com/wp-includes/images/smilies/icon_neutral.gif' alt=':|' class='wp-smiley' /> :; };:</pre>
<p align="justify">Simples, não ? Tirando o fato desta linha poder travar uma máquina em poucos segundos,  é uma função como outra qualquer, que em uma primeira olhada, pode parecer um palavrão, mas acreditem, não é. <a href="http://en.wikipedia.org/wiki/Obfuscated_code">Obfuscated Code</a> é uma boa leitura. Explicando melhor, uma função em script bash, pode ser declarada da seguinte forma:</p>
<pre>$ teste() {
&gt; echo "teste";
&gt; }</pre>
<p align="justify">Ok, tranquilo... Mas esta mesma função pode fazer referência à ela mesmo (<a href="http://en.wikipedia.org/wiki/Recursivity">Recursividade</a>), bastava que no local de um <em>echo</em>, tivesse a própria função, e caso ela chamasse a si próprio usando um pipe para ela também, ai é que "num tinha pareia não", como diriam os natalenses amigos meus. Observe:</p>
<pre>$ teste() {
&gt; teste | teste ;
&gt; }</pre>
<p align="justify">Substituindo teste por dois pontos (apenas mudamos o nome da função), e logo em seguida chamamos a tal função, tudo junto, em uma linha só, temos a bomba shell:</p>
<pre>$ <img src='http://beraldoleal.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> ){ <img src='http://beraldoleal.com/wp-includes/images/smilies/icon_neutral.gif' alt=':|' class='wp-smiley' /> :; };:</pre>
<p align="justify">Existem várias maneiras de preparar Neston, e também existem várias maneiras de se proteger de um uso exagerado de recursos, a mais flexível talvez seja utilizando a ferramenta <em>ulimit</em>, que não serve apenas para especificar a quantidade de processos que um usuário pode alocar, <em>man ulimit</em> e seja feliz.</p>
]]></content:encoded>
			<wfw:commentRss>http://beraldoleal.com/index.php/2007/06/buumm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
