<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comentarios en: PHP: Uso adecuado de parse_str</title>
	<atom:link href="http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/</link>
	<description>Diseño y Programación</description>
	<lastBuildDate>Wed, 08 Feb 2012 16:34:31 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>Por: ¿Estamos seguros con la nueva versión de WordPress? en Buayacorp - Diseño y Programación</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-18553</link>
		<dc:creator>¿Estamos seguros con la nueva versión de WordPress? en Buayacorp - Diseño y Programación</dc:creator>
		<pubDate>Tue, 07 Aug 2007 00:51:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-18553</guid>
		<description>[...] está en desarrollo &#8212; muchos problemas de seguridad, que en su mayoría se deben al uso de cadenas (tipo querystring) para pasar parámetros a funciones y a la ausencia de consultas parametrizadas. Unos cuantos bugs son graves (Fig. 1) y [...]</description>
		<content:encoded><![CDATA[<p>[...] está en desarrollo &#8212; muchos problemas de seguridad, que en su mayoría se deben al uso de cadenas (tipo querystring) para pasar parámetros a funciones y a la ausencia de consultas parametrizadas. Unos cuantos bugs son graves (Fig. 1) y [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: SQL Injection en el plugin de estadísticas de WordPress.com en Buayacorp - Diseño y Programación</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-17047</link>
		<dc:creator>SQL Injection en el plugin de estadísticas de WordPress.com en Buayacorp - Diseño y Programación</dc:creator>
		<pubDate>Mon, 30 Jul 2007 13:48:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-17047</guid>
		<description>[...] existe ningún tipo de validación en los parámetros que esa función recibe, y como mencioné en ocasiones anteriores, usar esta forma (query string) para pasar parámetros a otras funciones es bastante [...]</description>
		<content:encoded><![CDATA[<p>[...] existe ningún tipo de validación en los parámetros que esa función recibe, y como mencioné en ocasiones anteriores, usar esta forma (query string) para pasar parámetros a otras funciones es bastante [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: WordPress: Más vulnerabilidades de inyección de SQL en Buayacorp - Diseño y Programación</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-14465</link>
		<dc:creator>WordPress: Más vulnerabilidades de inyección de SQL en Buayacorp - Diseño y Programación</dc:creator>
		<pubDate>Fri, 13 Jul 2007 04:43:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-14465</guid>
		<description>[...] variante está en estrecha relación a lo discutido en &#8220;PHP: Uso adecuado de parse_str&#8220;, en esta entrada, a pesar de que existen más lugares donde se puede hacer lo mismo, sólo [...]</description>
		<content:encoded><![CDATA[<p>[...] variante está en estrecha relación a lo discutido en &#8220;PHP: Uso adecuado de parse_str&#8220;, en esta entrada, a pesar de que existen más lugares donde se puede hacer lo mismo, sólo [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: g30rg3_x</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12881</link>
		<dc:creator>g30rg3_x</dc:creator>
		<pubDate>Sat, 30 Jun 2007 01:17:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12881</guid>
		<description>jejejejeje..

Se me fue me concentre tanto en post_type que no le di importancia, si perdon error mio lapsus brutus de conocimiento de sql...

Saludos</description>
		<content:encoded><![CDATA[<p>jejejejeje..</p>
<p>Se me fue me concentre tanto en post_type que no le di importancia, si perdon error mio lapsus brutus de conocimiento de sql...</p>
<p>Saludos</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: alex</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12876</link>
		<dc:creator>alex</dc:creator>
		<pubDate>Sat, 30 Jun 2007 01:07:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12876</guid>
		<description>&lt;strong&gt;g30rg3_x&lt;/strong&gt;, justamente me refería a ese problema, puesto que con &lt;a href=&quot;http://test.buayacorp.com/wp.php?limit=2&amp;type=foo%26limit=1%20UNION%20ALL%20...&quot; rel=&quot;nofollow&quot;&gt;valores parecidos&lt;/a&gt; (&lt;code&gt;?limit=2&amp;type=foo%26limit=1%20UNION%20ALL%20...&lt;/code&gt;) al que mencionas, se sobreescribe el valor de la variable &lt;code&gt;limit&lt;/code&gt; haciendo posible la inyección de SQL.
[sql]SELECT * FROM posts WHERE post_type = &#039;foo&#039; LIMIT 1 UNION ALL ...[/sql]

&lt;blockquote&gt;&lt;p&gt;[...], aunque claro no obtendremos nada beneficioso ya que nos encontramos de tras de un LIMIT [...]&lt;/p&gt;&lt;/blockquote&gt;
Eso es correcto siempre y cuando se haga uso de &lt;code&gt;ORDER BY&lt;/code&gt; en la consulta, pero como en el ejemplo no existe esa parte se puede construir sentencias SQL perfectamente válidas.

En el comentario anterior hacía referencia a &lt;em&gt;arrays&lt;/em&gt;, porque básicamente al ser éstas tablas hash, la última asignación a una misma &lt;em&gt;llave&lt;/em&gt; (&lt;code&gt;limit&lt;/code&gt;) es la que cuenta.

Saludos</description>
		<content:encoded><![CDATA[<p><strong>g30rg3_x</strong>, justamente me refería a ese problema, puesto que con <a href="http://test.buayacorp.com/wp.php?limit=2&#038;type=foo%26limit=1%20UNION%20ALL%20..." rel="nofollow">valores parecidos</a> (<code>?limit=2&#038;type=foo%26limit=1%20UNION%20ALL%20...</code>) al que mencionas, se sobreescribe el valor de la variable <code>limit</code> haciendo posible la inyección de SQL.</p>
<div class="hiliter"><strong>sql:</strong>
<pre class="sql"><span style="color: #993333; font-weight: bold;">SELECT</span> * <span style="color: #993333; font-weight: bold;">FROM</span> posts <span style="color: #993333; font-weight: bold;">WHERE</span> post_type = <span style="color: #ff0000;">'foo'</span> <span style="color: #993333; font-weight: bold;">LIMIT</span> <span style="color: #cc66cc;">1</span> UNION <span style="color: #993333; font-weight: bold;">ALL</span> ...</pre>
</div>
<blockquote><p>[...], aunque claro no obtendremos nada beneficioso ya que nos encontramos de tras de un LIMIT [...]</p>
</blockquote>
<p>Eso es correcto siempre y cuando se haga uso de <code>ORDER BY</code> en la consulta, pero como en el ejemplo no existe esa parte se puede construir sentencias SQL perfectamente válidas.</p>
<p>En el comentario anterior hacía referencia a <em>arrays</em>, porque básicamente al ser éstas tablas hash, la última asignación a una misma <em>llave</em> (<code>limit</code>) es la que cuenta.</p>
<p>Saludos</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: g30rg3_x</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12869</link>
		<dc:creator>g30rg3_x</dc:creator>
		<pubDate>Sat, 30 Jun 2007 00:07:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12869</guid>
		<description>Bueno sigo sin ver lo que creo que estas pidiendo..
Pero mirando con mas detenimiento veo un medio-SQL-injection en $limit, ya que parse_str nos permite sobreescribir variables locales (http://www.acid-root.new.fr/advisories/14070612.txt) podriamos llamar a algo asi...

?limit=2&amp;type=foo%26limit=bar

Asi basicamente estamos pasando el filtro de solo numeros (o mejor dicho el casting a integer) que hay un poco mas arriba, aunque claro no obtendremos nada beneficioso ya que nos encontramos de tras de un LIMIT pero talvez nos podria servir para sacar informacion.

Aunque como te dije aun no le veo por donde intente meter arrays durante pero ninguna de mis pruebas me dio positivo, asi que yo tambien quedo al pendiente de la solucion de la segunda parte...

Saludos alex...</description>
		<content:encoded><![CDATA[<p>Bueno sigo sin ver lo que creo que estas pidiendo..<br />
Pero mirando con mas detenimiento veo un medio-SQL-injection en $limit, ya que parse_str nos permite sobreescribir variables locales (<a href="http://www.acid-root.new.fr/advisories/14070612.txt" rel="nofollow">http://www.acid-root.new.fr/advisories/14070612.txt</a>) podriamos llamar a algo asi...</p>
<p>?limit=2&amp;type=foo%26limit=bar</p>
<p>Asi basicamente estamos pasando el filtro de solo numeros (o mejor dicho el casting a integer) que hay un poco mas arriba, aunque claro no obtendremos nada beneficioso ya que nos encontramos de tras de un LIMIT pero talvez nos podria servir para sacar informacion.</p>
<p>Aunque como te dije aun no le veo por donde intente meter arrays durante pero ninguna de mis pruebas me dio positivo, asi que yo tambien quedo al pendiente de la solucion de la segunda parte...</p>
<p>Saludos alex...</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: jdeveloper</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12767</link>
		<dc:creator>jdeveloper</dc:creator>
		<pubDate>Fri, 29 Jun 2007 08:08:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12767</guid>
		<description>gracias alex, en cuanto tenga tiempo lo mirare mas detenidamente, pero ya voy pillando la dinamica a seguir.</description>
		<content:encoded><![CDATA[<p>gracias alex, en cuanto tenga tiempo lo mirare mas detenidamente, pero ya voy pillando la dinamica a seguir.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: alex</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12760</link>
		<dc:creator>alex</dc:creator>
		<pubDate>Fri, 29 Jun 2007 04:54:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12760</guid>
		<description>El segundo error tiene que ver en parte con &lt;code&gt;parse_str&lt;/code&gt; y el tratamiento de &lt;em&gt;arrays&lt;/em&gt;.</description>
		<content:encoded><![CDATA[<p>El segundo error tiene que ver en parte con <code>parse_str</code> y el tratamiento de <em>arrays</em>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: paco</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12733</link>
		<dc:creator>paco</dc:creator>
		<pubDate>Thu, 28 Jun 2007 20:06:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12733</guid>
		<description>yo no veo nada, podrías echarnos una manita? :S</description>
		<content:encoded><![CDATA[<p>yo no veo nada, podrías echarnos una manita? :S</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: alex</title>
		<link>http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12723</link>
		<dc:creator>alex</dc:creator>
		<pubDate>Thu, 28 Jun 2007 17:47:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.buayacorp.com/archivos/php-uso-adecuado-de-parse_str/#comment-12723</guid>
		<description>@g30rg3_x: Todavía queda otro problema de SQL Injection ;)

@jdeveloper: Simplemente está codificando el apóstrofe dos veces.
[php]&lt;?php echo urlencode(urlencode(&#039;\&#039;&#039;)); ?&gt;[/php]
Se hace esto para que la función &lt;code&gt;addslashes&lt;/code&gt; no tenga ningún efecto sobre el valor de &lt;code&gt;$_GET[&#039;type&#039;]=&quot;algo%27&quot;&lt;/code&gt;, este último se convierte en &lt;code&gt;$post_type=&quot;algo&#039;&quot;&lt;/code&gt; gracias a la acción de parse_str.

Puedes ver un ejemplo en la &lt;a href=&quot;http://test.buayacorp.com/wp.php?limit=2&amp;type=algo%2527%20AQUI%20INYECTAR%20SQL%20/*&quot; rel=&quot;nofollow&quot;&gt;página de prueba&lt;/a&gt;.

Saludos</description>
		<content:encoded><![CDATA[<p>@g30rg3_x: Todavía queda otro problema de SQL Injection <img src='http://www.buayacorp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>@jdeveloper: Simplemente está codificando el apóstrofe dos veces.</p>
<div class="hiliter"><strong>php:</strong>
<pre class="php"><span style="color: #000000; font-weight: bold;">&lt;?php</span> <a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> <a href="http://www.php.net/urlencode"><span style="color: #000066;">urlencode</span></a><span style="color: #66cc66;">&#40;</span><a href="http://www.php.net/urlencode"><span style="color: #000066;">urlencode</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'<span style="color: #000099; font-weight: bold;">\'</span>'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>; <span style="color: #000000; font-weight: bold;">?&gt;</span></pre>
</div>
<p>Se hace esto para que la función <code>addslashes</code> no tenga ningún efecto sobre el valor de <code>$_GET['type']="algo%27"</code>, este último se convierte en <code>$post_type="algo'"</code> gracias a la acción de parse_str.</p>
<p>Puedes ver un ejemplo en la <a href="http://test.buayacorp.com/wp.php?limit=2&#038;type=algo%2527%20AQUI%20INYECTAR%20SQL%20/*" rel="nofollow">página de prueba</a>.</p>
<p>Saludos</p>
]]></content:encoded>
	</item>
</channel>
</rss>

