<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Mbpfernand0&#039;s Blog</title>
	<atom:link href="http://mbpfernand0.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mbpfernand0.wordpress.com</link>
	<description>Programación, seguridad, software libre ....</description>
	<lastBuildDate>Thu, 30 May 2013 07:43:45 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='mbpfernand0.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Mbpfernand0&#039;s Blog</title>
		<link>http://mbpfernand0.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://mbpfernand0.wordpress.com/osd.xml" title="Mbpfernand0&#039;s Blog" />
	<atom:link rel='hub' href='http://mbpfernand0.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Saber lo que tecleas por como mueves el dispositivo</title>
		<link>http://mbpfernand0.wordpress.com/2013/04/26/saber-lo-que-tecleas-por-como-mueves-el-dispositivo/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/04/26/saber-lo-que-tecleas-por-como-mueves-el-dispositivo/#comments</comments>
		<pubDate>Fri, 26 Apr 2013 12:16:47 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[seguridad]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[movimiento]]></category>
		<category><![CDATA[sensores,]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=677</guid>
		<description><![CDATA[Eso nos contaban en Nuevo keylogger para Android basado en el movimiento del teléfono . Los sensores de movimiento son usados habitualmente en los móviles para determinar el comportamiento de la pantalla y programas según la posición y el movimiento &#8230; <a href="http://mbpfernand0.wordpress.com/2013/04/26/saber-lo-que-tecleas-por-como-mueves-el-dispositivo/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=677&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Eso nos contaban en <a href="http://unaaldia.hispasec.com/2012/04/nuevo-keylogger-para-android-basado-en.html"> Nuevo keylogger para Android basado en el movimiento del teléfono </a>.</p>
<blockquote><p>Los sensores de movimiento son usados habitualmente en los móviles para determinar el comportamiento de la pantalla y programas según la posición y el movimiento del dispostivo físico. Consisten en acelerómetros, giroscopios y sensores de orientación. En principio, parece que esta información recopilada por el teléfono (velocidad, movimientos&#8230;) no puede llegar a ser relevante, y por eso actualmente no existe en Android ningún tipo de control de medida de seguridad sobre los datos que pueden ser obtenidos mediante estos métodos. Esto es lo que ha motivado la idea de crear un troyano basado en ellos. Además, en el caso de que este troyano fuese llevado a la práctica, los permisos requeridos a la hora de instalarse no levantarían apenas sospechas.</p></blockquote>
<p>Es un montaje experimental, necesita cierto entrenamiento &#8230; Pero, ¿quién nos dice que no hay alguien dispuesto a &#8216;escucharnos&#8217;?</p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/seguridad/'>seguridad</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/keylogger/'>keylogger</a>, <a href='http://mbpfernand0.wordpress.com/tag/movimiento/'>movimiento</a>, <a href='http://mbpfernand0.wordpress.com/tag/seguridad/'>seguridad</a>, <a href='http://mbpfernand0.wordpress.com/tag/sensores/'>sensores,</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/677/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/677/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/677/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=677&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/04/26/saber-lo-que-tecleas-por-como-mueves-el-dispositivo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>Una botnet de televisores</title>
		<link>http://mbpfernand0.wordpress.com/2013/04/24/una-botnet-de-televisores/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/04/24/una-botnet-de-televisores/#comments</comments>
		<pubDate>Wed, 24 Apr 2013 16:11:51 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[seguridad]]></category>
		<category><![CDATA[botnet]]></category>
		<category><![CDATA[programas]]></category>
		<category><![CDATA[smart]]></category>
		<category><![CDATA[televisiones]]></category>
		<category><![CDATA[tv]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=675</guid>
		<description><![CDATA[Otra más para el tema de cacharritos programables que nos pueden causar problemas: TV-based botnets? DoS attacks on your fridge? More plausible than you think. Si se puede programar, se puede comprometer. Si puede comprometerse alguien lo hará. Alguna prueba &#8230; <a href="http://mbpfernand0.wordpress.com/2013/04/24/una-botnet-de-televisores/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=675&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Otra más para el tema de cacharritos programables que nos pueden causar problemas: <a href="http://arstechnica.com/business/2012/04/tv-based-botnets-ddos-attacks-on-your-fridge-more-plausible-than-you-think/"> TV-based botnets? DoS attacks on your fridge? More plausible than you think</a>.  </p>
<p>Si se puede programar, se puede comprometer. Si puede comprometerse alguien lo hará. Alguna prueba ya hay hecha por ahí:</p>
<blockquote><p>
The TV was connected by ethernet cable to a home network, so Auriemma thought it would be funny to use a computer connected to the same network to send it a message that contained a series of custom headers. Without warning, the TV spiraled into an endless loop of restarts. For about five seconds, the device would appear to work correctly, but then would stop responding to commands entered by remote control or through the panel. A few seconds later, the TV would restart and repeat the process. Unplugging the power cord or ethernet cable did nothing. Auriemma had just stumbled upon a crippling denial-of-service attack.
</p></blockquote>
<p>En <a href="http://mbpfernand0.wordpress.com/2012/03/21/seguridad-hogarena/">Seguridad ‘hogareña’</a> recopilamos en su día enlaces sobre el tema.</p>
<p>Sigan vigilantes.</p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/seguridad/'>seguridad</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/botnet/'>botnet</a>, <a href='http://mbpfernand0.wordpress.com/tag/programas/'>programas</a>, <a href='http://mbpfernand0.wordpress.com/tag/seguridad/'>seguridad</a>, <a href='http://mbpfernand0.wordpress.com/tag/smart/'>smart</a>, <a href='http://mbpfernand0.wordpress.com/tag/televisiones/'>televisiones</a>, <a href='http://mbpfernand0.wordpress.com/tag/tv/'>tv</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/675/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=675&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/04/24/una-botnet-de-televisores/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>Inyección de SQL a través de cabeceras HTTP</title>
		<link>http://mbpfernand0.wordpress.com/2013/04/11/inyeccion-de-sql-a-traves-de-cabeceras-http/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/04/11/inyeccion-de-sql-a-traves-de-cabeceras-http/#comments</comments>
		<pubDate>Thu, 11 Apr 2013 16:47:52 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[seguridad]]></category>
		<category><![CDATA[cabeceras]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[protocolo]]></category>
		<category><![CDATA[validación]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=673</guid>
		<description><![CDATA[Todo lo que viene del exterior es (potencialmente) inseguro. En SQL Injection through HTTP Headers nos recuerdan que las cabeceras del protocolo HTTP las proporciona el visitante y que pueden venir con &#8216;regalos&#8217;: Cookies and other stored HTTP headers should &#8230; <a href="http://mbpfernand0.wordpress.com/2013/04/11/inyeccion-de-sql-a-traves-de-cabeceras-http/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=673&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Todo lo que viene del exterior es (potencialmente) inseguro. En <a href="http://resources.infosecinstitute.com/sql-injection-http-headers/">SQL Injection through HTTP Headers</a> nos recuerdan que las cabeceras del protocolo HTTP las proporciona el visitante y que pueden venir con &#8216;regalos&#8217;:</p>
<blockquote><p>
Cookies and other stored HTTP headers should be treated by developers as another form of user input and be subjected to the same validation routines.
</p></blockquote>
<p>Ya hablamos hace algún tiempo del tema de forma un poco más técnica, en:</p>
<p><a href="https://mbpfernand0.wordpress.com/2009/05/20/polucion-de-parametros-del-protocolo-http/">Polución de parámetros del protocolo HTTP</a><br />
<a href="https://mbpfernand0.wordpress.com/2010/12/20/papas-%c2%bfsomos-vulnerables-a-la-polucion-de-parametros-http/">PAPAS: ¿Somos vulnerables a la polución de parámetros HTTP?</a><br />
<a href="https://mbpfernand0.wordpress.com/2011/07/09/contaminacion-de-parametros-http/">Contaminación de parámetros Http</a><br />
<a href="https://mbpfernand0.wordpress.com/2011/05/04/contaminacion-de-parametros-http-hpp/">Contaminación de parámetros HTTP (HPP)</a></p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/seguridad/'>seguridad</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/cabeceras/'>cabeceras</a>, <a href='http://mbpfernand0.wordpress.com/tag/desarrollo/'>desarrollo</a>, <a href='http://mbpfernand0.wordpress.com/tag/http/'>http</a>, <a href='http://mbpfernand0.wordpress.com/tag/protocolo/'>protocolo</a>, <a href='http://mbpfernand0.wordpress.com/tag/seguridad/'>seguridad</a>, <a href='http://mbpfernand0.wordpress.com/tag/validacion/'>validación</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/673/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/673/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/673/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=673&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/04/11/inyeccion-de-sql-a-traves-de-cabeceras-http/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>Integración de la seguridad en el ciclo de desarrollo</title>
		<link>http://mbpfernand0.wordpress.com/2013/04/09/integracion-de-la-seguridad-en-el-ciclo-de-desarrollo/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/04/09/integracion-de-la-seguridad-en-el-ciclo-de-desarrollo/#comments</comments>
		<pubDate>Tue, 09 Apr 2013 16:44:32 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[seguridad]]></category>
		<category><![CDATA[ciclo]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=672</guid>
		<description><![CDATA[En [PDF] Integrating Software Security Into The. Software Development Lifecycle un artículo con ideas generales sobre el tema. Puede ser valioso para ordenar ideas o como introducción preliminar donde no se haya pensado mucho aún en estas cosas. Archivado en: &#8230; <a href="http://mbpfernand0.wordpress.com/2013/04/09/integracion-de-la-seguridad-en-el-ciclo-de-desarrollo/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=672&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>En <a href="http://www.impact-alliance.org/download/pdf/resource-centre/cop/isc/integrating.software.security.into.the.pdf">[PDF] Integrating Software Security Into The. Software Development Lifecycle</a> un artículo con ideas generales sobre el tema. Puede ser valioso para ordenar ideas o como introducción preliminar donde no se haya pensado mucho aún en estas cosas.</p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/seguridad/'>seguridad</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/ciclo/'>ciclo</a>, <a href='http://mbpfernand0.wordpress.com/tag/desarrollo/'>desarrollo</a>, <a href='http://mbpfernand0.wordpress.com/tag/seguridad/'>seguridad</a>, <a href='http://mbpfernand0.wordpress.com/tag/software/'>software</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/672/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=672&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/04/09/integracion-de-la-seguridad-en-el-ciclo-de-desarrollo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>Raspberry Pi: ¿qué temperatura hace en mi casa?</title>
		<link>http://mbpfernand0.wordpress.com/2013/03/28/raspberry-pi-que-temperatura-hace-en-mi-casa/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/03/28/raspberry-pi-que-temperatura-hace-en-mi-casa/#comments</comments>
		<pubDate>Thu, 28 Mar 2013 17:13:07 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[pi]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[proyectos]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[raspi]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=671</guid>
		<description><![CDATA[Estaba dudando si este sería el lugar adecuado para poner estas cosas o si debería crear otra bitácora. Visto mi ritmo de trabajo (lento), creo que será más razonable ponerlo aquí e ir contando las cosas que haga, si es &#8230; <a href="http://mbpfernand0.wordpress.com/2013/03/28/raspberry-pi-que-temperatura-hace-en-mi-casa/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=671&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Estaba dudando si este sería el lugar adecuado para poner estas cosas o si debería crear otra bitácora. Visto mi ritmo de trabajo (lento), creo que será más razonable ponerlo aquí e ir contando las cosas que haga, si es que tengo tiempo de hacerlas (y luego de explicarlas). </p>
<p>Vamos a hablar de un mini-proyecto que consiste en tener una Raspberry Pi conectada a la WiFi de casa y cómo controlarla desde el exterior (el trabajo, con un móvil, &#8230;) y aprovechar sus prestaciones.</p>
<p>Para ello, he estado preparando un pequeño montaje que tiene un sensor de temperatura, y además es capaz de hacer un par de cosas (pequeñas) más.</p>
<p>Para la parte del sensor seguí el tutorial que publicó Pablo Murillo en <a href="http://www.arduteka.com/2011/12/tutorial-arduino-0005-sensor-de-temperatura-ntc/">Tutorial Arduino # 0005 – Sensor de temperatura NTC</a>: </p>
<blockquote><p>
En este proyecto vamos a aprender a implementar un sensor de temperatura a nuestros proyectos Arduino, en este proyecto simularemos cinco estados de aviso de exceso de temperatura, sobre los cuales los cuales podríamos conectar cualquier elemento que quisiéramos que actuara llegado dicho nivel, podríamos conectar circuitos de ventilación de manera que si no consiguieran mitigar el exceso de calor llegara un punto que desconectara el sistema que estemos monitorizando, en resumen, en cualquier lugar donde un control de exceso de temperatura sea necesario.
</p></blockquote>
<p>Como no tenemos un Arduino, sino que tenemos una Raspberry Pi, necesitamos algo que sirva para hablar con los sensores analógicos. En mi caso (por cercanía física y también por simpatía con el proyecto) lo que he utilizado es el <a href="http://www.cooking-hacks.com/index.php/documentation/tutorials/raspberry-pi-to-arduino-shields-connection-bridge">Raspberry Pi to Arduino shields connection bridge</a> de la gente de Cooking Hacks.<br />
Con la biblioteca que proporcionan ellos, podemos utilizar las ideas (y los programas, casi tal cual) de los proyectos de Arduino en nuestra &#8216;raspi&#8217; con bastante facilidad. Sirven los mismos esquemas de conexiones y todos los documentos disponibles para esta plataforma.</p>
<p>Una imagen del montaje:</p>
<div align="center">
<a href="http://instagram.com/p/WWrKHyQB_e/"><img src="http://distilleryimage6.s3.amazonaws.com/71f01730833011e29c6622000a1f9e4a_7.jpg"></a>.
</div>
<p>Y un vídeo de la &#8216;cosa&#8217; en acción.</p>
<div align="center">
<span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='560' height='315' src='http://www.youtube.com/embed/DZnhM6xjtes?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span>
</div>
<p>Se pueden ver algunos elementos más (hay un sensor de luz que se ve a la derecha del de temperatura), pero básicamente allí está el proyecto propuesto por Pablo Murillo.</p>
<p>Aunque el tema de los LEDs es bastante llamativo (a mi me lo parece, siendo una persona más de programas que de cacharros) lo que más me atrae del cacharrito es que se trata de un ordenador completo.<br />
Uno no se siente a gusto si no mete internet por enmedio y algo de interacción con el aparato.</p>
<p>Buscando un poco por ahí encontré el proyecto <a href="https://github.com/fritzy/SleekXMPP/">SleekXMPP</a> que nos permitiría interactuar con nuestro ordenadorcito a través del protocolo <a href="http://xmpp.org/">XMPP</a>. Este protocolo nos permite comunicarnos en tiempo real y ha sido utlizado, entre otras cosas, por algunos sistemas de mensajería instantánea (por ejemplo el GTalk de Google -aunque últimamente parece que podrían estar pensando en cambiar-, Jabber, &#8230;).</p>
<p>En los ejemplos del proyecto hay un &#8216;bot&#8217; que repite las instrucciones que le envíamos y programé una modificación para poder preguntarle a la raspi sobre la temperatura de la habitación en la que se encontraba. </p>
<p>Podemos ver la interacción en este vídeo:</p>
<div align="center">
<span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='420' height='315' src='http://www.youtube.com/embed/OgB65aK-nIQ?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span>
</div>
<p>Pero el bot de ejemplo no está pensado para este tipo de comportamiento y necesitábamos alguna arquitectura que hiciera sencillo extender el proyecto, añadirle instrucciones e interactuar remotamente (¿la meta podría ser poder añadirle instrucciones por GTalk?) así que me puse a buscar. </p>
<p>El amigo <a href="http://hiperactivo.com/">Javier Candeira</a> me sugirió probar <a href="https://github.com/sbp/phenny">phenny</a>, que es un bot extensible, diseñado para recibir instrucciones remotamente y con solo una diferencia con mi proyecto inicial: está pensado para ser controlado desde una canal de IRC.</p>
<p>El proyecto se convierte (por ahora) en un bot de IRC que es capaz de proporcionarme información del entorno de la raspi que tengo en una estantería de mi casa.</p>
<p>Como primer paso, modifiqué el programa que había generado a partir del tutorial de Arduteka.<br />
En lugar de encender más o menos luces, lo que quería era saber la temperatura así que lo que hace el programita es (además de encender las luces si se dan las condiciones adecuadas), escribir en la salida estándar el mensaje:</p>
<p><q>Temperatura: </q> </p>
<p>seguido de la temperatura que se haya medido.<br />
Para eso se toman medidas 5 veces con una separación de 0.5 segundos y después se calcula la media.</p>
<p>El código puede verse (y descargarse) en <a href="https://github.com/fernand0/raspi/blob/master/c/temperatura.cpp">temperatura.cpp</a> y se compila y ejecuta de la misma forma que en el tutorial antes referido.</p>
<p>Para invocar remotamente este programa entra en juego <a href="http://inamidst.com/phenny/">phenny</a>.<br />
Lo primero que hay que hacer es ejecutarlo, se generará un fichero de configuración (en <code>~/.phenny/default.py</code>) que hay que editar para ponerle nuestro servidor de IRC favorito, canal y algunas cosillas más y ya lo tenemos listo para funcionar.<br />
Por defecto viene ya con un buen montón de instrucciones que podemos probar.</p>
<p>Pero el proyecto sigue. Queremos añadir nuestras propias instrucciones y las elegidas han sido de momento tres:</p>
<ul>
<li><code>.temp</code>: devuelve la temperatura que mide en ese momento el sensor instalado.</li>
<li><code>.ip</code>: devuelve la ip (interna) de la raspi, que se conecta a internet a través de un router WiFi hogareño normal y corriente.</li>
<li><code>.ls</code>: devuelve un listado de ficheros del directorio actual donde se haya ejecutado phenny.</li>
</ul>
<p>El código de esta parte puede verse (y descargarse) de: <a href="https://github.com/fernand0/phenny/blob/master/modules/testing.py">testing.py</a> y copio aquí un trozo de código de la primera de esas tres acciones para que cada uno se haga idea de lo fácil (o difícil) que es prepararlo.</p>
<pre class="brush: python; title: ; notranslate">
def temp(phenny, input):
   arg='sudo /home/pi/usr/src/pruebas/temperatura'
   p=subprocess.Popen(arg,shell=True,stdout=subprocess.PIPE)
   data = p.communicate()
   split_data = data[0].split()
   tempC = split_data[0]
   my_ip = 'La temperatura es %s' % tempC

   phenny.say(input.nick + '!' + ' ' + my_ip)
temp.priority = 'high'
temp.commands = ['temp']
</pre>
<p>También puede verse en <a href="http://pygments.org/demo/70236/">Código para llamar al programa que nos dice la temperatura</a>.</p>
<p>Como puede verse, invocamos al programa (lo he puesto con el path completo) lanzando un proceso con Popen.<br />
Le pedimos el resultado, lo procesamos y creamos una cadena de caracteres <code>my_ip</code> que luego le pasamos al bot para que la escriba en el canal de IRC.</p>
<p>Nótese que phenny permite asignarle un nombre (o varios) a la instrucción (<code>temp.commands = ['temp']</code>) y también asignarle una prioridad, que hemos puesto en los tres casos como alta (&#8216;high&#8217;).</p>
<p>Una vez hecho esto podemos volver a lanzar phenny (en realidad el bot puede cargar nuevas instrucciones de manera dinámica pero eso no importa ahora) y responderá a las instrucciones que ya &#8216;conocía&#8217; y a estas tres que acabamos de añadir.</p>
<p>Podemos verlo en acción en:</p>
<span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='560' height='315' src='http://www.youtube.com/embed/GfB0VRBRp2E?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span>
<p>Como decía arriba, el uso del canal de IRC ha sido un hito intermedio:</p>
<blockquote class="twitter-tweet"><p>Siempre podemos establecer expectativas más bajas para alcanzar los hitos.</p>
<p>&mdash; fernand0 (@fernand0) <a href="https://twitter.com/fernand0/status/317220464026058752">March 28, 2013</a></p></blockquote>
<p>El objetivo ahora tiene varias líneas de avance:</p>
<ul>
<li>Modificar phenny para que también acepte instrucciones desde un cliente<br />
de mensajería instantánea.</li>
<li>Añadir instrucciones a phenny (¿añadirle una webcam y poder ver una foto de la habitación desde nuestro teléfono móvil?, ¿descargar un documento cuya dirección le pasemos? ¿avisarnos si la temperatura alcanza determinados umbrales? &#8230;).</li>
<li>Añadir/utilizar capacidades de administración para que algunas instrucciones sólo puedan ejecutarse por personas autorizadas</li>
<li>&#8230;</li>
</ul>
<p>Trataremos de seguir informando.<br />
Si alguien ve mejoras a lo que ya hay publicado (las bondades del código existente son debidas a sus respectivos autores; los defectos me corresponden a mi) o necesita alguna aclaración no tiene más que decirlo.<br />
También si alguien conoce otros proyectos que se puedan utilizar de forma similar o de los que obtener inspiración.</p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/desarrollo/'>desarrollo</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/desarrollo/'>desarrollo</a>, <a href='http://mbpfernand0.wordpress.com/tag/pi/'>pi</a>, <a href='http://mbpfernand0.wordpress.com/tag/programacion/'>programación</a>, <a href='http://mbpfernand0.wordpress.com/tag/proyectos/'>proyectos</a>, <a href='http://mbpfernand0.wordpress.com/tag/raspberry/'>raspberry</a>, <a href='http://mbpfernand0.wordpress.com/tag/raspi/'>raspi</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/671/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/671/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/671/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/671/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/671/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/671/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/671/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=671&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/03/28/raspberry-pi-que-temperatura-hace-en-mi-casa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>

		<media:content url="http://distilleryimage6.s3.amazonaws.com/71f01730833011e29c6622000a1f9e4a_7.jpg" medium="image" />
	</item>
		<item>
		<title>Datos sensibles en nuestros programas</title>
		<link>http://mbpfernand0.wordpress.com/2013/03/01/datos-sensibles-en-nuestros-programas/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/03/01/datos-sensibles-en-nuestros-programas/#comments</comments>
		<pubDate>Fri, 01 Mar 2013 17:10:49 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[seguridad]]></category>
		<category><![CDATA[datos]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[memoria]]></category>
		<category><![CDATA[programación]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=667</guid>
		<description><![CDATA[Un sistema informático moderno es una pesadilla desde el punto de vista de dónde están realmente nuestros datos (cachés, swaps, páginas, memorias, discos &#8230;). Por eso conviene recordarlo: de cara a que nuestros datos sensibles estén el menor tiempo posible &#8230; <a href="http://mbpfernand0.wordpress.com/2013/03/01/datos-sensibles-en-nuestros-programas/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=667&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Un sistema informático moderno es una pesadilla desde el punto de vista de dónde están realmente nuestros datos (cachés, swaps, páginas, memorias, discos &#8230;). Por eso conviene recordarlo: de cara a que nuestros datos sensibles estén el menor tiempo posible por ahí en claro; y también por tratar de evitar mediante las facilidades que tengamos disponibles que esos datos terminen escritos donde no conventa. De eso hablaban en <a href="http://www.securitybydefault.com/2012/03/programacion-en-c-gestion-segura-de.html">Programación en C: Gestión segura de datos sensibles en memoria&lt;/a&lt;.</p>
<blockquote><p>
Un problema clásico con la memoria y la seguridad son los sistemas de paginamiento (swap) que extienden la memoria física del sistema empleando el HD del equipo. Es obvio que cuando vamos a gestionar un dato sensible se debería evitar a toda costa que ese dato fuese copiado a la memoria swap del equipo.
</p></blockquote>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/seguridad/'>seguridad</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/datos/'>datos</a>, <a href='http://mbpfernand0.wordpress.com/tag/desarrollo/'>desarrollo</a>, <a href='http://mbpfernand0.wordpress.com/tag/memoria/'>memoria</a>, <a href='http://mbpfernand0.wordpress.com/tag/programacion/'>programación</a>, <a href='http://mbpfernand0.wordpress.com/tag/seguridad/'>seguridad</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/667/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=667&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/03/01/datos-sensibles-en-nuestros-programas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>Añadir una instrucción a Python</title>
		<link>http://mbpfernand0.wordpress.com/2013/02/28/anadir-una-instruccion-a-python/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/02/28/anadir-una-instruccion-a-python/#comments</comments>
		<pubDate>Thu, 28 Feb 2013 17:04:28 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[lenguajes]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=665</guid>
		<description><![CDATA[Conocer como funciona un compilador es una buena idea para cualquiera que tenga que ver con la informática. Este artículo no va de eso, pero da algunas pistas de las interioridades de un lenguaje que es bien interesante, Python: Python &#8230; <a href="http://mbpfernand0.wordpress.com/2013/02/28/anadir-una-instruccion-a-python/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=665&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Conocer como funciona un compilador es una buena idea para cualquiera que tenga que ver con la informática.<br />
Este artículo no va de eso, pero da algunas pistas de las interioridades de un lenguaje que es bien interesante, Python: <a href="http://eli.thegreenplace.net/2010/06/30/python-internals-adding-a-new-statement-to-python/">Python internals: adding a new statement to Python</a>.</p>
<blockquote><p>
This article doesn’t attempt to suggest the addition of an until statement to Python. Although I think such a statement would make some code clearer, and this article displays how easy it is to add, I completely respect Python’s philosophy of minimalism. All I’m trying to do here, really, is gain some insight into the inner workings of Python.
</p></blockquote>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/desarrollo/'>desarrollo</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/desarrollo/'>desarrollo</a>, <a href='http://mbpfernand0.wordpress.com/tag/lenguajes/'>lenguajes</a>, <a href='http://mbpfernand0.wordpress.com/tag/programacion/'>programación</a>, <a href='http://mbpfernand0.wordpress.com/tag/python/'>python</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/665/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=665&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/02/28/anadir-una-instruccion-a-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>Copiar y pegar código no siempre es malo</title>
		<link>http://mbpfernand0.wordpress.com/2013/02/26/copiar-y-pegar-codigo-no-siempre-es-malo/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/02/26/copiar-y-pegar-codigo-no-siempre-es-malo/#comments</comments>
		<pubDate>Tue, 26 Feb 2013 14:54:32 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[copia]]></category>
		<category><![CDATA[patrones]]></category>
		<category><![CDATA[pega]]></category>
		<category><![CDATA[programación]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=664</guid>
		<description><![CDATA[Un artículo sobre copia/pega de código que tenía por ahí guardado: [PDF] “Cloning considered harmful” considered harmful: patterns of cloning in software. Típicamente, cuando se copia y pega el código en un sistema se considera una mala práctica. Sin embargo, &#8230; <a href="http://mbpfernand0.wordpress.com/2013/02/26/copiar-y-pegar-codigo-no-siempre-es-malo/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=664&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Un artículo sobre copia/pega de código que tenía por ahí guardado: <a href="http://maveric0.uwaterloo.ca/~migod/papers/2008/emse08-ClonePatterns.pdf">[PDF] “Cloning considered harmful” considered harmful: patterns of cloning in software</a>.</p>
<p>Típicamente, cuando se copia y pega el código en un sistema se considera una mala práctica. Sin embargo, los autores consideran que hay que analizarlo mejor y ver cuando puede tener sentido y cuando no.</p>
<blockquote><p>
This paper describes several patterns of cloning that we have observed in our case studies and discusses the advantages and disadvantages associated with using them. We also examine through a case study the frequencies of these clones in two medium-sized open source software systems, the Apache web server and the Gnumeric spreadsheet application.  In this study, we found that as many as 71% of the clones could be considered to have a positive impact on the maintainability of the software system.
</p></blockquote>
<p>Por ejemplo, podría aportar estabilidad en zonas ya probadas y que<br />
funcinonan, mientras se experimenta en otras partes más novedosas:</p>
<blockquote><p>
There is no doubt that code cloning is sometimes an indication of sloppy design and in such cases should be considered to be a kind of development “bad smell” (Fowler et al. 1999). However, we have found that there are many instances where this is simply not the case. For example, cloning may be used to introduce experimental optimizations to core subsystems without negatively affecting the stability of the main code. Thus, a variety of concerns such as stability, code ownership, and design clarity need to be considered before any refactoring is attempted; a manager should try to understand the reason behind the duplication before deciding what action (if any) to take.<br />
This paper introduces eleven cloning patterns that we have uncovered during<br />
case studies on large software systems,&#8230;
</p></blockquote>
<p>Interesante.</p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/desarrollo/'>desarrollo</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/copia/'>copia</a>, <a href='http://mbpfernand0.wordpress.com/tag/desarrollo/'>desarrollo</a>, <a href='http://mbpfernand0.wordpress.com/tag/patrones/'>patrones</a>, <a href='http://mbpfernand0.wordpress.com/tag/pega/'>pega</a>, <a href='http://mbpfernand0.wordpress.com/tag/programacion/'>programación</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/664/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/664/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/664/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/664/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/664/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/664/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/664/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/664/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/664/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/664/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/664/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/664/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/664/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/664/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=664&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/02/26/copiar-y-pegar-codigo-no-siempre-es-malo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>Ataques dirigidos: el caso de Facebook</title>
		<link>http://mbpfernand0.wordpress.com/2013/02/18/ataques-dirigidos-el-caso-de-facebook/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/02/18/ataques-dirigidos-el-caso-de-facebook/#comments</comments>
		<pubDate>Sun, 17 Feb 2013 20:32:37 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[seguridad]]></category>
		<category><![CDATA[ataques]]></category>
		<category><![CDATA[dirigidos]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[objetivos]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=661</guid>
		<description><![CDATA[Rompemos varias costumbres de esta bitácora (además de la de volver a publicar, hacerlo varias veces la misma semana) hablando de algo de bastante actualidad: en Facebook computers compromised by zero-day Java exploit. Según nos cuentan se ha tratado de &#8230; <a href="http://mbpfernand0.wordpress.com/2013/02/18/ataques-dirigidos-el-caso-de-facebook/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=661&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Rompemos varias costumbres de esta bitácora (además de la de volver a publicar, hacerlo varias veces la misma semana) hablando de algo de bastante actualidad: en <a href="http://arstechnica.com/security/2013/02/facebook-computers-compromised-by-zero-day-java-exploit/">Facebook computers compromised by zero-day Java exploit</a>.</p>
<p>Según nos cuentan se ha tratado de un ataque dirigido a algunos ingenieros de Facebook:</p>
<blockquote><p>
Rather than using typical targeted approaches like &#8220;spear phishing&#8221; with e-mails to individuals, the attackers used a &#8220;watering hole&#8221; attack—compromising the server of a popular mobile developer Web forum and using it to spring the zero-day Java exploit on site visitors.</p>
<p>&#8220;The attack was injected into the site&#8217;s HTML, so any engineer who visited the site and had Java enabled in their browser would have been affected,&#8221; Sullivan told Ars, &#8220;regardless of how patched their machine was.&#8221;
</p></blockquote>
<p>Esto es, aprovechar un fallo de Java en un sitio web que esperas que visiten tus víctimas y luego aprovechar para obtener otro tipo de ventajas.</p>
<p>Ya habíamos hablado en el pasado de ataques a medida:</p>
<p><a href="https://mbpfernand0.wordpress.com/2010/07/07/ataques-a-medida-con-hojas-de-calculo/">Ataques a medida con hojas de cálculo</a>.<br />
<a href="http://mbpfernand0.wordpress.com/2010/04/21/vigilancia-en-el-tibet/">Vigilancia en el Tíbet</a>.</p>
<p><strong>Actualización (2013/02/21):</strong> Ahora le ha pasado algo parecido a<br />
Apple a través de un portal que visitarían sus desarrolladores y parece que<br />
el fallo de Twitter de hace unos días también tenía que ver con lo mismo.<br />
Lo cuentan en <a href="http://unaaldia.hispasec.com/2013/02/java-detras-de-los-ataques-apple.html">Java detrás de los ataques a Apple, Facebook y Twitter</a>.</p>
<p>Recuerden: no visitar sitios &#8216;delicados&#8217; con la máquina del trabajo.</p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/seguridad/'>seguridad</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/ataques/'>ataques</a>, <a href='http://mbpfernand0.wordpress.com/tag/dirigidos/'>dirigidos</a>, <a href='http://mbpfernand0.wordpress.com/tag/facebook/'>facebook</a>, <a href='http://mbpfernand0.wordpress.com/tag/objetivos/'>objetivos</a>, <a href='http://mbpfernand0.wordpress.com/tag/seguridad/'>seguridad</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/661/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/661/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/661/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/661/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/661/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/661/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/661/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/661/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/661/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/661/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/661/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/661/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/661/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/661/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=661&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/02/18/ataques-dirigidos-el-caso-de-facebook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
		<item>
		<title>El código peor&#8230; el que hacen los gobiernos</title>
		<link>http://mbpfernand0.wordpress.com/2013/02/15/el-codigo-peor-el-que-hacen-los-gobiernos/</link>
		<comments>http://mbpfernand0.wordpress.com/2013/02/15/el-codigo-peor-el-que-hacen-los-gobiernos/#comments</comments>
		<pubDate>Fri, 15 Feb 2013 11:34:12 +0000</pubDate>
		<dc:creator>mbpfernand0</dc:creator>
				<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[calidad]]></category>
		<category><![CDATA[empresas]]></category>
		<category><![CDATA[gobiernos]]></category>
		<category><![CDATA[programas]]></category>
		<category><![CDATA[seguridad]]></category>

		<guid isPermaLink="false">http://mbpfernand0.wordpress.com/?p=660</guid>
		<description><![CDATA[En Study Confirms The Government Produces The Buggiest Software hablan del tema del desarrollo de aplicaciones analizando un conjunto de aplicaciones: In a talk at the Black Hat Europe security conference in Amsterdam later this week, security researcher and chief &#8230; <a href="http://mbpfernand0.wordpress.com/2013/02/15/el-codigo-peor-el-que-hacen-los-gobiernos/">Sigue leyendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=660&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>En <a href="http://www.forbes.com/sites/andygreenberg/2012/03/13/study-confirms-governments-produce-the-buggiest-software/">Study<br />
Confirms The Government Produces The Buggiest Software</a> hablan del tema<br />
del desarrollo de aplicaciones analizando un conjunto de aplicaciones:</p>
<blockquote><p>
In a talk at the Black Hat Europe security conference in Amsterdam later this week, security researcher and chief technology officer of bug-hunting firm Veracode Chris Wysopal plans to give a talk breaking down the company’s analysis of 9,910 software applications over the second half of 2010 and 2011, automatically scanning them for errors that a hacker can be use to compromise a website or a user’s PC. And one result of that analysis is that government software developers are allowing significantly more hackable security flaws to find their way into their code than their private industry counterparts.
</p></blockquote>
<p>E inmediatamente:</p>
<blockquote><p>
According to Veracode’s analysis across industry and government, fully<br />
eight out of ten apps failed to fully live up to the company’s security<br />
criteria. But breaking down the results between U.S. government and private<br />
sector software, the government programs, 80% of which were built for<br />
federal agencies rather than state or local, came out worse. Measuring its<br />
collection of apps against the standards of the Open Web Application<br />
Security Project or OWASP, Veracode found that only 16% of government web<br />
applications were secure, compared with 24% of finance industry software<br />
and 28% of commercial software. And using criteria of the security-focused<br />
education group SANS to gauge offline applications, the study found that<br />
18% of government apps passed, compared with 28% of finance industry apps<br />
and 34% of commercial software.
</p></blockquote>
<p>Como casi siempre, el diablo está en los incentivos (quién hace qué, por qué y cuáles son sus motivaciones):</p>
<blockquote><p>
Those incentives have led to government bugs persisting even as the rest of the industry starts to clean up its act, says Veracode’s Wysopal. While SQL injection and cross-site scripting vulnerabilities have have dropped off in private industry over the last two years, they’ve remained statistically flat for governments.
</p></blockquote>
<p>A mi me recuerda los estudios aquellos sober las políticas de claves en los sitios web que comentamos en <a href="http://mbpfernand0.wordpress.com/2010/11/19/contrasenas-usabilidad-y-uso/">Contraseñas, usabilidad y uso</a>: los sitios web gubernamentales eran los que tenían políticas más restrictivas, sin mucha evidencia de que eso mejorara la seguridad.</p>
<br />Archivado en: <a href='http://mbpfernand0.wordpress.com/category/desarrollo/'>desarrollo</a> Tagged: <a href='http://mbpfernand0.wordpress.com/tag/calidad/'>calidad</a>, <a href='http://mbpfernand0.wordpress.com/tag/desarrollo/'>desarrollo</a>, <a href='http://mbpfernand0.wordpress.com/tag/empresas/'>empresas</a>, <a href='http://mbpfernand0.wordpress.com/tag/gobiernos/'>gobiernos</a>, <a href='http://mbpfernand0.wordpress.com/tag/programas/'>programas</a>, <a href='http://mbpfernand0.wordpress.com/tag/seguridad/'>seguridad</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mbpfernand0.wordpress.com/660/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mbpfernand0.wordpress.com/660/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mbpfernand0.wordpress.com/660/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mbpfernand0.wordpress.com/660/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mbpfernand0.wordpress.com/660/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mbpfernand0.wordpress.com/660/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mbpfernand0.wordpress.com/660/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mbpfernand0.wordpress.com/660/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mbpfernand0.wordpress.com/660/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mbpfernand0.wordpress.com/660/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mbpfernand0.wordpress.com/660/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mbpfernand0.wordpress.com/660/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mbpfernand0.wordpress.com/660/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mbpfernand0.wordpress.com/660/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mbpfernand0.wordpress.com&#038;blog=6432004&#038;post=660&#038;subd=mbpfernand0&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mbpfernand0.wordpress.com/2013/02/15/el-codigo-peor-el-que-hacen-los-gobiernos/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/bcb2e38ed640ab9e2cffaa8afe02f812?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mbpfernand0</media:title>
		</media:content>
	</item>
	</channel>
</rss>
