<?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>rolandovera.com &#187; sql injection</title>
	<atom:link href="http://www.rolandovera.com/tag/sql-injection/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rolandovera.com</link>
	<description>Un blog de un sysadmin.</description>
	<lastBuildDate>Mon, 09 Jan 2012 21:52:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Errores en la pagina web del Congreso de Guatemala</title>
		<link>http://www.rolandovera.com/2008/11/12/errores-en-la-pagina-web-del-congreso-de-guatemala/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=errores-en-la-pagina-web-del-congreso-de-guatemala</link>
		<comments>http://www.rolandovera.com/2008/11/12/errores-en-la-pagina-web-del-congreso-de-guatemala/#comments</comments>
		<pubDate>Wed, 12 Nov 2008 18:29:04 +0000</pubDate>
		<dc:creator>Rolando</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[sql injection]]></category>

		<guid isPermaLink="false">http://www.rolandovera.com/?p=540</guid>
		<description><![CDATA[El día de hoy quería ver una noticia en la pagina del congreso de mi país, y note que Mozilla Firefox me bloqueo la pagina, porque el servidor donde esta alojada la pagina del congreso ha sido usado para atacar otros sitios. Miren lo que me salio en la pantalla: Hice clic donde decía, ignorar [...]]]></description>
			<content:encoded><![CDATA[<p>El día de hoy quería ver una noticia en la pagina del congreso de mi país, y note que Mozilla Firefox me bloqueo la pagina, porque el servidor donde esta alojada la pagina del congreso ha sido usado para atacar otros sitios.</p>
<p>Miren lo que me salio en la pantalla:</p>
<p><a href="http://www.rolandovera.com/wp-content/uploads/2008/11/congresogt1.jpg"><img class="alignnone size-medium wp-image-541" title="Congreso de Guatemala" src="http://www.rolandovera.com/wp-content/uploads/2008/11/congresogt1-300x181.jpg" alt="" width="300" height="181" /></a></p>
<p>Hice clic donde decía, ignorar esta alerta, y vi el articulo que quería ver.</p>
<p>Decidí investigar un poco, del porque es que el sitio del &#8220;polémico&#8221; congreso de Guatemala esta en una lista de negra de sitios usados para atacar o que han sido atacados por hackers.</p>
<p>Empecemos con la dirección ip del servidor, la dirección IP es 200.12.63.121, hay un 99.9% de posibilidades que el servidor este ubicado en Guatemala.</p>
<p>El servidor tiene solo 1 puerto abierto, el puerto web, el 80, y el puerto de https (443) filtrado.</p>
<blockquote><p>PORT    STATE  SERVICE<br />
80/tcp  open   http<br />
443/tcp closed https</p></blockquote>
<p>Que bueno que no tienen mas puertos abiertos.</p>
<p>Entremos a congreso.gob.gt. La pagina congreso.gob.gt, no carga en el navegador. No existe un registro en los servidores de nombres para el registro congreso.gob.gt.</p>
<blockquote><p>ping: unknown host congreso.gob.gt</p></blockquote>
<p>Esto quiere decir que si alguien pone en su navegador, congreso.gob.gt, la pagina no existe. Me parece increible este error, esto es un standard, no puede ser que solo puedan entrar a una pagina poniendo www. antes del dominio, bueno encontré el primer error.</p>
<blockquote><p>Confirme también que son vulnerables al famoso &#8220;<a href="http://www.securiteam.com/securityreviews/5DP0N1P76E.html" target="_blank">SQL Inject</a>&#8220;. Pude leer una tabla completa, al hacer esto saturaba el servidor, cargaba la nota pero ademas de eso leía toda la tabla de la base de datos, y la pagina ya tardaba mas de 10 segundos en cargarse. Imaginese si abro 30 ventanas y ejecuto la misma instrucción de leer toda la tabla&#8230;. El servidor ya no respondería mas peticiones ya que estaría completamente saturado y ademas no mostraría la pagina principal.</p></blockquote>
<p>En la siguiente imagen se muestra como se pueden sobre escribir notas utilizando sql inject:</p>
<p><a href="http://www.rolandovera.com/wp-content/uploads/2008/11/guatemalagobgt.jpg"><img class="alignnone size-medium wp-image-601" title="guatemalagobgt" src="http://www.rolandovera.com/wp-content/uploads/2008/11/guatemalagobgt-300x181.jpg" alt="" width="300" height="181" /></a></p>
<p>Analicemos un poco el código html.</p>
<p>Abri la pagina principal, WWW.congreso.gob.gt (ya que congreso.gob.gt no sirve jajajaja) y vi el codigo&#8230;.</p>
<p>Casi me voy de espaldas al ver el código, mírenlo:</p>
<p><a href="http://www.rolandovera.com/wp-content/uploads/2008/11/congresogt2.jpg"><img class="alignnone size-medium wp-image-551" title="error en codigo congreso de guatemala" src="http://www.rolandovera.com/wp-content/uploads/2008/11/congresogt2-300x157.jpg" alt="" width="300" height="157" /></a></p>
<p>Simplemente WOW, hagamos un listado de errores solo de las primeras lineas. Quiero aclarar que no soy un experto programador web, asi que pueden haber muchos mas.</p>
<ul>
<li>La pagina tiene 2 títulos, dos entradas de &lt;title&gt;.</li>
<li>Están usando Microsoft Frontage, lo tomo como un error ya que esta demostrado que Frontpage no sirve.</li>
<li>Tienen dos entradas de &lt;head&gt;.</li>
<li>Tienen dos entradas &lt;body&gt; &lt;html&gt;, incluso lo &#8220;cierran&#8221; mucho antes de lo debido, miren donde están los &lt;/body&gt; &lt;/html&gt;, y al final de la pagina hay mas &lt;/body&gt; &lt;/html&gt;.</li>
<li>Tienen 2 veces repetidas los meta description y meta keywords.</li>
<li>Todos los artículos de la pagina salen sin titulo, arriba sale: Documento sin titulo.</li>
</ul>
<p>Bueno, ya no seguí por falta de tiempo, pero de seguro ay muchos errores mas. Me parece increible que la pagina del &#8220;honorable&#8221; Congreso de República de Guatemala, este tan mal echa, y no digamos mal programada y estructurada. El mensaje que me muestra el Mozilla Firefox de que esa pagina no es seguro visitarla, pienso que va porque fueron victimas de un ataque de SQL Inject, que por lo general lo hace gente de China, lo que hacen es que insertan hiper vínculos a paginas que contienen virus, para infectar a los visitantes. Otro punto a tomar en cuenta es que los sitios .gob de cualquier país son los mas codiciados por hackers, lo consideran &#8220;oro puro&#8221;. Por lo mismo que tienen que ver Gobierno de cada país, y supuestamente es un reto aun mayor ya que por el tipo de información que maneja deberían de estar mas seguros.</p>
<p>Creo que no cabe duda, que la ineficiencia que según los periódicos tiene el Congreso de Guatemala, se plasma en la pagina web.</p>
<p>Si encuentran mas errores no olviden dejarlos en sus comentarios.</p>
<p> <img src='http://www.rolandovera.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.rolandovera.com/2008/11/12/errores-en-la-pagina-web-del-congreso-de-guatemala/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>SQL Injection en Microsoft SQL Server 2000</title>
		<link>http://www.rolandovera.com/2008/05/27/sql-injection-en-microsoft-sql-server-2000/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sql-injection-en-microsoft-sql-server-2000</link>
		<comments>http://www.rolandovera.com/2008/05/27/sql-injection-en-microsoft-sql-server-2000/#comments</comments>
		<pubDate>Tue, 27 May 2008 22:40:31 +0000</pubDate>
		<dc:creator>Rolando</dc:creator>
				<category><![CDATA[Bases De Datos]]></category>
		<category><![CDATA[sql injection]]></category>

		<guid isPermaLink="false">http://www.rolandovera.com/?p=195</guid>
		<description><![CDATA[El día de hoy para mi sorpresa en uno de los sitios en el cual yo administro el servidor, la base de datos específicamente en el contenido de los artículos, les habían sobre escrito con links hacia esta pagina: http://9i5t.cn/a.js Al parecer al entrar a esa pagina alguien usando Internet Explorer se puede contagiar de [...]]]></description>
			<content:encoded><![CDATA[<p>El día de hoy para mi sorpresa en uno de los sitios en el cual yo administro el servidor, la base de datos específicamente en el contenido de los artículos, les habían sobre escrito con links hacia esta pagina:</p>
<p>http://9i5t.cn/a.js</p>
<p>Al parecer al entrar a esa pagina alguien usando Internet Explorer se puede contagiar de un virus, yo la verdad preferí no probar <img src='http://www.rolandovera.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> , pero un amigo entro, y el Mcafee Viruscan le detecto que unos virus habían sido bajados a los archivos temporales del Internet explorer y que los virus los habia elminado. Si entran a la pagina (cosa que no recomiendo si están utilizando Internet Explorer) con mozilla, les saldrá un código de la siguiente manera:</p>
<p>OlOlll=&#8221;(x)&#8221;;OllOlO=&#8221; String&#8221;;OlllOO=&#8221;tion&#8221;;OlOllO=<br />
&#8220;Code(x)}&#8221;;OllOOO=&#8221;Char&#8221;;OlllOl=&#8221;func&#8221;;OllllO=&#8221; l =<br />
&#8220;;OllOOl=&#8221;.from&#8221;;OllOll=&#8221;{return&#8221;;Olllll=&#8221;var&#8221;;</p>
<p>Al buscar en google la palabra http://9i5t.cn/a.js encontré que 220,000 paginas infectadas (aproximadamente), estaban indexadas.</p>
<p>Despues de investigar note que estos hackers chinos estaban utilizando una vulnerabilidad llamada <a href="http://en.wikipedia.org/wiki/SQL_injection" target="_blank">SQL Injection</a> (que no es vieja), con la cual lograban ejecutar comandos en el servidor de sql (ya que por lo general el servicio de sql correo como administrador) y de esta manera lograban actualizar las tablas con la dirección a su pagina. Y lo único que necesitaban era que el puerto 80 (http) estuviera abierto al publico, cosa que todos los sitios lo tienen abierto. Incluso el servidor, que es un Windows 2003 server, tenia todas las actualizaciones al día, y aun así se vio afectado.</p>
<p>Después de hacer unas pruebas, encontré que el sitio era vulnerable a este tipo de comandos.</p>
<p>Por ejemplo en la pagina siguiente:</p>
<p><strong>http://www.sitio.com/categorias/hola.asp?id=277763</strong></p>
<p>Mostraba un articulo completo.</p>
<p>Pero al ponerle el siguiente comando:</p>
<p><strong>http://www.sitio.com/categorias/hola.asp?id=2762</strong><em><span style="text-decoration: underline;"><strong>&#8216; or 1=1&#8211;</strong></span></em></p>
<p>Al ejecutar esto, Microsoft Sql, desplegaba el contenido del articulo con id 2762 y TODA la tabla, esto lo hacia internamente, no lo desplegaba en el navegador. Al hacer esto el servidor se saturaba, y ya no mostraba la pagina. Así que claramente el sitio era vulnerable. Si yo pude ejecutar esto imagínense el sin numero de comandos que alguien familiar con Microsoft SQL podia ejecutar.</p>
<p>Una solución rápida que se le dio a este error, fue modificando el asp, para que solo aceptara números en el string del id, esto se hizo de la siguiente manera:</p>
<p><strong> id_cont = trim(request(&#8220;hola&#8221;))<br />
if not isnumeric(id_cont) then<br />
response.Redirect(&#8220;http://www.sitio.com&#8221;)<br />
response.End()<br />
end if</strong></p>
<p>Esto se agrego dentro de la programacion del .asp.</p>
<p>Con esto, al momento que alguien trate de ejecutar algo, lo va a redireccionar a la pagina.</p>
<p><strong>http://www.sitio.com/categorias/hola.asp?id=2762</strong><em><span style="text-decoration: underline;"><strong>&#8216; or 1=1&#8211;</strong></span></em></p>
<p>Al poner esto en el navegador, con este cambio en el asp, automaticamente redireccionaba a la pagina principal, que era www.sitio.com.</p>
<p>Me imagino que hay otro tipo de soluciones para esto, pero esta fue la que nos ayudo en nuestro caso.</p>
<p>Les recomiendo esta herramienta para revisar sitios muy grandes. O que contienen muchos archivos asp.</p>
<p><a href="http://sqid.rubyforge.org/" target="_blank">http://sqid.rubyforge.org/</a></p>
<p>Este programa corre en linux, y sirve de mucho para probar sitios grandes. Necesitan instalar ruby para que corra este programa.</p>
<p>Tiene un sin numero de opciones, las cuales pueden leer mas aca:</p>
<p><a href="http://carnal0wnage.blogspot.com/2007/07/using-sqid-sql-injection-digger-to-look.html" target="_blank">Sqid Examples</a></p>
<p>Les deseo mucha suerte a los sysadmin, ya que todo el tiempo nuestros servidores estan expuestos a este tipo de vulnerabilidades.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rolandovera.com/2008/05/27/sql-injection-en-microsoft-sql-server-2000/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

