<?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>DisidentS Team &#187; DisidentS</title>
	<atom:link href="http://www.disidents.org/tag/disidents/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.disidents.org</link>
	<description>-= Sharing Knowledge since 1996! =- Seguridad, Ingeniería Inversa, Redes, Programación, Noticias</description>
	<lastBuildDate>Fri, 03 Sep 2010 13:10:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Aumentando la velocidad de la ADSL</title>
		<link>http://www.disidents.org/2010/05/06/aumentando-la-velocidad-de-la-adsl/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=aumentando-la-velocidad-de-la-adsl</link>
		<comments>http://www.disidents.org/2010/05/06/aumentando-la-velocidad-de-la-adsl/#comments</comments>
		<pubDate>Thu, 06 May 2010 16:58:50 +0000</pubDate>
		<dc:creator>dudu</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[aumentar velocidad de internet]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[dudu]]></category>
		<category><![CDATA[Hacking]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=462</guid>
		<description><![CDATA[Bueno, esto sera una chorrada&#8230;. o No, porque funciona en todas las ADSL  que llevo probadas y van casi 20 .. XDD. Si teneis contratadas 6 Mb, y os llegan 6Mb, dejar de leer&#8230; pero si teneis contratado 6Mb y os llegan 3 &#8230; o cualkier velocidad i os llega MENOS de lo q deberias [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.disidents.org/wp-content/uploads/2010/05/nudo1.jpg"><img class="aligncenter size-full wp-image-466" title="nudo" src="http://www.disidents.org/wp-content/uploads/2010/05/nudo1.jpg" alt="" width="512" height="384" /></a>Bueno, esto sera una chorrada&#8230;. o No,</p>
<p>porque funciona en todas las ADSL  que llevo probadas y van casi 20 .. XDD.</p>
<p>Si teneis contratadas 6 Mb, y os llegan 6Mb, dejar de leer&#8230;</p>
<p>pero si teneis contratado 6Mb y os llegan 3 &#8230; o cualkier velocidad i os llega MENOS de lo q deberias por distancia, ruido etc&#8230; etc&#8230;. podeis probar lo siguiente:</p>
<p>Hacer un NUDO SIMPLE al cable de la adsl del lado del ROUTER, y volver a linkar y comprobar como teneis una ADSL mas rapida  <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Saludos</p>
<p>P.D. Ya se que la foto es de un cable de RED, no de telefono, pero os haceis a la idea del nudo <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  jejeje</p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2010/05/06/aumentando-la-velocidad-de-la-adsl/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Tutorial Trainer para DrugLord 2.2 by Krozmic</title>
		<link>http://www.disidents.org/2010/05/02/tutorial-trainer-para-druglord-2-2-by-krozmic/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=tutorial-trainer-para-druglord-2-2-by-krozmic</link>
		<comments>http://www.disidents.org/2010/05/02/tutorial-trainer-para-druglord-2-2-by-krozmic/#comments</comments>
		<pubDate>Mon, 03 May 2010 01:45:06 +0000</pubDate>
		<dc:creator>krozmic</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[Cracking]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[Druglord]]></category>
		<category><![CDATA[Ingeniería Inversa]]></category>
		<category><![CDATA[krozmic]]></category>
		<category><![CDATA[Reversing Engineering]]></category>
		<category><![CDATA[trainer]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=426</guid>
		<description><![CDATA[Bueno&#8230; este es mi primer tute&#8230; y no se como empezar&#8230; jeje vamos por partes no? Imagen del juego: Este es el juego&#8230; para que vean que no es un juego de esos en 3d y que tiene todos los chiches&#8230;este es así a lo sencillo&#8230; El juego trata de ser vendedor de drogas&#8230; Un [...]]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste">Bueno&#8230; este es mi primer tute&#8230; y no se como empezar&#8230; jeje vamos por partes no?</div>
<div id="_mcePaste">Imagen del juego:</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic1.jpg"><img class="aligncenter size-medium wp-image-428" title="krozmic1" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic1-300x265.jpg" alt="" width="300" height="265" /></a></div>
<div>Este es el juego&#8230; para que vean que no es un juego de esos en 3d y que tiene todos los chiches&#8230;este es así a lo sencillo&#8230;</div>
<div>El juego trata de ser vendedor de drogas&#8230; Un juego al estilo Oferta – Demanda&#8230; compras droga barata y lo vendes cuando sea cara&#8230;</div>
<div>Bueno.. como yo siempre lo juego y mi hermano también.. sabemos bien como funciona&#8230; el juego solo tiene 55 días máximo de juego&#8230; Para los que piensen.. NO es una protección de tiempo&#8230;es 55 días juego&#8230;</div>
<div id="_mcePaste">Como les decía.. quisimos jugar mas días.. tener mas dinero para comprar droga&#8230; y tener mayor capacidad para almacenar dicha droga&#8230;</div>
<div id="_mcePaste">Me dije.. “Hummm aprendería mas sobre el reversing haciendo esto&#8230;. y AHHH también aprendí a programar&#8230; Pues bueno.. Intentemoslo&#8230;”</div>
<div id="_mcePaste">Y ahora lo intentaremos&#8230;</div>
<p></p>
<div>– <strong>BUSCANDO DATOS IMPORTANTES&#8230;</strong></div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic2.jpg"><img class="aligncenter size-medium wp-image-429" title="krozmic2" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic2-300x265.jpg" alt="" width="300" height="265" /></a></div>
<div id="_mcePaste">Bueno.. ahí les señale lo que necesitamos&#8230; “Day: 2/30” , “Cash: 434” y “Your pants pocket (2/10)”</div>
<div>Como ven ya jugue dos dias&#8230; gaste mi dinero para comprar el “Pot” y en “Your pants&#8230;” tengo mis dos unidades, kilos, bolsas o lo que sea de Pot&#8230;</div>
<div id="_mcePaste">Si.. ya lo tenemos todo&#8230;</div>
<p></p>
<div id="_mcePaste"><strong>– ACLARACIONES o OBSERVACIONES&#8230;</strong></div>
<div id="_mcePaste">Esto les muestro porque se como va el juego.. y para aclarar cualquier duda&#8230;</div>
<div id="_mcePaste">El juego tiene unos rankings&#8230; subis de ranking cuando ya tienes 1.000.000 de dolares etc etc y te da 5 dias mas de juego, te aumenta la capacidad y todo lo demas&#8230;aquí les dejo los rankings&#8230; que nos ayudaran para despues&#8230;.</div>
<div>Ranks</div>
<div>You can have one of six ranks at any give time:</div>
<p></p>
<div>Wannabe</div>
<div id="_mcePaste">Cash Required: $0</div>
<div id="_mcePaste">Carrying Capacity: 10 units</div>
<div id="_mcePaste">Container: pants pocket</div>
<p></p>
<div>Small-time Operator</div>
<div id="_mcePaste">Cash Required: $5,000</div>
<div id="_mcePaste">Carrying Capacity: 25 units</div>
<div id="_mcePaste">Container: coat</div>
<p></p>
<div>Dealer</div>
<div id="_mcePaste">Cash Required: $40,000</div>
<div id="_mcePaste">Carrying Capacity: 100 units</div>
<div id="_mcePaste">Container: black Trans Am</div>
<p></p>
<div>Big-Time Dealer</div>
<div id="_mcePaste">Cash Required: $300,000</div>
<div id="_mcePaste">Carrying Capacity: 600 units</div>
<div id="_mcePaste">Container: converted milk truck</div>
<p></p>
<div>Distributer</div>
<div id="_mcePaste">Cash Required: $2,500,000</div>
<div id="_mcePaste">Carrying Capacity: 3,500 units</div>
<div id="_mcePaste">Container: warehouse</div>
<p></p>
<div>Drug Lord</div>
<div id="_mcePaste">Cash Required: $15,000,000</div>
<div id="_mcePaste">Carrying Capacity: 20,000 units</div>
<div id="_mcePaste">Container: island paradise</div>
<p></p>
<div>Ya&#8230;. Bueno ahora que viene&#8230;</div>
<div id="_mcePaste">Ah cierto.. debugear el juego&#8230;</div>
<p></p>
<div>– <strong>EL DEBUG DEL JUEGO&#8230;.</strong></div>
<div>Primero primero lo escaneamos con el RDG&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic3.jpg"><img class="aligncenter size-medium wp-image-430" title="krozmic3" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic3-300x158.jpg" alt="" width="300" height="158" /></a></div>
<div id="_mcePaste">Bueno dice archivo sospechoso y bla bla.. no me interesa&#8230;</div>
<div id="_mcePaste">Pero no hay nada de packer y todo eso&#8230;</div>
<div id="_mcePaste">Depuremolo de una vez&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic4.jpg"><img class="aligncenter size-medium wp-image-431" title="krozmic4" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic4-300x183.jpg" alt="" width="300" height="183" /></a></div>
<div id="_mcePaste">caemos aquí&#8230;</div>
<div id="_mcePaste">que le hago, que le hago.. si no se entiende un huevo&#8230;</div>
<div id="_mcePaste">Hey cierto&#8230; ver los text string y si no hay nada las apis comunes que siempre usamos&#8230;</div>
<div>Text String Primero:</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic5.jpg"><img class="aligncenter size-medium wp-image-432" title="krozmic5" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic5-300x198.jpg" alt="" width="300" height="198" /></a></div>
<div id="_mcePaste">huuuuuuuuuuuuu&#8230; millones&#8230; seguro hay alguno que nos sirve&#8230;</div>
<div>y seguro que hay millones de apis&#8230;</div>
<div>pero se me ocurrio algo&#8230;. en dias decia&#8230; “Day:1/30”</div>
<div>intentemos buscando la constante 30 en el debug.. en hexa es igual a “1E”</div>
<div>Click derecho sobre el debug &gt; search for &gt; Constant..</div>
<div>le ponemos el 30 en decimal o el 1E en hexa&#8230; Aceptamos</div>
<div>y paramos en&#8230;.</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic6.jpg"><img class="aligncenter size-medium wp-image-433" title="krozmic6" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic6-300x250.jpg" alt="" width="300" height="250" /></a></div>
<div>Y si.. no me digan nada.. ahi tenemos una api&#8230; pero llegamos de otra forma&#8230; asique</div>
<div>EXPERIENCIA+1</div>
<div>Sigamos&#8230;.</div>
<div>Ponemos una Bp sobre PUSH 1E&#8230; damos run&#8230; paramos de vuelta&#8230;</div>
<div>Traceamos un poco&#8230; y llegamos <strong>00406011 MOV DWORD PTR DS:[42AD74],1E</strong></div>
<div id="_mcePaste">osea que mueve los “30” a esa pocicion de memoria&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic7.jpg"><img class="aligncenter size-medium wp-image-434" title="krozmic7" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic7-290x300.jpg" alt="" width="290" height="300" /></a></div>
<div>Ven&#8230;</div>
<div>bueno&#8230; para probar podriamos, no se.. modificar ese byte&#8230; por otro para probar si sale mas dias&#8230;.entonces&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic8.jpg"><img class="aligncenter size-medium wp-image-435" title="krozmic8" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic8-253x300.jpg" alt="" width="253" height="300" /></a></div>
<div id="_mcePaste">y cambia 1E por FF&#8230; que son&#8230;255&#8230;</div>
<div>damos run y nos fijamos&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic9.jpg"><img class="aligncenter size-full wp-image-436" title="krozmic9" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic9.jpg" alt="" width="244" height="183" /></a></div>
<div id="_mcePaste">y si.. son 255 dias&#8230;volvemos a donde estabamos y anotamos la posición de la memoria donde esta alojado el 1E&#8230;</div>
<div id="_mcePaste">[0042AD74]</div>
<div>Bien&#8230; ya tenemos los dias&#8230;</div>
<div id="_mcePaste">Ahora el cash&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic10.jpg"><img class="aligncenter size-full wp-image-437" title="krozmic10" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic10.jpg" alt="" width="253" height="184" /></a></div>
<div id="_mcePaste">Bueno cuando empezamos el juego.. tenemos 1,990 dolares y una deuda de 1,150&#8230;lo de la deuda lo dejamos&#8230; total cuando tengamos 1millon de dolares ni vamos a sentir esa deuda..jiji</div>
<div>Ahora.. como procedemos&#8230;</div>
<div>Lo que podriamos hacer es&#8230; poner un Bp en SendDlgItemMessageA y buscar y buscar hasta encontrar el indicado&#8230; Asi como lo hice yo&#8230; pero ya me olvide&#8230; asique eso lo pueden hacer ustedes&#8230;</div>
<div id="_mcePaste">bueno&#8230; la verdad que no me acuerdo de donde estaba, como y porque&#8230;</div>
<div id="_mcePaste">pero encontre que el primer cash que se agrega es 2,000 dolares y no 1,990.. seguro que es por los</div>
<div id="_mcePaste">impuestos, gasto por el carne de vendedor de drogas.. que se yo&#8230;</div>
<div id="_mcePaste">lo que si que cuando vimos donde se movia los dias a la memoria&#8230; mas abajito este el del cash&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic11.jpg"><img class="aligncenter size-medium wp-image-438" title="krozmic11" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic11-300x216.jpg" alt="" width="300" height="216" /></a></div>
<div>si ven.. dice&#8230; <strong>00406044 MOV DWORD PTR DS:[42ACE0],7D0</strong></div>
<div id="_mcePaste">mueve 7D0 que son los 2000$ a esa pocicion de la memoria&#8230;</div>
<div>probamos de vuelta&#8230;</div>
<div id="_mcePaste">vemos en la memoria&#8230; osea en el dump y vemos</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic19.jpg"><img class="aligncenter size-medium wp-image-445" title="krozmic19" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic19-300x221.jpg" alt="" width="300" height="221" /></a></div>
<div id="_mcePaste">ahi esta el 7D0 alrevez&#8230; (Odio que siempre lo ponga al revez..me marea. y peor si estoy con resaca)</div>
<div id="_mcePaste">bueno ya saben como modificar los bytes&#8230; agarramos los dos y ponemo fill con FF`s si salio tiene que aver FF FF</div>
<div id="_mcePaste">pero cuanto dinero seria esto&#8230; para saber claro si salio o no&#8230; calculadora y son&#8230; 65.535 $</div>
<div>damos run y miramos el cash&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic12.jpg"><img class="aligncenter size-full wp-image-439" title="krozmic12" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic12.jpg" alt="" width="248" height="183" /></a></div>
<div id="_mcePaste">y practicamente nos faltan los 10$&#8230; pero no me importa.. a mi por lo menos 10$ en el juego no me interesa&#8230; si voy a ser rico&#8230;</div>
<div id="_mcePaste">bueno&#8230; ya sabemos que hacer&#8230; anotar la pocicion de la memoria donde esta alojado el cash&#8230;[42ACE0]</div>
<div id="_mcePaste">ya tenemos el cash.. luego le agregaremos lo que queremos de dinero&#8230;</div>
<div>Ahora lo que mas cuesta&#8230; la capacidad&#8230;</div>
<div id="_mcePaste">como vieron al comienzo donde estaban los rankings&#8230; se ve que hay 6 tipos de capacidades&#8230;</div>
<p></p>
<div>Wannabe</div>
<div id="_mcePaste">Carrying Capacity: 10 units</div>
<div>Small-time Operator</div>
<div id="_mcePaste">Carrying Capacity: 25 units</div>
<div>Dealer</div>
<div id="_mcePaste">Carrying Capacity: 100 units</div>
<div>Big-Time Dealer</div>
<div id="_mcePaste">Carrying Capacity: 600 units</div>
<div>Distributer</div>
<div id="_mcePaste">Carrying Capacity: 3,500 units</div>
<div>Drug Lord</div>
<div id="_mcePaste">Carrying Capacity: 20,000 units</div>
<p></p>
<div>y bueno.. si le modificamos al comienzo.. una capacidad de 10unidades por una capacidad de 15000unidades cuando subamos de ranking tendremos de vuelta 25 unidades de capacidad y asi sucesivamente&#8230; osea que hay que pescarlos a todos y modificarlos&#8230;</div>
<div>bueno&#8230; no me van a creer pero me olvide tambien como llegue ahi&#8230; haremos algo rapidito&#8230;.</div>
<div>si tienen el GREATISWINDOWSE&#8230; pues ejecutenlo&#8230;</div>
<div>ejecutemos el juego tambien&#8230;</div>
<div>y veamos&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic13.jpg"><img class="aligncenter size-medium wp-image-440" title="krozmic13" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic13-300x175.jpg" alt="" width="300" height="175" /></a></div>
<div>Bueno si tenemos el windowse y el druglord abiertos ponemos nuestro cursor sobre el (0/10) de Your pants pocket y nos fijamos en el windowse donde dice..</div>
<div id="_mcePaste">Control ID 000001FB</div>
<div id="_mcePaste">nos acordamos del numero  ese y cerramos el windowse y el juego&#8230;abrimos de vuelta el juego con el Olly y damos click derecho&gt; search for&gt; constant y ponemos lo del control id que vimos recien&#8230;.</div>
<div>y el olly nos tira aquí&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic14.jpg"><img class="aligncenter size-medium wp-image-441" title="krozmic14" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic14-300x234.jpg" alt="" width="300" height="234" /></a></div>
<div>si ven &#8230; un chiqui mas arriba dice ASCII “Your %s (%d%d)”&#8230; osea que es eso.. y que estamos muy muy cerca&#8230;.</div>
<div id="_mcePaste">que tal si le ponemos unas Bp un poco mas arriba para tracear&#8230;.</div>
<div id="_mcePaste">lo pueden poner en 00402998 MOV EBX,EAX</div>
<div>dan run.. y paran y tracean&#8230;</div>
<div>Llegamos a 004029CA el primer Bp de la imagen de arriba&#8230;. compara EBX con una dato de que</div>
<div id="_mcePaste">esa direccion&#8230;</div>
<div>que es un 0A&#8230; osea 10decimal&#8230; que es nuestra primera capacidad.</div>
<div>Pero bueno traceamos un poco mas y llegamos al segundo Bp de la imagen de arriba&#8230; el 00402A0E y vemos que mueve el 0A que esta en la direccion de la memoria a EAX&#8230;</div>
<div id="_mcePaste">nos fijamos en el esa direccion el el dump y modificamos el 0A por FF para ver si cambia o no&#8230;</div>
<div>ya saben como se hace.. y no lo repetire&#8230; no pega copiar y pegar imagenes&#8230;. aparte ya lo tienen que saber a estas alturas&#8230;</div>
<div id="_mcePaste">bueno&#8230; ya le modificamos por los FF y damos run para mironear&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic15.jpg"><img class="aligncenter size-full wp-image-442" title="krozmic15" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic15.jpg" alt="" width="170" height="52" /></a></div>
<div>Y si.. ahi estan los 255 que era el FF que modificamos&#8230;</div>
<div id="_mcePaste">volvemos&#8230;. anotamos la direccion&#8230; 004230F0</div>
<div>como les dije.. ahora falta pescar a las otras 5 capacidades&#8230;</div>
<div>dejamos los Bp como estan&#8230; ahora a jugar para pescarlos&#8230;</div>
<div id="_mcePaste">(pero si hay que dominar el juego para subir de ranking&#8230; algo mas facil???)</div>
<div>bueno.. ya que anotaron donde estaba alojado el cash.. vamos a modificarlo de entrada para que los rankings pasen rapido&#8230;</div>
<div id="_mcePaste">reiniciamos el olly&#8230;</div>
<div>hacemos goto a 00406044 donde ingresaba el 2000$</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic16.jpg"><img class="aligncenter size-medium wp-image-443" title="krozmic16" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic16-300x221.jpg" alt="" width="300" height="221" /></a></div>
<div id="_mcePaste">y modificamos el D0 07 del dump por haber humm&#8230; para el ranking de druglord necesitamos</div>
<div id="_mcePaste">15.000.000 de $</div>
<div id="_mcePaste">asique&#8230; le agregaremos 20.000.000 de $</div>
<div>bueno.. 20millones en hexa es &#8230; 1312D00</div>
<div id="_mcePaste">y como les dije que me marea ponerlo alrevez&#8230; me programe un programita que te da la vuelta los</div>
<div id="_mcePaste">numeros (litle endian-big endian) para que los escribas en el dump&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic17.jpg"><img class="aligncenter size-medium wp-image-444" title="krozmic17" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic17-300x169.jpg" alt="" width="300" height="169" /></a></div>
<div id="_mcePaste">Ahi lo tenemos&#8230; me automatice el problema&#8230; asique le modificamos al D0 07 por 00 2D 31 01</div>
<div id="_mcePaste">queda entonces asi..</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2010/05/krozmic18.jpg"><img class="aligncenter size-medium wp-image-427" title="krozmic18" src="http://www.disidents.org/wp-content/uploads/2010/05/krozmic18-300x63.jpg" alt="" width="300" height="63" /></a></div>
<div>y bueno Bp puestos&#8230; dinero puesto.. damos run y vemos que tenemos 19millones y pico&#8230;</div>
<div id="_mcePaste">ahora le damos en STAY HERE y nos para el olly&#8230;</div>
<div>nos fijamos que capacidad esta pasando&#8230;</div>
<div id="_mcePaste">volvemos a dar run&#8230; STAY HERE &#8230; para&#8230; miramos&#8230; run.. STAY HERE &#8230; para&#8230; miramos&#8230;hasta que tengamos estos valores</div>
<p></p>
<div>Carrying Capacity: 10 units <strong>este ya lo tenemos el 0A en hexa</strong></div>
<div>Small-time Operator</div>
<div id="_mcePaste">Carrying Capacity: 25 units <strong>este es 19 en hexa</strong></div>
<div>Dealer</div>
<div id="_mcePaste">Carrying Capacity: 100 units <strong>este es 64 en hexa</strong></div>
<div>Big-Time Dealer</div>
<div id="_mcePaste">Carrying Capacity: 600 units <strong>este es 258 en hexa</strong></div>
<div>Distributer</div>
<div id="_mcePaste">Carrying Capacity: 3,500 units <strong>este es DAC en hexa</strong></div>
<div>Drug Lord</div>
<div id="_mcePaste">Carrying Capacity: 20,000 units <strong>este es 4E20 en hexa</strong></div>
<p></p>
<div>esos valores en hex tienen que pescar&#8230; y anotar en que direccion de memoria estan&#8230;</div>
<div>yo les pongo aquí debajo&#8230;</div>
<p></p>
<div>el capacidad 25 esta en 423118 &#8220;19&#8243;</div>
<div id="_mcePaste">el capacidad 100 esta en 423140 &#8220;64&#8243;</div>
<div id="_mcePaste">el capacidad 600 esta en 423168 &#8220;258&#8243;</div>
<div id="_mcePaste">el capacidad 3500 esta en 423190 &#8220;DAC&#8221;</div>
<div id="_mcePaste">el capacidad 20000 esta en 4231B8 &#8220;4E20&#8243;</div>
<p></p>
<div>ya tenemos todo&#8230;</div>
<p></p>
<div>- <strong>RECOMPILACION DE NUEVOS DATOS</strong></div>
<p></p>
<div>Dirección de donde se aloja los días [42AD74]</div>
<div id="_mcePaste">Dirección de donde se aloja el cash [42ACE0]</div>
<div id="_mcePaste">Dirección de donde se aloja la capacidad 10 decimal 0A hexa [4230F0]</div>
<div id="_mcePaste">Dirección de donde se aloja la capacidad 25 decimal 19 hexa [423118]</div>
<div id="_mcePaste">Dirección de donde se aloja la capacidad 100 decimal 64 hexa [423140]</div>
<div id="_mcePaste">Dirección de donde se aloja la capacidad 600 decimal 258 hexa [423168]</div>
<div id="_mcePaste">Dirección de donde se aloja la capacidad 3500 decimal DAC hexa [423190]</div>
<div id="_mcePaste">Dirección de donde se aloja la capacidad 20000 decimal 4E20 hexa [4231B8]</div>
<p></p>
<div>ya esta todo&#8230;</div>
<div>ahora&#8230;</div>
<p></p>
<div>-<strong> PROGRAMACION DEL TRAINER</strong></div>
<div>Les dejo el código fuente en la capeta porque si les pego aquí se hará un caos.. y ustedes entenderán menos&#8230;</div>
<div id="_mcePaste">asique fíjense en la carpeta&#8230;</div>
<div id="_mcePaste">el código fuente tiene comentarios para que vean&#8230;</div>
<div id="_mcePaste">también les dejo en la carpeta el programita ese que da vuelta los números para ponerlo en el dump..</div>
<div id="_mcePaste">para los mas newies claro.. porque el resto de ustedes la dominan todo&#8230;</div>
<p></p>
<div>Con esto me voy despidiendo&#8230;</div>
<p>Bajar fuentes, complementos y juego:</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2010/05/OllydumpFORMAT.zip">OllydumpFORMAT</a> <a href="http://www.disidents.org/wp-content/uploads/2010/05/druglord.zip">druglord</a> <a href="http://www.disidents.org/wp-content/uploads/2010/05/DrugLTrainer.zip">DrugLTrainer</a></p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2010/05/02/tutorial-trainer-para-druglord-2-2-by-krozmic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>md5 search function</title>
		<link>http://www.disidents.org/2010/03/28/md5-search-function/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=md5-search-function</link>
		<comments>http://www.disidents.org/2010/03/28/md5-search-function/#comments</comments>
		<pubDate>Sun, 28 Mar 2010 11:25:49 +0000</pubDate>
		<dc:creator>noukeys</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Cracking]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[Ingeniería Inversa]]></category>
		<category><![CDATA[md5 cracker]]></category>
		<category><![CDATA[noukeys]]></category>
		<category><![CDATA[Reverse Engineering]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=421</guid>
		<description><![CDATA[Muchas veces programamos chorraditas rápidas, que pueden llegar a ser muy útiles. Pues creo que la que aquí presento puede ser una de estas, es una función en python que búsca su f, dada su imagen f&#8217;. La he utilizado para hacer una auditoría a un fichero con más de 30.000 imágenes y la verdad, [...]]]></description>
			<content:encoded><![CDATA[<p>Muchas veces programamos chorraditas rápidas, que pueden llegar a ser muy útiles. Pues creo que la que aquí presento puede ser una de estas, es una función en python que búsca su f, dada su imagen f&#8217;.</p>
<p>La he utilizado para hacer una auditoría a un fichero con más de 30.000 imágenes y la verdad, los resultados han sido positivos.</p>
<p>He renombrado el ficherito a .txt para poder subirlo.</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2010/03/md5_cracker.txt">md5_cracker</a></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">import urllib</p>
<p>__id__ = &#8220;$Id: md5_cracker.py 2010-03-28 13:13$&#8221;<br />
__version__ = &#8220;$Revision: 0 $&#8221;<br />
__date__ = &#8220;$Date: 2010-03-28 13:13:51 +0100 (San, 28 Mar 2010) $&#8221;<br />
__author__ = &#8220;noukeys reverser (noukeys@gmail.com)&#8221;<br />
__copyright__ = &#8220;Copyright 2010+ noukeys&#8221;<br />
__license__ = &#8220;GPL&#8221;<br />
__URL__ = &#8220;http://www.reversing.es&#8221;</p>
<p>#Busca un hash en diversas webs conocidas.<br />
def md5search(hash):</p>
<p>find = &#8221;;</p>
<p>#busqueda:<br />
try:<br />
if find == &#8221;:<br />
f = urllib.urlopen(&#8220;http://gdataonline.com/qkhash.php?mode=txt&amp;hash=&#8221; + hash.strip(&#8216;\t\n&#8217;))<br />
for line in f.readlines():<br />
if (line.find(&#8216;&lt;tr&gt;&lt;td width=&#8221;65%&#8221;&gt;&#8217;) != -1) and (line.find(&#8216;????&#8217;) == -1):<br />
line = line.partition(&#8217;35%&#8221;&gt;&lt;b&gt;&#8217;)<br />
line = line[2].partition(&#8216;&lt;/b&gt;&#8217;)<br />
find = line[0]<br />
except:<br />
pass</p>
<p>#busqueda<br />
try:<br />
if find == &#8221;:<br />
params = urllib.urlencode({&#8216;pass&#8217;: hash.strip(&#8216;\t\n&#8217;), &#8216;option&#8217;: &#8216;hash2text&#8217;, &#8216;send&#8217;: &#8216;Submit&#8217;})<br />
f = urllib.urlopen(&#8220;http://md5online.net/&#8221;, params)<br />
for line in f.readlines():<br />
if line.find(&#8216;pass :&#8217;) != -1:<br />
line = line.partition(&#8216;s : &lt;b&gt;&#8217;)<br />
line = line[2].partition(&#8216;&lt;/b&gt;&#8217;)<br />
find = line[0]<br />
except:<br />
pass</p>
<p>#busqueda<br />
try:<br />
if find == &#8221;:<br />
params = urllib.urlencode({&#8216;term&#8217;: hash.strip(&#8216;\t\n&#8217;), &#8216;crackbtn&#8217;: &#8216;Crack+that+hash+baby%21&#8242;})<br />
f = urllib.urlopen(&#8220;http://md5crack.com/crackmd5.php&#8221;, params)<br />
for line in f.readlines():<br />
if line.find(&#8216;Found&#8217;) != -1:<br />
line = line.partition(&#8216;(&#8220;&#8216;)<br />
line = line[2].partition(&#8216;&#8221;)&#8217;)<br />
find = line[0]<br />
except:<br />
pass</p>
<p>#Resultados<br />
return find.strip(&#8216;\t\n&#8217;)</p>
<p>#P.O.C.<br />
print md5search(&#8217;084e0343a0486ff05530df6c705c8bb4&#8242;)</p>
</div>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2010/03/28/md5-search-function/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Jugando con Samepage Merging</title>
		<link>http://www.disidents.org/2010/03/18/jugando-con-samepage-merging/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=jugando-con-samepage-merging</link>
		<comments>http://www.disidents.org/2010/03/18/jugando-con-samepage-merging/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 00:19:42 +0000</pubDate>
		<dc:creator>spark</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[48 bits]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[erg0t]]></category>
		<category><![CDATA[Reversing Links]]></category>
		<category><![CDATA[vm detección]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=410</guid>
		<description><![CDATA[Hola audiencia de disidents, hoy les voy a contar un poco sobre una cualidad que tienen ciertos entornos de virtualizacion, la cual podemos aprovechar para detectar los mismos. El método que propongo esta basado en timing analysis, pero no sobre el tiempo de ejecución de determinadas instrucciones, sino que sobre los tiempos de acceso a [...]]]></description>
			<content:encoded><![CDATA[<p>Hola audiencia de disidents, hoy les voy a contar un poco sobre una cualidad que tienen ciertos entornos de virtualizacion, la cual podemos aprovechar para detectar los mismos.</p>
<p>El método que propongo esta basado en timing analysis, pero no sobre el tiempo de ejecución de determinadas instrucciones, sino que sobre los tiempos de acceso a memoria. Se han utilizado técnicas similares para detectar VMMs (incluyendo VT). Un método conocido es medir el tiempo de acceso a memoria con cache on/off, por lo general el VMM no permite desactivar el cache, entonces si ambas mediciones dan resultados similares significa que estamos dentro de un entorno virtual.</p>
<p>A diferencia de esa técnica, la manera que he encontrado no requiere ring0 y además es bastante sencilla. Claro que tiene ciertas limitaciones, no sirve para detectar cualquier VM, solo aquellas que implementen samepage merging (hasta ahora solo hice pruebas con KVM-KSM y VMware).</p>
<p>Supongo que tendré que explicar un poco en que consiste esto del samepage merging (desde ahora SM porque soy vago). El SM esta muy relacionado con el CoW (Copy on Write). Básicamente se trata de un thread que periódicamente recorre la memoria y une todas las páginas cuyo contenido es exactamente el mismo. Una vez unidas las páginas, el resto del proceso es exactamente un CoW, se comparte la misma page frame y se marca la página como read-only, cuando se intenta realizar una escritura, el manejador de excepciones se encarga de asignar una nueva página.</p>
<p>Este tipo de estrategia es bastante costosa por lo que no se suele utilizar sobre toda la memoria del sistema operativo. Sin embargo es muy tentador utilizarla en entornos virtualizados ya que se ahorran cantidades considerables de ram, el beneficio es máximo cuando se corren varios guests simultanea-mente.</p>
<p>En linux disponemos de KSM (Kernel Samepage Merging), este se puede activar y desactivar en el vuelo. Cualquier versión reciente de KVM saca provecho de KSM si se encuentra activado. La idea original sobre este tipo de tecnologías parece pertenecer a <a href="http://www.google.com/patents?vid=USPAT6789156">VMware</a> y al parecer hubo ciertos problemas de patentes con KSM, lo importante a destacar es que si podemos aprovecharnos de KSM seguramente también podemos hacerlo de VMware.</p>
<p>Ya con todo esto un poco explicado, algunos deben estarse preguntando que pasaría si medimos los tiempos de acceso a memoria antes y después de que el KSM (o VMware) actue sobre la memoria del guest. Es justamente lo que vamos a averiguar <img src="http://blog.48bits.com/wp-includes/images/smilies/icon_wink.gif" alt=";)" /></p>
<p>Ver código fuente <a href="http://www.disidents.org/wp-content/uploads/2010/03/smdetect.cpp">smdetect.cpp</a></p>
<p><em>Ahora se compila con: <strong>g++ -O3 smdetect.cpp -o smdetect<br />
</strong>Funciona tanto en linux como en windows (mingw).</em></p>
<p>Ahora unas gráficas con los resultados en distintos entornos:</p>
<p style="text-align: center;"><a href="http://blog.48bits.com/wp-content/uploads/2010/03/smdetect.png"><img class="aligncenter" title="smdetect" src="http://blog.48bits.com/wp-content/uploads/2010/03/smdetect.png" alt="" width="490" height="340" /></a></p>
<p>Las gráficas corresponden a 10 ejecuciones de smdetect por cada entorno. Si todo fuera perfecto deberían ser lineas horizontales, pero factores externos como la carga del sistema hacen variar bastante los resultados.</p>
<p>Se puede apreciar una diferencia notable entre los casos donde no hay VMM y en los que la hay. Un caso curioso se da con OSX, donde la diferencia es apenas un 100% estando más cerca de los resultados donde no hay VMM. Incluso en una prueba llego a dar ~30% lo cual lo hace un target muy dificil de detectar.</p>
<p>Mirando las gráficas y sin considerar OSX, podriamos establecer un umbral de 150% para la detección. Incluyendo los datos de OSX he decidido utilizar un 98%, aún asi pueden darse falsos negativos en OSX y un umbral tan bajo podría llegar a dar falsos positivos si se dan ciertas condiciones.</p>
<p>Conclushion!</p>
<p>Tenemos un nuevo método, que si bien no es 100% confiable, puede ser utilizado de forma práctica y es posible refinarlo mucho más. Una posibilidad es la utilización de heurísticas para ajustar el umbral en función a información sobre la carga del sistema. Otro tema pendiente es la enorme espera que hay que realizar entre mediciones, pero esto no creo que sea un impedimento para muchos autores de malware…</p>
<p>Aquí se acaba <img src="http://blog.48bits.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" /></p>
<p>erg0t</p>
<p>http://www.48bits.com/</p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2010/03/18/jugando-con-samepage-merging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nueva Vulnerabilidad en Joomla 1.5.xx</title>
		<link>http://www.disidents.org/2009/08/22/nueva-vulnerabilidad-en-joomla-1-5-xx/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=nueva-vulnerabilidad-en-joomla-1-5-xx</link>
		<comments>http://www.disidents.org/2009/08/22/nueva-vulnerabilidad-en-joomla-1-5-xx/#comments</comments>
		<pubDate>Sat, 22 Aug 2009 18:42:52 +0000</pubDate>
		<dc:creator>spark</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[0day]]></category>
		<category><![CDATA[Bug]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[Exploit]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Joomla]]></category>
		<category><![CDATA[Profesor_X]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=353</guid>
		<description><![CDATA[Hola a todos, gracias a un reverser amigo, Profesor_X, que ha descubierto este 0day, hoy estamos publicándolo, antes que nadie. Les dejo la información, que aparentemente es muy vital para poder obtener datos relevantes de un sitio construido con Joomla. Los dos tipos de vulnerabilidades encontradas fueron: Full Path Disclosure Session Malformed Poisoning Para poder [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos, gracias a un reverser amigo, Profesor_X, que ha descubierto este 0day, hoy estamos publicándolo, antes que nadie.</p>
<p>Les dejo la información, que aparentemente es muy vital para poder obtener datos relevantes de un sitio construido con Joomla.</p>
<p>Los dos tipos de vulnerabilidades encontradas fueron:</p>
<ul>
<li>Full Path Disclosure</li>
<li>Session Malformed Poisoning</li>
</ul>
<p>Para poder ver como funciona el bug, podemos mirar el video <a href="http://www.disidents.org/wp-content/uploads/2009/08/joomla.swf">aquí</a>.</p>
<p>Pueden ver el Poc desde <a href="http://www.disidents.org/wp-content/uploads/2009/08/joomlabug.jpg">aquí</a> (renombrar a .RAR).</p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=a" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2009/08/22/nueva-vulnerabilidad-en-joomla-1-5-xx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Crackeando un componente para Delphi</title>
		<link>http://www.disidents.org/2009/08/11/crackeando-un-componente-para-delphi/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=crackeando-un-componente-para-delphi</link>
		<comments>http://www.disidents.org/2009/08/11/crackeando-un-componente-para-delphi/#comments</comments>
		<pubDate>Tue, 11 Aug 2009 23:54:39 +0000</pubDate>
		<dc:creator>spark</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[Componentes]]></category>
		<category><![CDATA[Crack]]></category>
		<category><![CDATA[Crackeando]]></category>
		<category><![CDATA[Cracking]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[DsD!]]></category>
		<category><![CDATA[Ingeniería Inversa]]></category>
		<category><![CDATA[SparKrisp]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=330</guid>
		<description><![CDATA[Hola a todos, estoy nuevamente para mostrarles lo sencillo que puede ser crackear un componente para el entorno de desarrollo Delphi. Las otras noches, nos juntamos en la casa de un amigo a comer unos canelones, después de comer, charlar y reirnos un rato, sacamos nuestras notebooks&#8230; fue ahí cuando me dije, ¿porque no crackear [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos, estoy nuevamente para mostrarles lo sencillo que puede ser crackear un componente para el entorno de desarrollo Delphi.</p>
<p>Las otras noches, nos juntamos en la casa de un amigo a comer unos canelones, después de comer, charlar y reirnos un rato, sacamos nuestras notebooks&#8230; fue ahí cuando me dije, ¿porque no crackear estas compos que hacen muy lindas interfaces a nuestras aplicaciones delphi?</p>
<p>No diré el nombre de estas componentes, ya que obviamente son pagas, sino no sería necesario crackearlas , no? xD</p>
<p>Pero sí daré una pista, empiezan con estas dos letras VGS y las que le siguen, sin espacios son 4 letras, muy conocida palabra en el &#8220;ambiente&#8221; en el que nos solemos mover. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  a alguien le gusta la demoscene? xD</p>
<p>Bien, no doy mas pistas, si no lo han agarrado dedíquense a otra cosa&#8230; xD</p>
<p>La protección es muy, pero muy sencilla, pero molesta, como todas. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Una pequeña NAG Screen, cuando se instala el componente en Delphi, aparecerá, si arrancamos el entorno, aparecerá, porque Delphi carga todas sus librerías al comienzo&#8230; si compilamos un proyecto de ejemplo que viene en el paquete, saldrá el NAG de nuevo, y obviamente si corremos el EXE generado aparte, también&#8230; en algún lugar más? xD</p>
<p>Lo que haremos serán dos parcheos simples y no aparecerán nunca más en ningún lado, solo con parchear un fichero. Hay que ir a la fuente, delphi compila y reconvierte todo a varios formatos para que todo en &#8220;su mundo&#8221; salga bien.</p>
<p>Podemos rompernos la cabeza parcheando 3 o 4 archivos, o 1 solo simplemente. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>De que se trata todo esto</strong></p>
<p>Bueno, como ya expliqué es un simple NAG molesto, las demás funcionalidades parecen completas, así que les mostraré el mensajito:</p>
<p style="text-align: center;"><img class="size-medium wp-image-334   aligncenter" title="nagd1" src="http://www.disidents.org/wp-content/uploads/2009/08/nagd1-300x189.jpg" alt="nagd1" width="300" height="189" /></p>
<p>Bien, como les dije, este cartelito, todas las veces que les comenté aparece, ahora vamos a sacarnóslo de encima <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Si miramos la carpeta de los componentes estos, veremos que tenemos la carpeta packages, dentro hay archivos con estas extensiones dpk, dcu, res, bpl y dcp.</p>
<p>Los DPK son Delphi Package, los DCU son Delphi Compiled Unit, los BPL son Borland Package Library y los DCP son Delphi Component Package.</p>
<p>Cuando abrimos un DPK, compilamos e intalamos, éste contiene las DCU compiladas, y la DPK utilizada se guardara en la carpeta de proyectos de Borland.</p>
<p>Con esto quiero decir, que si crackeamos lo que genera un DPK que es un BPL, no lo crackearemos del todo&#8230; <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Miremos primero lo más facil.</p>
<p><strong>Donde atacar</strong></p>
<p>Si compilamos un ejemplo y lo abrimos con el IDA, buscaremos una parte del string del NAG, por ej, &#8220;trial&#8221;.</p>
<p>Encontraremos la parte de código como la siguiente:</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 920px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">CODE:004F4704                 mov     eax, offset _str_This_applicatio.Text</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 920px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">CODE:004F4709                 call    unknown_libname_164 ; BDS 2005-2006 and Delphi6-7 Visual Component Library</div>
<pre><span style="font-style: normal;">C</span>ODE:004F4704                 mov     eax, offset _str_This_applicatio.Text</pre>
<pre>CODE:004F4709                 call    unknown_libname_164 ; BDS 2005-2006 and Delphi6-7 Visual Component Library</pre>
<div>Podemos parchear este CALL pero no es recomendable..</div>
<pre>CODE:0050BED0                 mov     eax, offset _str_Resources.Text

CODE:0050BED5                 call    sub_4F7E78

CODE:0050BEDA                 call    nullsub_13</pre>
<p>Ok, entonces, podemos parchear el segundo CALL. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Si miramos el código en hexa, será el siguiente: E8 C1 87 FE FF deberíamos NOPearlo, y listo, lo tenemos arreglado. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Pero!, siempre hay un pero, no nos conviene parchear cada EXE que compilamos, o si? <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  sería muy tedioso, deberíamos correr el parche por cada ejemplo o aplicación que utilice estas librerías, entonces deberíamos parchear la fuente, donde se genera la cuestión, no creen?&#8230;</p>
<p><strong>Buscando la fuente</strong></p>
<p>Ok, busquemos lo mismo en el BPL que si lo abrimos es un PE armado por Delphi. En cambio no podremos hacerlo con un DPC.</p>
<p>Encontramos esto:</p>
<pre><strong><span style="font-weight: normal;">CODE:004560C1                 call    @Vg_scene@RegisterVGObjects$qqrx17System@AnsiStringpxpx17System@TMetaClassxi ; Vg_scene::RegisterVGObjects(System::AnsiString,System::TMetaClass **,int)</span>

<span style="font-weight: normal;">CODE:004560C6                 call    @Vg_version@ShowVersion2$qqrv ; Vg_version::ShowVersion2(void)</span>
</strong></pre>
<p>Con esto lograremos que Delphi 7 no sea interrumpido por la molesta NAG, pero al compilar los ejemplos, y al ejecutarlos saldrá nuestro NAG&#8230; <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Entonces, donde está la magia de esto? nos queda una de las extensiones que expliqué antes: DCU.</p>
<p>Las DCU NO son PE&#8217;s así que tendremos que ver como los &#8220;atacamos&#8221;, la mejor idea creo que es con DEDE. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Mirando en la carpeta fuera de packages, vemos tooodos los DCU,  así que encontraremos uno de ellos que es vg_version.dcu</p>
<p>Podemos abrir el DEDE y hacer lo siguiente:</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/08/dede.JPG"><img class="aligncenter size-medium wp-image-343" title="dede" src="http://www.disidents.org/wp-content/uploads/2009/08/dede-300x181.jpg" alt="dede" width="300" height="181" /></a></p>
<p>Como vemos, abrimos DEDE, y en el menú dumpers, podemos elegir la opcion Dumpeador de DCU. Si hacemos click en esa opción se abrirá la siguiente pantalla, donde elegimos el archivo vg_version.dcu y hacemos click en procesar.</p>
<p>Obtendremos lo siguiente:</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/08/dcudumper.JPG"><img class="aligncenter size-medium wp-image-344" title="dcudumper" src="http://www.disidents.org/wp-content/uploads/2009/08/dcudumper-300x186.jpg" alt="dcudumper" width="300" height="186" /></a></p>
<p>Obtendremos el código de nuestra DCU, entonces ahí veremos lo siguiente:</p>
<pre style="padding-left: 60px;">procedure ShowVersion2;

const

  AboutText = 

    000: ÿÿÿÿP...This app|FF FF FF FF 50 01 00 00 54 68 69 73 20 61 70 70|

    010: lication uses a |6C 69 63 61 74 69 6F 6E 20 75 73 65 73 20 61 20|

    020: trial version of|74 72 69 61 6C 20 76 65 72 73 69 6F 6E 20 6F 66|

    030:  VGScene.....Ple|20 56 47 53 63 65 6E 65 2E 0D 0A 0D 0A 50 6C 65|

    040: ase contact the |61 73 65 20 63 6F 6E 74 61 63 74 20 74 68 65 20|

    050: provider of the |70 72 6F 76 69 64 65 72 20 6F 66 20 74 68 65 20|

    060: application for |61 70 70 6C 69 63 61 74 69 6F 6E 20 66 6F 72 20|

    070: a registered ver|61 20 72 65 67 69 73 74 65 72 65 64 20 76 65 72|

    080: sion.....%s..Cop|73 69 6F 6E 2E 0D 0A 0D 0A 25 73 0D 0A 43 6F 70|

    090: yright (C) 1998-|79 72 69 67 68 74 20 28 43 29 20 31 39 39 38 2D|

    0A0: 2009 by Eugene K|32 30 30 39 20 62 79 20 45 75 67 65 6E 65 20 4B|

    0B0: ryukov....For co|72 79 75 6B 6F 76 0D 0A 0D 0A 46 6F 72 20 63 6F|

    0C0: nditions of dist|6E 64 69 74 69 6F 6E 73 20 6F 66 20 64 69 73 74|

    0D0: ribution and use|72 69 62 75 74 69 6F 6E 20 61 6E 64 20 75 73 65|

    0E0: , see LICENSE.TX|2C 20 73 65 65 20 4C 49 43 45 4E 53 45 2E 54 58|

    0F0: T.....Visit our |54 2E 0D 0A 0D 0A 56 69 73 69 74 20 6F 75 72 20|

    100: web site for the|77 65 62 20 73 69 74 65 20 66 6F 72 20 74 68 65|

    110:  latest versions|20 6C 61 74 65 73 74 20 76 65 72 73 69 6F 6E 73|

    120:  of VGScene:....|20 6F 66 20 56 47 53 63 65 6E 65 3A 0D 0A 0D 0A|

    130: http://www.ksdev|68 74 74 70 3A 2F 2F 77 77 77 2E 6B 73 64 65 76|

    140: .com/..support@k|2E 63 6F 6D 2F 0D 0A 73 75 70 70 6F 72 74 40 6B|

    150: sdev.com.       |73 64 65 76 2E 63 6F 6D 00|;

var</pre>
<p>Aquí vemos que está el mensaje de nuestra NAG, tenemos nuestro objetivo en la mira. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Como veremos, tenemos 2 procedimientos ShowVersion y ShowVersion2.</p>
<p>Lo que haremos será sencillo, en vez de parchear DENTRO, parchearemos solamente y PUSH EBP:</p>
<pre>begin

   00000000 : 55                            PUSH EBP

   00000001 : 8B EC                         MOV EBP,ESP

   00000003 : 83 C4 F4                      ADD ESP,-12

   00000006 : 53                            PUSH EBX

   00000007 : 56                            PUSH ESI

   00000008 : 33 C0                         XOR EAX,EAX

   0000000A : 89 45 FC                      MOV DWORD PTR [EBP-4],EAX

   0000000D : 33 C0                         XOR EAX,EAX

   0000000F : 55                            PUSH EBP

   00000010 : 68(95 00 00 00                PUSH ShowVersion2{0x26}+149</pre>
<p>Justamente el PUSH EBP, podemos cambiarlo por un RETN, entonces no entrará directamente a nuestra función, es decir, entrará y luego se irá y no habrá pasado nada. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Entonces tendremos que cambiar el 55 que es el código de operación del PUSH EBP, por un RETN que es un C3.</p>
<p><strong>Parcheando</strong></p>
<p>La pregunta que tendremos inmediatamente, es ¿cómo podemos interceptar ese PUSH EBP, en realidad los dos por las dudas&#8230;?</p>
<p>Lo mejor, es buscar el patrón de bytes, así nos aseguraremos que estamos en el lugar indicado.. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>El patrón que utilicé yo para buscar en ShowVersion2 es: 55 8B EC 83 C4 F4, será el mismo en ShowVersion, ya que es la &#8220;cabecera&#8221; de la función, y siempre es igual, idéntica.</p>
<p>Así que cambiaremos el 55 por un C3, y san se acabó la maldita NAG. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Conclusión</strong></p>
<p>No hay mucho más que decir, son buenos componentes, si los utilizarán con fines lucrativos, cómprenlos, pero la forma en que está protegido esto, es&#8230; deplorable. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>Luego podremos recompilar nuestro DPK y reemplazar los nuevos por los viejos, la NAG no aparecerá nunca más ni en Delphi, ni en ningún lado.</p>
<p>Espero que les haya gustado.</p>
<p>Nos vemos en la próxima.</p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=J" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2009/08/11/crackeando-un-componente-para-delphi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>De proxy en proxy y navego porque me toca</title>
		<link>http://www.disidents.org/2009/08/05/de-proxy-en-proxy-y-navego-porque-me-toca/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=de-proxy-en-proxy-y-navego-porque-me-toca</link>
		<comments>http://www.disidents.org/2009/08/05/de-proxy-en-proxy-y-navego-porque-me-toca/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 03:40:24 +0000</pubDate>
		<dc:creator>ddiego</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[anonimato]]></category>
		<category><![CDATA[anonimo]]></category>
		<category><![CDATA[DDiego]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[DsD!]]></category>
		<category><![CDATA[proxies]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[putty]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=295</guid>
		<description><![CDATA[Título: De proxy en proxy y navego porque me toca Autor: DDiego (ddiegoATdisidents.org) Temática: Redes Plataforma: Linux/Windows Fecha: 14/06/2009 Licencia: Este documento es propiedad de Disidents, su distribución/modificación siempre esta limitada a la autorización explicita del autor o de la organización. En general siempre que no se modifique el contenido ni se elimine esta cabecera [...]]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Título: De proxy en proxy y navego porque me toca</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Autor: DDiego (ddiegoATdisidents.org)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Temática: Redes</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Plataforma: Linux/Windows</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Fecha: 14/06/2009</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Licencia: Este documento es propiedad de Disidents, su distribución/modificación siempre esta limitada a la autorización explicita del autor o de la organización. En general siempre que no se modifique el contenido ni se elimine esta cabecera la distribución esta autorizada, salvo que Disidents o el autor indiquen lo contrario.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Introducción.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">En el siguiente documento veremos como saltarnos un proxy que habremos configurado primero, haciendo tunneling dinámico.  También veremos como intentar evitarlo desde el punto del vista del administrador.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Configurando nuestro proxy &#8220;squid&#8221;.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Voy a explicar como configurar de forma básica, este servidor proxy lo usaremos para hacer  pruebas. El sistema donde estara hospedado el proxy en este caso sera un vector linux http://vectorlinux.com/ , os podeis bajar el proxy de http://www.squid-cache.org squid, podeís seguir el documento de instalación que viene incluido en el paquete, una vez instalado pasamos directamente  a la configuración.</div>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/08/culto.JPG"><img class="aligncenter size-medium wp-image-317" title="culto" src="http://www.disidents.org/wp-content/uploads/2009/08/culto-294x300.jpg" alt="culto" width="294" height="300" /></a></p>
<p>Autor: DDiego (ddiegoATdisidents.org)</p>
<p>Temática: Redes</p>
<p>Plataforma: Linux/Windows</p>
<p>Fecha: 14/06/2009</p>
<p>Licencia: Este documento es propiedad de Disidents, su distribución/modificación siempre esta limitada a la autorización explicita del autor o de la organización. En general siempre que no se modifique el contenido ni se elimine esta cabecera la distribución esta autorizada, salvo que Disidents o el autor indiquen lo contrario.</p>
<p class="MsoNormal">
<p class="MsoNormal"><span><strong><span style="font-size: 12.0pt; mso-bidi-font-size: 10.0pt; line-height: 115%; font-family: &quot;Georgia&quot;,&quot;serif&quot;; color: black;">Introducción.</span></strong></span><strong> </strong><span><span style="font-size: 12.0pt; mso-bidi-font-size: 10.0pt; line-height: 115%; font-family: &quot;Georgia&quot;,&quot;serif&quot;; color: black;"> </span></span></p>
<p>En el siguiente documento veremos como saltarnos un proxy que habremos configurado primero, haciendo tunneling dinámico.  También veremos como intentar evitarlo desde el punto del vista del administrador.</p>
<p class="MsoNormal"><span><strong><span style="font-size: 12.0pt; mso-bidi-font-size: 10.0pt; line-height: 115%; font-family: &quot;Georgia&quot;,&quot;serif&quot;; color: black;">Configurando nuestro proxy &#8220;squid&#8221;.</span></strong></span><strong> </strong></p>
<p>Voy a explicar como configurar de forma básica, este servidor proxy lo usaremos para hacer  pruebas. El sistema donde estara hospedado el proxy en este caso sera un vector linux http://vectorlinux.com/ , os podeis bajar el proxy de http://www.squid-cache.org squid, podeís seguir el documento de instalación que viene incluido en el paquete, una vez instalado pasamos directamente  a la configuración.</p>
<p>Editamos / usr / local / squid / etc / squid.conf</p>
<p>y modificamos o creamos las siguientes lineas</p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">http_port 8080</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">cache_mem 8 MB</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">cache_dir ufs /var/spool/squid 100 16 256</span><span lang="ES-TRAD"> #tamaño que deseamos uqe tenga la cache </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-spacerun: yes;"> </span><span style="mso-tab-count: 5;"> </span><span style="mso-spacerun: yes;"> </span># &#8220;ufs&#8221; is the old well-known Squid storage format that has <span style="mso-tab-count: 2;"> </span><span style="mso-tab-count: 3;"> </span><span style="mso-spacerun: yes;"> </span>#always been there.</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-tab-count: 5;"> </span><span style="mso-spacerun: yes;"> </span># 100 megas el numero de megas reservado para la cache </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-tab-count: 5;"> </span><span style="mso-spacerun: yes;"> </span># 16 es el numero de subdirectorios de primer nivel que seran <span style="mso-tab-count: 2;"> </span><span style="mso-tab-count: 3;"> </span><span style="mso-spacerun: yes;"> </span>#creados bajo el dentro del directorio squid, 16 por <span style="mso-tab-count: 5;"> </span><span style="mso-tab-count: 1;"> </span><span style="mso-spacerun: yes;"> </span>#defecto</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-tab-count: 5;"> </span><span style="mso-spacerun: yes;"> </span># 256 es el numero de subdirectorios de segundo nivel que <span style="mso-tab-count: 2;"> </span><span style="mso-tab-count: 3;"> </span><span style="mso-spacerun: yes;"> </span>#seran creados dentro de los subdirectorios de primer <span style="mso-tab-count: 5;"> </span><span style="mso-tab-count: 1;"> </span><span style="mso-spacerun: yes;"> </span>#nivel</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-tab-count: 5;"> </span><span style="mso-spacerun: yes;"> </span># por defecto 256</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">access_log /usr/local/squid/var/logs/access.log squid</span><span lang="ES-TRAD"> # Podriamos meterlos dentro de /var/log/squid <span style="mso-tab-count: 2;"> </span><span style="mso-tab-count: 5;"> </span><span style="mso-spacerun: yes;"> </span># eso a gusto de cada uno</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">cache_log /usr/local/squid/var/logs/cache.log</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">cache_store_log /usr/local/squid/var/logs/store.log</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">#creamos acls</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl mi_lan src 192.168.16.0/24</span><span lang="ES-TRAD"> #Permitimos solo el acceso a nuestra red:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-tab-count: 4;"> </span><span style="mso-spacerun: yes;"> </span>#Si pusieramos direcciones de equipos la mascara es 32 no 24.</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">#restriccion de acceso a páginas y contenido</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl webprohibidas url_regex disidents google</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">#Insertamos nuestras reglas</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">http_access allow mi_lan !webprohibidas</span><span lang="ES-TRAD"> # tambien podriamos poner un http_access deny <span style="mso-tab-count: 3;"> </span><span style="mso-tab-count: 3;"> </span><span style="mso-spacerun: yes;"> </span># webprohibidas</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">http_access allow localhost</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">http_access deny all</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Comprueba que esten creados los directorios cache y log, con permisos para poder escribir.</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">#<span style="color:#355E00"> / usr / local / squid / sbin / squid -z</span></span></p>
<p class="MsoNormal"><span style="color:#355E00" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| Creating Swap Directories</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25|  / usr / local / squid / var / cache exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25|  / usr / local / squid / var / cache / 00 exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 00</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25|  / usr / local / squid / var / cache / 01 exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| Making directories in  / usr / local / squid / var / cache / 01</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| / usr / local / squid / var / cache / 02 exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| Making directories in  / usr / local / squid / var / cache / 02</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| / usr / local / squid / var / cache / 03 exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 03</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| / usr / local / squid / var / cache / 04 exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:2| Making directories in / usr / local / squid / var / cache / 04</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">2009/04/27 03:12:25| / usr / local / squid / var / cache / 05 exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 05</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 06 exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 06</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 07 exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 07</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 08 exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 08</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 09 exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 09</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 0A exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 0A</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 0B exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 0B</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 0C exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 0C</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 0D exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 0D</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 0E exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 0E</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| / usr / local / squid / var / cache / 0F exists</p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">2009/04/27 03:12:25| Making directories in / usr / local / squid / var / cache / 0F</p>
<p class="MsoNormal">
<p class="MsoNormal"><span lang="ES-TRAD">Si queremos, autenticación necesitamos el modulo ncsa_auth, pero compruebo que no esta instalado, entonces vamos a las fuentes:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-spacerun: yes;"> </span></span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">cd squid-3.0.STABLE14 / helpers / basic_auth / / CSA</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"># make</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"># make install</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"># ls<span style="mso-spacerun: yes;"> </span></span><span lang="ES-TRAD"><span style="mso-spacerun: yes;"> </span></span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Makefile<span style="mso-spacerun: yes;"> </span>Makefile.in<span style="mso-spacerun: yes;"> </span>crypt_md5.h<span style="mso-spacerun: yes;"> </span>ncsa_auth*<span style="mso-spacerun: yes;"> </span>ncsa_auth.c</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Makefile.am<span style="mso-spacerun: yes;"> </span>crypt_md5.c<span style="mso-spacerun: yes;"> </span>crypt_md5.o<span style="mso-spacerun: yes;"> </span>ncsa_auth.8<span style="mso-spacerun: yes;"> </span>ncsa_auth.o</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">squidproxy: / / tmp / squid-3.0.STABLE14 / helpers / basic_auth / NCSA</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">LE14 / helpers / basic_auth / NCSA</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"># cp ncsa_auth / usr / sbin /</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"># ln -s / usr / local / squid / libexec / ncsa_auth / usr / sbin / ncsa_auth </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">ln: creating symbolic link ` / usr / sbin / ncsa_auth&#8217;: File exists</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Creando usuarios: htpasswd viene con apache</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"># htpasswd -c  / usr / local / squid / etc / passwords ddiego</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">New password: </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Re-type new password: </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Adding password for user ddiego</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Ahora podemos ir a squid.conf y buscar auth_param_basic o ncsa</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="mso-spacerun: yes;"> </span>quedaria así:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">auth_param basic program / usr / local / squid / libexec / ncsa_auth  / usr / local / squid / etc / passwords</span></p>
<p class="MsoNormal"><span lang="ES-TRAD">agregamos la siguiente acl:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl mispass proxy_auth REQUIRED</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">y tambien debemos modificar la regla:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">http_access allow mi_lan mispass !web_prohibidas</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">si queremos evitar bajar mp3 avi mpeg</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl nodescargas url path_regex \.mp3 \.avi \.mpeg</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Restringir horarios</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl diahora time SMTWHFA 9:00-15:01</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">un día en concreto</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl martes time T 8:00-10:00</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">entonces la regla quedaria tal que asi y ademas prohibiriamos los martes:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">http_access allow mi_lan mispass !web_prohibidas !martes</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Podemos iniciar squid proxy:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> /usr / local / squid / sbin / squid</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Comprobamos que esta escuchando:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"># netstat -an | grep 8080</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">tcp<span style="mso-spacerun: yes;"> </span>0<span style="mso-spacerun: yes;"> </span>0 0.0.0.0:8080<span style="mso-spacerun: yes;"> </span><span style="mso-spacerun: yes;"> </span>0.0.0.0:*<span style="mso-spacerun: yes;"> </span>LISTEN</span></p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal"><span><strong><span style="font-size: 12.0pt; mso-bidi-font-size: 10.0pt; line-height: 115%; font-family: &quot;Georgia&quot;,&quot;serif&quot;; color: black;">Parte cliente.</span></strong></span><strong> </strong><strong><span style="font-size: 14.0pt; mso-bidi-font-size: 11.0pt; line-height: 115%;"> </span></strong></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Bueno, ya tenemos configurado el proxy, ahora solo hay que configurarlo en el navegador del cliente, vemos que puede navegar sin problema pero también vemos que al intentar acceder a algunas paginas nos sale un error parecido al siguiente:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd1.JPG"><img class="aligncenter size-medium wp-image-316" title="dd1" src="http://www.disidents.org/wp-content/uploads/2009/08/dd1-300x224.jpg" alt="dd1" width="300" height="224" /></a><br />
</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600"  o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f"  stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_s1026" type="#_x0000_t75" style='position:absolute;  margin-left:0;margin-top:0;width:481.6pt;height:359.9pt;z-index:251653632;  mso-wrap-distance-left:0;mso-wrap-distance-right:0;mso-position-horizontal:center;  mso-position-horizontal-relative:text;mso-position-vertical:absolute;  mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image001.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image001.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Esto se debe a la acl que hemos puesto anteriormente en el squid:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl webprohibidas url_regex disidents google</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">En el access_log de squid veremos lo siguiente:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD">1240825278.034<span style="mso-spacerun: yes;"> </span>1 192.168.1.51 TCP_DENIED / 403 2119 GET http: / / www.disidents.org /  ddiego NONE / &#8211; text / html</span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Para saltarnos esto necesitaremos un servidor sshd en algun sitio,<span style="mso-spacerun: yes;"> </span>por ejemplo en nuestra casa, luego nos bajaremos el putty <a href="http://www.putty.org/">http://www.putty.org/</a> y lo configuraremos de la siguiente manera.</span></p>
<p class="MsoNormal"><span lang="ES-TRAD">En hostname ponemos la ip o nombre de nuestro equipo sshd el puerto “22 por defecto” o el que tengamos y le pondremos un nombre, aun no le deis a aceptar ya que hay que configurar más cosas:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd2.JPG"><img class="aligncenter size-medium wp-image-318" title="dd2" src="http://www.disidents.org/wp-content/uploads/2009/08/dd2-300x284.jpg" alt="dd2" width="300" height="284" /></a><br />
</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1027" type="#_x0000_t75"  style='position:absolute;margin-left:0;margin-top:0;width:341.75pt;height:324.5pt;  z-index:251654656;mso-wrap-distance-left:0;mso-wrap-distance-right:0;  mso-position-horizontal:center;mso-position-horizontal-relative:text;  mso-position-vertical:absolute;mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image003.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image003.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Ahora iremos a la seccion Proxy, es donde pondremos el servidor proxy que tenemos en nuestro navegador y el puerto, en concreto pondre el que he montado en el paso anterior:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd3.JPG"><img class="aligncenter size-medium wp-image-319" title="dd3" src="http://www.disidents.org/wp-content/uploads/2009/08/dd3-300x288.jpg" alt="dd3" width="300" height="288" /></a><br />
</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1034" type="#_x0000_t75"  style='position:absolute;margin-left:0;margin-top:0;width:323.7pt;height:301.45pt;  z-index:251661824;mso-wrap-distance-left:0;mso-wrap-distance-right:0;  mso-position-horizontal:center;mso-position-horizontal-relative:text;  mso-position-vertical:absolute;mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image005.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image005.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Si el proxy requiere autenticacion, introducimos los datos en Username y Password</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Ahora podemos habilitar compresión, este paso es opcional</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd4.JPG"><img class="aligncenter size-medium wp-image-320" title="dd4" src="http://www.disidents.org/wp-content/uploads/2009/08/dd4-300x288.jpg" alt="dd4" width="300" height="288" /></a><br />
</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1028" type="#_x0000_t75"  style='position:absolute;margin-left:54.55pt;margin-top:2.4pt;width:342.5pt;  height:324.5pt;z-index:251655680;mso-wrap-distance-left:0;  mso-wrap-distance-right:0;mso-position-horizontal:absolute;  mso-position-horizontal-relative:text;mso-position-vertical:absolute;  mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image007.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image007.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Ahora tenemos que configurar el tunnel dinamico, pondremos en Source port <span style="color: #355e00;">8080</span> y en Destination <span style="color: #355e00;">Dynamic</span>, y luego presionamos el boton <span style="color: #355e00;">Add</span></span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="color: #355e00;"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd5.JPG"><img class="aligncenter size-medium wp-image-321" title="dd5" src="http://www.disidents.org/wp-content/uploads/2009/08/dd5-300x286.jpg" alt="dd5" width="300" height="286" /></a><br />
</span></span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1029" type="#_x0000_t75"  style='position:absolute;margin-left:0;margin-top:0;width:344pt;height:302.45pt;  z-index:251656704;mso-wrap-distance-left:0;mso-wrap-distance-right:0;  mso-position-horizontal:center;mso-position-horizontal-relative:text;  mso-position-vertical:absolute;mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image009.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image009.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal" style="page-break-before: always;"><span lang="ES-TRAD">Quedaria tal que así:</span></p>
<p class="MsoNormal" style="page-break-before: always;"><span lang="ES-TRAD"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd6.JPG"><img class="aligncenter size-medium wp-image-322" title="dd6" src="http://www.disidents.org/wp-content/uploads/2009/08/dd6-300x286.jpg" alt="dd6" width="300" height="286" /></a><br />
</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1031" type="#_x0000_t75"  style='position:absolute;margin-left:88.5pt;margin-top:0;width:298.55pt;  height:314.3pt;z-index:251658752;mso-wrap-distance-left:0;  mso-wrap-distance-right:0;mso-position-horizontal:absolute;  mso-position-horizontal-relative:text;mso-position-vertical:absolute;  mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image011.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image011.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--><span lang="ES-TRAD"><span style="mso-spacerun: yes;"> </span></span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Ahora volveriamos a Session y presionariamos S<span style="color: #355e00;">ave</span> para<span style="mso-spacerun: yes;"> </span>guardarlo para otro momento, posteriormente presionamos <span style="color: #355e00;">Open </span>y se nos abre una consola negra pidiendo usuario y contraseña, dejaremos esa ventana negra abierta.</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd7.JPG"><img class="aligncenter size-medium wp-image-323" title="dd7" src="http://www.disidents.org/wp-content/uploads/2009/08/dd7-300x286.jpg" alt="dd7" width="300" height="286" /></a><br />
</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1030" type="#_x0000_t75"  style='position:absolute;margin-left:67.65pt;margin-top:.15pt;width:295.55pt;  height:278.15pt;z-index:251657728;mso-wrap-distance-left:0;  mso-wrap-distance-right:0;mso-position-horizontal:absolute;  mso-position-horizontal-relative:text;mso-position-vertical:absolute;  mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image013.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image013.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Ahora vamos a nuestro navegador, a configurar nuestro proxy socks, ya sabeis Herramientas &gt; Opciones de Internet &gt;<span style="mso-spacerun: yes;"> </span>Conexiones &gt; Configuración LAN &gt; y capturaza, en este caso hay que dejar todo vacio salvo Socks, poniendo nuestra <span style="color: #355e00;">dirección local </span>y puerto <span style="color: #355e00;">8080</span></span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><span style="color: #355e00;"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd8.JPG"><img class="aligncenter size-medium wp-image-324" title="dd8" src="http://www.disidents.org/wp-content/uploads/2009/08/dd8-282x300.jpg" alt="dd8" width="282" height="300" /></a><br />
</span></span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1032" type="#_x0000_t75"  style='position:absolute;margin-left:0;margin-top:0;width:333.05pt;height:326.6pt;  z-index:251659776;mso-wrap-distance-left:0;mso-wrap-distance-right:0;  mso-position-horizontal:center;mso-position-horizontal-relative:text;  mso-position-vertical:absolute;mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image015.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image015.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">Ahora si nos dejara entrar en la página que deseamos.</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"><a href="http://www.disidents.org/wp-content/uploads/2009/08/dd9.JPG"><img class="aligncenter size-medium wp-image-325" title="dd9" src="http://www.disidents.org/wp-content/uploads/2009/08/dd9-300x224.jpg" alt="dd9" width="300" height="224" /></a><br />
</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_s1033" type="#_x0000_t75"  style='position:absolute;margin-left:0;margin-top:0;width:398.45pt;height:273.5pt;  z-index:251660800;mso-wrap-distance-left:0;mso-wrap-distance-right:0;  mso-position-horizontal:center;mso-position-horizontal-relative:text;  mso-position-vertical:absolute;mso-position-vertical-relative:text' filled="t"> <v:fill color2="black" /> <v:imagedata src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image017.jpg" mce_src="file:///C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\msohtmlclip1\01\clip_image017.jpg"   o:title="" /> <w:wrap type="square" side="largest" /> </v:shape><![endif]--></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD">En el log / usr / local / squid / var / logs / access.log del servidor veremos:</span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD">1240856427.215 251184 192.168.1.51 TCP_MISS / 200 379659 CONNECT micasa.ddiego.dsd:22 &#8211; DIRECT / micasa.ddiego.dsd -</span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD"><br />
</span></p>
<p class="MsoNormal">
<p class="MsoNormal"><span><strong><span style="font-size: 12.0pt; mso-bidi-font-size: 10.0pt; line-height: 115%; font-family: &quot;Georgia&quot;,&quot;serif&quot;; color: black;">Como evitar este tipo de conexiones, pues con más acls</span></strong></span><span><span style="font-size: 12.0pt; mso-bidi-font-size: 10.0pt; line-height: 115%; font-family: &quot;Georgia&quot;,&quot;serif&quot;;">.</span></span></p>
<p class="MsoNormal"><span style="color: #355e00;">micasa.ddiego.dsd</span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">acl adiossh port 22</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">http_access allow mi_lan<span style="mso-spacerun: yes;"> </span>!web_prohibidas !adiossh </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD">Y esto vemos en el servidor.</span></p>
<p class="MsoNormal"><span style="color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD">1240859444.101<span style="mso-spacerun: yes;"> </span>3 192.168.1.51 TCP_DENIED / 403 1746 CONNECT micasa.ddiego.dsd:22 &#8211; NONE / &#8211; text / html</span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 14.0pt; color: black;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; mso-bidi-font-family: &quot;Times New Roman&quot;; color: black;" lang="ES-TRAD">Eso es todo amigos!!!, saludos.</span><span style="mso-bidi-font-size: 10.0pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; mso-bidi-font-family: &quot;Times New Roman&quot;; color: #355e00;" lang="ES-TRAD">.</span><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoBodyText" style="margin-bottom: .0001pt;"><span lang="ES-TRAD"> </span></p>
<p class="MsoBodyText" style="margin-bottom: .0001pt;"><span style="font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; mso-bidi-font-family: &quot;Times New Roman&quot;;" lang="ES-TRAD">DDiego (ddiegoATdisidents.org)</span><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 10.0pt; color: #355e00;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 14.0pt; color: black;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 14.0pt; color: black;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 14.0pt; color: black;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span style="font-size: 14.0pt; color: black;" lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal">
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
<p class="MsoNormal"><span lang="ES-TRAD"> </span></p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post='" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2009/08/05/de-proxy-en-proxy-y-navego-porque-me-toca/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Wow tengo un huésped en mi PC! :D</title>
		<link>http://www.disidents.org/2009/07/02/wow-tengo-un-huesped-en-mi-pc-d/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wow-tengo-un-huesped-en-mi-pc-d</link>
		<comments>http://www.disidents.org/2009/07/02/wow-tengo-un-huesped-en-mi-pc-d/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 23:16:07 +0000</pubDate>
		<dc:creator>spark</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[Análisis de Virus]]></category>
		<category><![CDATA[Backdoor]]></category>
		<category><![CDATA[Desinfección]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[DsD!]]></category>
		<category><![CDATA[Ingeniería Inversa]]></category>
		<category><![CDATA[Reversing Links]]></category>
		<category><![CDATA[SparK]]></category>
		<category><![CDATA[SparKrisp]]></category>
		<category><![CDATA[Troyano]]></category>
		<category><![CDATA[Virus]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=189</guid>
		<description><![CDATA[Hola a todos, hoy a la mañana, enciendo mi notebook y descubro que mi NOD32 4.0 detecta intentos de conecciones de mi PC hacia servidores, con URL&#8217;s raras&#8230; Esto me dió alegría ya que me dije, &#8220;bien, algo nuevo para investigar vino a mi!!&#8221;&#8230; así que me puse manos a la obra, y mientras publicaba [...]]]></description>
			<content:encoded><![CDATA[<p>Hola a todos, hoy a la mañana, enciendo mi notebook y descubro que mi NOD32 4.0 detecta intentos de conecciones de mi PC hacia servidores, con URL&#8217;s raras&#8230; <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Esto me dió alegría ya que me dije, &#8220;bien, algo nuevo para investigar vino a mi!!&#8221;&#8230; así que me puse manos a la obra, y mientras publicaba un artículo viejo que escribí para la revista @rroba, me dediqué a mirar este bichito&#8230;</p>
<p><strong>Mirando los logs de NOD</strong></p>
<p>He aquí algunas líneas del log de mi AV&#8217;s&#8230;</p>
<blockquote><p><em>06/06/2009 12:02:04 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.147.18/p0508/2.0/w2.bin?829467</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:56 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.73.178/p0508/2.0/w2.bin?405861</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:48 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.34.178/p0612/2.0/w1.bin?413869</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:40 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.72.250/p0508/2.0/w1.bin?762274</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:29 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.147.18/p0508/2.0/w1.bin?875733</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:21 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.73.178/p0508/2.0/w1.bin?233033</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:19 a.m.</em><span><em> </em></span><em>Real-time file system protection</em><span><em> </em></span><em>file</em><span><em> </em></span><em>C:\WINDOWS\system32\wtukd32.exe</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>cleaned by deleting &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Event occurred on a file modified by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:12 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.34.178/p0612/2.0/w.bin?613307</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:01:04 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.72.250/p0508/2.0/w.bin?333771</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:00:56 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.147.18/p0508/2.0/w.bin?280812</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>06/06/2009 12:00:48 a.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://174.133.73.178/p0508/2.0/w.bin?170629</em><span><em> </em></span><em>probably a variant of Win32/Adware.Coolezweb.AI application</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NT AUTHORITY\SYSTEM</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\WINDOWS\system32\svchost.exe.</em></p>
<p><em>05/06/2009 10:15:47 p.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://bddanhdnfl.net/ccsuper3.php</em><span><em> </em></span><em>Win32/Small.NEK trojan</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\fuwtkxex.exe.</em></p>
<p><em>05/06/2009 10:15:46 p.m.</em><span><em> </em></span><em>Real-time file system protection</em><span><em> </em></span><em>file</em><span><em> </em></span><em>C:\clftq.exe</em><span><em> </em></span><em>Win32/TrojanDownloader.Bredolab.AA trojan</em><span><em> </em></span><em>cleaned by deleting &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Event occurred on a new file created by the application: C:\fuwtkxex.exe.</em></p>
<p><em>05/06/2009 10:15:45 p.m.</em><span><em> </em></span><em>Real-time file system protection</em><span><em> </em></span><em>file</em><span><em> </em></span><em>C:\Documents and Settings\Sparkrisp\Configuración local\Archivos temporales de Internet\Content.IE5\K13ASQ4J\ccsuper2[1].htm</em><span><em> </em></span><em>Win32/TrojanDownloader.Bredolab.AA trojan</em><span><em> </em></span><em>cleaned by deleting &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Event occurred on a new file created by the application: C:\fuwtkxex.exe.</em></p>
<p><em>05/06/2009 10:15:45 p.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://bddanhdnfl.net/ccsuper2.php</em><span><em> </em></span><em>Win32/TrojanDownloader.Bredolab.AA trojan</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\fuwtkxex.exe.</em></p>
<p><em>05/06/2009 10:15:42 p.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://bddanhdnfl.net/ccsuper1.php</em><span><em> </em></span><em>Win32/Small.NEK trojan</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\fuwtkxex.exe.</em></p>
<p><em>05/06/2009 10:15:41 p.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://bddanhdnfl.net/ccsuper0.php</em><span><em> </em></span><em>a variant of Win32/Rustock.NIK trojan</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\fuwtkxex.exe.</em></p>
<p><em>05/06/2009 10:15:18 p.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://bddanhdnfl.net/progs/xadmaa/molivjw.php</em><span><em> </em></span><em>Win32/Small.NEK trojan</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\Documents and Settings\Sparkrisp\Configuración local\Temp\136.exe.</em></p>
<p><em>05/06/2009 10:15:17 p.m.</em><span><em> </em></span><em>HTTP filter</em><span><em> </em></span><em>file</em><span><em> </em></span><em>http://bddanhdnfl.net/progs/xadmaa/djdjjnxlcp.php</em><span><em> </em></span><em>Win32/Small.NEK trojan</em><span><em> </em></span><em>connection terminated &#8211; quarantined</em><span><em> </em></span><em>NOTEBOOK\Sparkrisp</em><span><em> </em></span><em>Threat was detected upon access to web by the application: C:\Documents and Settings\Sparkrisp\Configuración local\Temp\136.exe.</em></p></blockquote>
<p>Bien, nuestra pequeña bestia intentó muchas cosas al mismo tiempo prácticamente. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Aparentemente, nuestro autor, o &#8220;autor&#8221; porque no creo que lo sea de todos estos virusillos, tiene un host y seguramente hace downloaders, para los mismos, estos consultan las url&#8217;s que estamos viendo en el log, baja los troyanos, y finalmente infecta nuestra PC, para robarnos información, tomar el control, etc.</p>
<p><strong>Viendo que hay detrás</strong></p>
<p>Si probamos alguna de las URL&#8217;s, y la ejecutamos en un navegador (sin miedo jejeje), veremos algo por el estilo:</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/06/cap1.jpg"><img class="aligncenter size-medium wp-image-190" title="cap1" src="http://www.disidents.org/wp-content/uploads/2009/06/cap1-300x181.jpg" alt="cap1" width="300" height="181" /></a></p>
<p>Exactamente, el binario de uno de los troyanos, el cual NOD lo detecta como: Win32/Small.NEK.</p>
<p>Con una simple mirada en el código binario, podemos ver que está hecho en VB (MSVBVM60.DLL), y otra cosa más, en que carpeta el desarrollador lo tiene al proyecto entero!</p>
<blockquote><p>D:\Documents and Settings\Administrator\Lhb—\installscash active!!nno form wow downloader\mycc\Project1.vbp</p></blockquote>
<p>Aparentemende NOD lo detecta como un troyano, pero es un downloader&#8230;</p>
<p>Luego, veremos nombres de logs, archivos de log, serán archivos generados por el downloader?</p>
<blockquote><p>xdfbxewhrrjdzdfbcvne5gwgaabaz36.log</p>
<p>xdfbxewhrrjdzdfbcvne5gwgaabaz37.log</p>
<p>xdfbxewhrrjdzdfbcvne5gwgaabaz38.log</p>
<p>xdfbxewhrrjdzdfbcvne5gwgaabaz39.log</p></blockquote>
<p>Y la lista sigue&#8230;</p>
<p>Así veremos también en esa misma página, la utilización de la API: urlmonURLDownloadToFile, sabemos que es utilizada para bajar archivos de una URL, muy común en los downloaders. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Si guardamos el fichero obtenido de esa URL (sugiero hacerlo con wget), y utilizan el WKT VB Debugger, podremos ir viendo lo que va a haciendo&#8230;</p>
<p>Algunas de las cosas que veremos es que tiene strings encriptadas, para evitar el desensamblado y la identificación sencilla del virus en cuestión.</p>
<p>Así que debuggearemos un poco para ver que hace&#8230;</p>
<blockquote><p>M8C9S8H5zcX9C9z3Q9UaKbRbA4y0k9EbybPcR9LcUaYby23azcJdOcFaR9z1</p>
<p>M8C9UaH5C9X9Faz3ObUaIdP9w0C4naJaIcEaLaRcOby27bH8Q8EbRcz8NbHdI3b8KaOcFaPbKazcUaB52bJcJdIcD8zaVbLcJcM8z3jaLdz8PbLcN9E9w0H3cb2bibG3w2</p></blockquote>
<div>He aquí algunas de las strings encriptadas&#8230; es simple pensar que utiliza XOR, para encriptarlas, ya que no se necesita mucho más para estas tareas víricas&#8230; <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </div>
<div>También veremos cosas como:</div>
<blockquote>
<div>AddService = zgtkg3jrsyzdb6wtgw3rh3wahhrjkae80,,My_AddService_Name</div>
</blockquote>
<div>Quiere decir que este bichito debe instalar un servicio en nuestro sistema&#8230; pero que pícaro&#8230; <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </div>
<div>Podemos ver el código interpretado del virus sin necesidad de correrlo en el debugger de WKT&#8230;</div>
<div>Para eso podemos utilizar el VB Decompiler Lite (o el Pro si lo consiguen por ahí&#8230; jeje), y obtendremos lo siguiente:</div>
<div>
<blockquote>
<div>Private Sub MZ_4051D4</div>
<div>loc_404908: OnErrorGoto 0</div>
<div>loc_40490D: LitStr &#8220;M8C9S8H5zcX9C9z3Q9UaKbRbA4y0k9EbybPcR9LcUaYby23azcJdOcFaR9z1&#8243;</div>
<div>loc_404910: ImpAdCallI2 proc_403FBC</div>
<div>loc_404915: FStStr var_A0</div>
<div>loc_404918: LitI4 0</div>
<div>loc_40491D: FLdZeroAd var_A0</div>
<div>loc_404920: CVarStr var_94</div>
<div>loc_404923: ImpAdCallFPR4 Shell</div>
<div>loc_404928: FStFPR8 var_9C</div>
<div>loc_40492B: FFree1Str var_A0</div>
<div>loc_40492E: FFree1Var var_94 = &#8220;&#8221;</div>
<div>loc_404933: LitStr &#8220;Q9Fcz3ybKbLbCaIbCbB5z3y2RcObybObRdybx1R8OcAbVdOc0bA468cbib5a2abd698a&#8221;</div>
<div>loc_404936: ImpAdCallI2 proc_403FBC</div>
</blockquote>
<div>Podemos ver los strings encriptados, y en la línea siguiente las llamadas a un proceso en la dirección 403FBC. Esta función se encarga de desencriptar los strings.</div>
</div>
<div>Si abrimos este programa con el debugger de WKT, veremos que la función en 403FBC hacela desencripción, y finalmente después de cada proceso de desencripción, y más adelante, la ventana de mensajes nos irá diciendo algo como esto:</div>
<blockquote>
<div>FStStr -&gt; &#8216;sc config   wscsvc start= DISABLED&#8217;</div>
<div>
<div>FStStrNoPop -&gt; &#8216;C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\zgtkg3jrsyzdb6wtgw3rh3wahhrjkae35.log&#8217;</div>
<div>FStStrNoPop -&gt; &#8216;C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\zgtkg3jrsyzdb6wtgw3rh3wahhrjkae43.exe&#8217;</div>
<div>FStStrNoPop -&gt; &#8216;zgtkg3jrsyzdb6wtgw3rh3wahhrjkae81.exe&#8217;</div>
</div>
</blockquote>
<div>Veremos que ejecuta nada más ni nada menos que un comando de DOS, que intenta deshabilitar el servicio de firewall de Windows y Centro de Seguridad, luego grabará un archivo de log , el EXE y seguirá con otro&#8230;</div>
<div>CVarStr -&gt; &#8216;net.exe stop &#8220;Security Center&#8221;&#8216;</div>
<div>
<div>FStStr -&gt; &#8216;sc config   wscsvc start= DISABLED&#8217;</div>
<div>FStStrNoPop -&gt; &#8216;C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\zgtkg3jrsyzdb6wtgw3rh3wahhrjkae35.log&#8217;</div>
<div>FStStrNoPop -&gt; &#8216;C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\zgtkg3jrsyzdb6wtgw3rh3wahhrjkae43.exe&#8217;</div>
<div>FStStrNoPop -&gt; &#8216;zgtkg3jrsyzdb6wtgw3rh3wahhrjkae81.exe&#8217;</div>
</div>
<div>Veremos otras strings como:</div>
<div>
<blockquote>
<div>Concat-&gt;&#8217;C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp&#8217; + &#8216;\zgtkg3jrsyzdb6wtgw3rh3wahhrjkae79.inf&#8217;</div>
<div>FStStr -&gt; &#8216;C:\DOCUME~1\SPARKR~1\CONFIG~1\Temp\zgtkg3jrsyzdb6wtgw3rh3wahhrjkae79.inf&#8217;</div>
</blockquote>
</div>
<div>Cuando decompilemos el programita este, veremos que la función de la dirección 4043E4 se encarga de instalar el servicio del que les hablaba antes&#8230; el servicio llevará el nombre de:  zgtkg3jrsyzdb6wtgw3rh3wahhrjkae81.</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2009/06/servicio2.jpg"><img class="aligncenter size-medium wp-image-193" title="servicio2" src="http://www.disidents.org/wp-content/uploads/2009/06/servicio2-300x187.jpg" alt="servicio2" width="300" height="187" /></a></div>
<div>Si ejecutan el programa, lo podrán ver en la lista de servicios, así que podrán deshabilitarlo&#8230;</div>
<div><strong>Viejo Truco</strong></div>
<div><strong><br />
</strong></div>
<div>Dije antes, que utiliza la famosa API para bajar un archivo de una URL en particular&#8230; hay trucos para evitar que los antivirus detecten que se está utilizando, generalmente la heurística detecta todo y está sonado.. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </div>
<div>Este virus, no es la excepción, y el truco que usa, está en la función 40417C.</div>
<div>Concatena cada letra del nombre de las API&#8217;s que pueden llamar la atención a nuestros Antivirus (AV&#8217;s)&#8230;</div>
<div>
<blockquote>
<div>loc_40401D: LitStr &#8220;U&#8221;</div>
<div>loc_404020: LitStr &#8220;R&#8221;</div>
<div>loc_404023: ConcatStr</div>
<div>loc_404024: FStStrNoPop var_A0</div>
<div>loc_404027: LitStr &#8220;L&#8221;</div>
<div>loc_40402A: ConcatStr</div>
<div>loc_40402B: FStStrNoPop var_A4</div>
<div>loc_40402E: LitStr &#8220;D&#8221;</div>
<div>loc_404031: ConcatStr</div>
<div>loc_404032: FStStrNoPop var_A8</div>
<div>loc_404035: LitStr &#8220;o&#8221;</div>
<div>loc_404038: ConcatStr</div>
<div>loc_404039: FStStrNoPop var_AC</div>
<div>loc_40403C: LitStr &#8220;w&#8221;</div>
<div>loc_40403F: ConcatStr</div>
<div>loc_404040: FStStrNoPop var_B0</div>
<div>loc_404043: LitStr &#8220;n&#8221;</div>
<div>loc_404046: ConcatStr</div>
<div>loc_404047: FStStrNoPop var_B4</div>
</blockquote>
<div>Luego si miramos más el proyecto veremos que tiene una función para ejecutar las API&#8217;s de alguna manera especial.. no entraremos tanto en detalle, vamos a seguir mirando que mas nos ofrece&#8230;</div>
<div><strong>Siguiendo el rastro</strong></div>
<div>Si dejamos a este bichito ejecutarse un par de días, seguirá bajando copias y variantes de sí mismo. Parece que los programadores de estos downloaders, son muy activos, en dos días he bajado como 3 o 4 versiones del mismo downloader, con algunas diferencias&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2009/06/inicio2.jpg"><img class="aligncenter size-medium wp-image-196" title="inicio2" src="http://www.disidents.org/wp-content/uploads/2009/06/inicio2-300x129.jpg" alt="inicio2" width="300" height="129" /></a></div>
<div>Tenemos otro que modifica el registro de windows, instalándose en el inicio, para hacer las conecciones remotas, cada vez que arranca el sistema operativo.</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2009/06/inicio.jpg"><img class="aligncenter size-medium wp-image-197" title="inicio" src="http://www.disidents.org/wp-content/uploads/2009/06/inicio-300x191.jpg" alt="inicio" width="300" height="191" /></a></div>
<div>Por ejemplo existe otra variante, la que se instala al inicio, que no instala el servicio&#8230; <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </div>
<div>En la segunda imagen de inicio, marco otros sospechosos que encontré, no sé si son de este virus o de otro que tengo xDDD, si es de otro, quizás tengamos más diversión xD&#8230;</div>
<div>Al ver que instala servicios, se me ocurre correr la utilidad GMER, muy utilizada. Y me avisa de una instalación de un servicio oculto&#8230;</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2009/06/servicio3.jpg"><img class="aligncenter size-medium wp-image-198" title="servicio3" src="http://www.disidents.org/wp-content/uploads/2009/06/servicio3-300x226.jpg" alt="servicio3" width="300" height="226" /></a></div>
<div>Podemos desinstalarlo y borrarlo con GMER, sin problemas, al próximo reinicio no estará más. Si queremos analizarlo un poco más con IDA no veremos mucho, así que o Softice o Syser Debugger, que es bastante bueno también. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </div>
<div>Bien, como dije cada uno de los &#8220;hijos&#8221; tiene sus características, la idea principal calculo que será infectarnos y hacernos zombies de alguna manera, o robarnos información, a su vez con una rápida actualización de los downloaders, los cuales no fueron detectados por NOD 4.0, sino que éste detectó las conecciones hacia el host.</div>
<div><a href="http://www.disidents.org/wp-content/uploads/2009/06/hijos.jpg"><img class="aligncenter size-medium wp-image-199" title="hijos" src="http://www.disidents.org/wp-content/uploads/2009/06/hijos-300x225.jpg" alt="hijos" width="300" height="225" /></a></div>
<div>Los dos ficheros de inicio, que tenía yo en mi PC, aparentemente están empaquetados, veremos con una pequeña sesión de Olly que sale&#8230;en la segunda parte.. xD</div>
<div>Veremos varias cosas más, otros archivos ocultos especialmente en las carpetas system32 de nuestro windows&#8230;. pero eso será como dije en la próxima&#8230;</div>
<div>Espero que les esté gustando.</div>
<div>Un saludo.</div>
</div>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2009/07/02/wow-tengo-un-huesped-en-mi-pc-d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Análisis de Bifrost v1.2 Exhaustivo Parte #1</title>
		<link>http://www.disidents.org/2009/06/19/analisis-de-bifrost-v12-exahustivo-parte-1/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=analisis-de-bifrost-v12-exahustivo-parte-1</link>
		<comments>http://www.disidents.org/2009/06/19/analisis-de-bifrost-v12-exahustivo-parte-1/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 14:07:37 +0000</pubDate>
		<dc:creator>AbsshA</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[AbsshA]]></category>
		<category><![CDATA[BitFrost]]></category>
		<category><![CDATA[Cracking]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[Ingeniería Inversa]]></category>
		<category><![CDATA[Malware]]></category>
		<category><![CDATA[Reversing Engineering]]></category>
		<category><![CDATA[Trojans]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=202</guid>
		<description><![CDATA[Ya llevaba la idea desde hace tiempo y de momento sale la parte #1&#8230; el archivo adjunto contiene: &#8220;Bifrost_core.dll&#8221; -&#62; .DLL con cabecera reparada y descomprimida (de UPX), y tabla IAT arreglada que contiene el núcleo del troyano. &#8220;PE_Header.Bifrost_core.txt&#8221; -&#62; Copia de la Información del PE Header de la librería que se crea en memoria. &#8220;Server.exe_INFECTED&#8221; -&#62; Servidor [...]]]></description>
			<content:encoded><![CDATA[<div>
<div>
<div>Ya llevaba la idea desde hace tiempo y de momento sale la parte #1&#8230; el archivo adjunto contiene:</div>
<p></p>
<div></div>
<div>
<div>&#8220;<em>Bifrost_core.dll</em>&#8221; -&gt; <strong>.DLL con cabecera reparada y descomprimida (de UPX), y tabla IAT arreglada que contiene el núcleo del troyano</strong>.</div>
<p></p>
<div></div>
<div>&#8220;<em>PE_Header.Bifrost_core.txt</em>&#8221; -&gt; <strong>Copia de la Información del PE Header de la librería que se crea en memoria.</strong></div>
<div><strong><br />
</strong></div>
<div>&#8220;<em>Server.exe_INFECTED</em>&#8221; -&gt; <strong>Servidor que se ha analizado (Infectado, aunque no conecta a ningún lado).</strong></div>
<div><strong><br />
</strong></div>
<div>En ésta parte se ve solamente hasta lo que es extraer la .dll de la memoria, en la segunda parte haré el análisis Estático con IDA (que tengo casi terminado) y escribiré el funcionamiento sobre como se Instala en el SO, Protocolos de comunicación, Desinstalación y Contra-Ataques que se puedan hacer&#8230;</div>
<p></p>
<div>Si hay alguien que le interese saber como reparé la .dll una vez volcada que me escriba al privado y haré una Parte III o un Anexo.</div>
<p></p>
<div></div>
<div>Download:</div>
<div></div>
<p></p>
<div><a href="http://www.savefile.com/files/2130462">Mirror 1</a></div>
<div><a href="http://sites.google.com/site/absshacls/Home/Bifrost.v1.2.Analasis.Exahustivo.By.%5BClS%5DAbsshA.rar?attredirects=0">Mirror 2</a></div>
<div>Password: &#8220;crackslatinos&#8221;</div>
<div>&#8211;</div>
<div>AbsshA@disidents.com</div>
</div>
<div>http://abssha.blogspot.com</div>
</div>
</div>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2009/06/19/analisis-de-bifrost-v12-exahustivo-parte-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Annoyer by Spider (Old Session &#8211; 2002)</title>
		<link>http://www.disidents.org/2009/05/02/annoyer-by-spider-old-session-2002/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=annoyer-by-spider-old-session-2002</link>
		<comments>http://www.disidents.org/2009/05/02/annoyer-by-spider-old-session-2002/#comments</comments>
		<pubDate>Sat, 02 May 2009 17:04:12 +0000</pubDate>
		<dc:creator>spark</dc:creator>
				<category><![CDATA[Artículos]]></category>
		<category><![CDATA[Spark - @rroba]]></category>
		<category><![CDATA[Annoyer]]></category>
		<category><![CDATA[DisidentS]]></category>
		<category><![CDATA[Ingeniería Inversa]]></category>
		<category><![CDATA[RCE]]></category>
		<category><![CDATA[Reversing Links]]></category>
		<category><![CDATA[SparK]]></category>

		<guid isPermaLink="false">http://www.disidents.org/?p=145</guid>
		<description><![CDATA[Muy bien, he encontrado por ahí un buen crackme, un poco raro, con una proteccion linda de explicar, mas adelante les explicaré algunas técnicas y trucos de cómo podemos encontrar “pistas” para poder vencer estos hermosos juguetes llamados crackmes. Empezaremos por el principio, como siempre debemos empezar, mirando la víctima, ejecutemoslo… listo? ¿Que tenemos?, una [...]]]></description>
			<content:encoded><![CDATA[<p><em>Muy bien, he encontrado por ahí un buen crackme, un poco raro, con una proteccion linda de explicar, mas adelante les explicaré algunas técnicas y trucos  de cómo podemos encontrar “pistas” para poder vencer estos hermosos juguetes llamados crackmes.<br />
</em></p>
<p>Empezaremos por el principio, como siempre debemos empezar, mirando la víctima, ejecutemoslo… listo? ¿Que tenemos?, una hermosa ventanita con un menú file, con la opción exit, y otro menú help con la opción register y about.</p>
<p><strong>Experimentando con la bestia</strong></p>
<p>Bueno, que sucede si hacemos click en la opción register del menú help?, nos aparece una ventanita que nos dice “Kill the nagscreen”, estas ventanitas, con esos iconos característicos son generalmente llamadas con una API llamada MessageBox o MessageBoxA, dependiendo si la aplicación es de 16 o 32 bits respectivamente.</p>
<p>Aquí ya tenemos una pista, estas eran las “pistas” que yo les mencioné anteriormente, que sirven para guíarnos a través del código.</p>
<p>Otra cosa interesante, es que aparece una ventanita aleatoriamente diciendo algunas cosas sin sentido e incitándonos a crackearlo. Destruyámosla. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Si hacemos click en la opción About, nos da datos sobre el autor del crackme, y demás cosas, que no tienen mucha importancia.</p>
<p><strong>Reglas de juego</strong></p>
<p>Ahora veamos que nos pide el autor del crackme, y seamos chicos aplicados cumpliendo con  todo lo que él dice, al pie de la letra, ¿están listos? ¡¡Adelante!!</p>
<p>Bueno, dice que saquemos el messagebox que aparece cuando hacemos click en register, lo haremos, y luego debemos matar la ventanita chiquita que nos incita a crackearlo.</p>
<p><strong>Sobre las “pistas”, API’s, y reconociendo patrones de código</strong></p>
<p>Tenemos siempre, que tratar, debido al gran caos del código desensamblado de un programa, tener referencias y entender lo útil y principal, lo que verdaderamente está sucediendo en partes o en la totalidad del programa, para poder “descifrar” el funcionamiento del programa, encontrar la protección y poder anularla.</p>
<p>Otras veces, deberemos entender, varias cosas antes de desensamblar un programa, cuando veamos ejercicios del tipo reverseme’s, ya verán de lo que les hablo.</p>
<p>Las pistas que debemos encontrar, son las API’s, debemos conocer las más comunes , sus parámetros, sus valores de retorno, su función principal, aquí les detallo algunas:</p>
<p>MessageBox		SystemTime		Hmemcpy<br />
OpenFile			GetLocalTime<br />
DialogBoxParamA		createwindow<br />
GetDlgItemText		createwindowexa<br />
WriteFile			showwindow</p>
<p>Bueno, la mayoría de estos nombres de API’s se explican por sí solos, así que no hay que preocuparse mucho, lo que sí, les mostraré ahora algunos que he estado descubriendo, por ejemplo en este crackme, encontré uno que me sirvió y me dio la pista para poder matar la nagscreen que nos incita a crackear el crackme.</p>
<p>La API que me guió hasta esa ventana es, CreateThread , en breve les mostraré porqué y como razoné para deducir que esa API era la responsable.</p>
<p style="text-align: center;"> </p>
<p>Los patrones de código son reconocibles, con la práctica, el ojo humano al principio debe acostumbrarse a leer ensamblador, como dije antes, todo código sea ensamblador, c++, basic, pascal, es caótico, tiende a ser caótico.</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/05/createthread.jpg"><img class="aligncenter size-medium wp-image-153" title="createthread" src="http://www.disidents.org/wp-content/uploads/2009/05/createthread-300x225.jpg" alt="createthread" width="300" height="225" /></a></p>
<p>Cuando programamos un sistema por ejemplo, un programa muy grande, debemos documentar debidamente cada función, cada proceso creado, que valores retorna, porque, y como funciona, para futuros arreglos o implementaciones, debemos organizar, e identar todas las instrucciones correctamente, sino sería ilegible, o muy difícil de entender, y aunque ustedes no lo crean, se hacen concursos de “ofuscados” son programas que hacen algo, como un cálculo o alguna cosa simple, pero que el ganador es aquel que lo hace “menos entendible”, sin querer decir que programe “suciamente”, simplemente hacerlo lo mas ilegible posible. Pero no nos meteremos en esos campos extraños de la informática.</p>
<p>Un programa desensamblado, es lo mas terrorífico que un programador se puede encontrar, el algo verdaderamente ilegible, si no se tiene el conocimiento real de la situación a bajo nivel, y cierta práctica como para reconocer los patrones de código de los cuales les hablo.</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/05/messageboxa.jpg"><img class="aligncenter size-medium wp-image-151" title="messageboxa" src="http://www.disidents.org/wp-content/uploads/2009/05/messageboxa-300x225.jpg" alt="messageboxa" width="300" height="225" /></a></p>
<p style="text-align: center;"> </p>
<p>Cuando usamos Vc++, VB, Delphi, o algún otro RAD, el código generado por estos compiladores, se repite muchísimas veces en distintos programas programados bajo el mismo lenguaje, permitiéndonos, con la práctica ( o un buen tutorial a mano sobre el tema ) poder reconocer por ejemplo, cuando el programa chequea si las opciones de los menúes fueron clickeadas, etc.</p>
<p><strong>¡¡Al Ataque!!</strong></p>
<p>Muy bien, aclaradas algunas cosas antes, vayamos a nuestro pequeño ejercicio, haber si podemos calentar un poco nuestras neuronas…</p>
<p>Veamos de que se trata, a mí me gusta saber en que lenguaje está programada mi víctima, para saber con quien estoy “hablando”, es como una presentación…… bueno dejenme, son mañas. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Corramos el programa Language 2000, arrastremos la víctima hacia language 2000, y que nos dice…. Que está programado en Visual C++, ohps! muy bien, y ¿ahora que?, bien respiremos profundamente, porque cuando los programas están programados en Vc++, en C++ o en C, significa, que su código desensamblado, será más entendible (eso no significa más fácil). ¿Por qué digo esto?, porque cuando trabajamos con programas programados en VB, por ejemplo , este lenguaje es interpretado, y necesita runtimes, utiliza funciones propias del lenguaje, las cuales debemos analizar para que sirve cada una, porque raramente llama a una API, salvo que sea una llamada directa hecha por el programador.</p>
<p>Programas hechos en VB o en Delphi por ejemplo, tienen patrones de código bien reconocibles, y llamadas a rutinas, que realizan el trabajo “sucio”, entonces, el código desensamblado es mayor, mucho más caótico y difícil de descifrar si no tenemos la suficiente paciencia, pero no es imposible, no se me desanimen. <img src='http://www.disidents.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Ahora, tomemos un desensamblador, como por ejemplo el IDA, muy bueno a mi parecer, hace el código muy entendible, y tiene las librerías llamadas FLIRT, que si sabes en que está programada la víctima, puedes cargar una FLIRT para reconocer rutinas propias de los programas generados con X lenguaje, entonces de esa manera se entiende mucho más fácil, y puedes ir al punto directamente sin dar muchas vueltas.</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/05/1312.jpg"><img class="aligncenter size-medium wp-image-156" title="1312" src="http://www.disidents.org/wp-content/uploads/2009/05/1312-300x225.jpg" alt="1312" width="300" height="225" /></a></p>
<p>Bueno, empecemos por lo  más sencillo, buscar strings references, esto es lo más sencillo, porque nos lleva al punto directo, de cuando el mesagebox o X componente fue creado con X texto que busquemos, que no estará muy lejos de la llamada API correspondiente, les muestro que sucede en nuestro crackme:</p>
<p>Buscamos el texto &#8220;Kill the nagscreen.&#8221;, y lo encontramos, ahora hagamos doble click en él y nos lleva hasta aquí :</p>
<p>push    offset aCanTRegister ; &#8220;Can&#8217;t register&#8221;<br />
push    offset aKillTheNagscreen_ ; &#8220;Kill the nagscreen.&#8221;<br />
call    ds:MessageBoxA</p>
<p>por problemas de espacio he dejado las instrucciones más importantes, a continuación explico cada una:<br />
el primer, push es un parámetro al igual que el segundo push, debemos saber por eso que parámetros necesita la API MessageBoxA, para poder saber que esos son los parámetros usados para mostrar nuestra ventanita, que debemos anular.</p>
<p>Miremos un poco mas arriba en esa rutina y encontramos esto:</p>
<p>_text:00401355 loc_0_401355:                           ; CODE XREF: _text:0040132D j</p>
<p>hagamos click en la parte resaltada con amarillo y nos llevará al lugar desde donde es llamada esta rutina para mostrar la ventanita.</p>
<p>Aquí nos lleva:<br />
jz      short loc_0_401355</p>
<p>Ok, este es el salto que produce la ventana, matémoslo bruscamente, para eso usemos la instrucción NOP (No OPeration), para anular ese salto, el código de operación de esta instrucción es 90, ¿Qué es código de operación? Simplemente, el valor que toma la instrucción cuando es compilada por la computadora, entonces para entendernos con ella crudamente, debemos hablar su mismo idioma, esto quiere decir, tomar un editor hexadecimal, como hex workshop por ejemplo e ir al offset, de esta instrucción el cual nos dice IDA debajo de todo en el cuarto campo, este es 132D.</p>
<p><a href="http://www.disidents.org/wp-content/uploads/2009/05/132d.jpg"><img class="aligncenter size-medium wp-image-157" title="132d" src="http://www.disidents.org/wp-content/uploads/2009/05/132d-300x225.jpg" alt="132d" width="300" height="225" /></a></p>
<p>Como estos saltos ocupan dos posiciones compilados debemos poner dos NOP’s, o sea dos 90, en esa posición y en la que sigue.</p>
<p>Ejecutemos la víctima, hagamos click en la opcion Register…… ¡Bingo!</p>
<p>Ahora, vamos por la otra ventanita, esta ventana es creada debes en cuando, no tome el tiempo, pero estimo que si no es por tiempo fijo, es aleatoria, eso mucho no interesa, ya que lo que queremos es anularla, entonces, lo que me guió a mí como ya les comenté es la API CreateThread la cual sirve para crear un nuevo hilo de proceso,  mientras la aplicación principal se ejecuta en otro proceso distinto, entonces, los mensajes de una ventana no traba a la otra, permitiendo el efecto “multitarea”, la teoría de programación multihilo es muy interesante pero no profundizaremos en esto más que por la definición que acabo de dar.</p>
<p>Busquemos el string “Kill the nagsreen.” De  nuevo, miremos un poco más debajo de esa rutina y aparece nuestra querida API CreateThread, de esta manera:             call    ds:CreateThread</p>
<p>Ok, hagamos doble click la referencia de que hace al principio de la rutina, como la rutina analizada anteriormente, esto nos dice desde donde es llamada la rutina, viendo directamente el salto que debemos NOPear en nuestro caso.</p>
<p>Nos lleva aquí:    jz      short loc_0_401374</p>
<p>El cual debemos topear igual que el otro salto, para que ya no tenga más efecto esa rutina, y la asquerosa ventanita aleatoria no aparezca más.</p>
<p>Como verán, existen muchísimas formas de proteger un programa, y yo en particular pienso que deben existir cientos de otras formas, mezclas de protecciones, como por ejemplo la que acabamos de ver, en la que se implementa muy bien la API CreateThread, para crear una ventana nueva, y además una nag screen en la opción register.</p>
<p>Más adelante veremos, protecciones CD-Check, y quizás vayamos mas arriba aun, código automodificable, encriptación, key-files, etc.</p>
<p>Cada una, tiene su pro y su contra, en algún momento quizás también nos topemos, con programas que verdaderamente son DEMOS, y les falta implementar la opción “Save as…”, por ejemplo, en estos casos, usaremos las técnicas de reversing, en la que deberemos saber Win32Asm (ensamblador de 32bits para Windows), hacer injertos de código, conocer la estructura de los archivos PE, y demás cosas muy interesantes.</p>
<p>También, en esta carrera nos toparemos con los “loaders”, programas que parchean en memoria, y desprotegen “runtime” a los programas, veremos como funcionan, como hacer uno propio, en un lenguaje fácil (VB, Delphi), cuando y como usarlos.</p>
<p>Quizás lleguemos a ver mas adelante, protecciones llamadas dongles, las famosas “mochilas”, esta es una protección por hardware, que necesita de un determinado hardware conectado a uno de los puertos de la pc, para que el programa funcione.</p>
<p>El cracker, debe tener una mente abierta, analizar un programa protegido, es toda una aventura, es conocer, aprender, desafiarnos, y crecer, en conocimiento, y sobre todo en paciencia.</p>
<p>Ok, hasta aquí hemos llegado, para la próxima veremos opciones desactivadas y/o cd-checks.</p>
<p>¡Suerte!<br />
¡Happy Cracking!</p>
<p>SparK</p>
 <span class="post2pdf_span" style="border: 1px solid gray; width: 160px; text-align: left; "><a href="http://www.disidents.org/wp-content/plugins/post2pdf/generate.php?post=" rel="nofollow"><img src="http://www.disidents.org/wp-content/plugins/post2pdf/icon/pdf.png" width="16px" height="16px" />convert this post to pdf.</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.disidents.org/2009/05/02/annoyer-by-spider-old-session-2002/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
