<?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>El Anibal Blog &#187; seguridad</title>
	<atom:link href="http://www.elanibal.net/tag/seguridad/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.elanibal.net</link>
	<description>ElAnibal.net es mi blog personal donde pongo de todo =)</description>
	<lastBuildDate>Thu, 08 Sep 2011 04:51:37 +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>Seguridad en WordPress</title>
		<link>http://www.elanibal.net/seguridad-en-wordpress/</link>
		<comments>http://www.elanibal.net/seguridad-en-wordpress/#comments</comments>
		<pubDate>Mon, 15 Mar 2010 03:53:17 +0000</pubDate>
		<dc:creator>ElAnibal</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[consejos de seguridad]]></category>
		<category><![CDATA[seguridad]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.elanibal.com/?p=316</guid>
		<description><![CDATA[Con el tiempo y la experiencia uno se va dando cuenta de que los riesgos (siempre presentes) en la seguridad de scripts en PHP y especialmente WordPress — el que más conozco — se pueden minimizar, aquí van 5 consejos &#8230; <a href="http://www.elanibal.net/seguridad-en-wordpress/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Con el tiempo y la experiencia uno se va dando cuenta de que los  riesgos (siempre presentes) en la seguridad de scripts en PHP y  especialmente WordPress — el que más conozco — se pueden minimizar, <strong>aquí  van 5 consejos enfocados 100% a WordPress</strong> para ello:</p>
<ol>
<li><strong>Desactiva wp-db-backup</strong>. Los motivos son <a href="http://sigt.net/archivo/actualizacion-de-seguridad-para-wp-database-backup.xhtml">de  sobra conocidos</a>, un fallo en este plugin o cualquier otro fallo que  dé acceso a una cuenta de administrador permite al atacante descargar  una copia de la base de datos.
<p>Como administrador, el atacante puede generar muchos daños: borrar  artículos, comentarios, insultar en tu nombre, borrar usuarios,  cambiarles las contraseñas <strong>pero</strong> si no puede hacerse con  una copia de la base de datos <em>“en principio”</em> no puede saber la  contraseña de los otros posibles usuarios. No es ningún consuelo y  realmente ante un ataque lo mejor es cambiar las contraseñas de todos  los usuarios pero si son muchos y esto no es posible es mejor que no  acceda a la BBDD: mejor tener que cambiar una contraseña que no todas.</p>
<p>Además, <em>wp-db-backup</em> guarda la BBDD en un directorio  generado aleatoriamente dentro de <code>wp-content</code>: nunca se  deben guardar backups accesibles por web, <a href="http://sigt.net/archivo/backups-automaticos-en-el-servidor.xhtml">es  mejor tenerlos fuera</a> (y si aún así acceden a ellos es que ya tienen  control sobre toda tu máquina), un fallo en Apache podría hacer que  medidas como el no mostrar el índice de ficheros dejarán de ser  efectivas y obtener la BBDD fácilmente. Si aún así quieres usarlo  algunas opciones a tener en cuenta son:</p>
<ul>
<li>Añade un <code>.htaccess</code> en el directorio de backups <strong>que  impida el listado de ficheros del directorio</strong>:
<pre>Options -Indexes</pre>
</li>
<li><strong>Obliga a introducir una contraseña</strong> para acceder  al directorio de backups, en el <code>.htaccess</code> debajo de lo  anterior añade:
<pre>AuthUserFile /home/tuusuario/.htpasswd
AuthGroupFile /dev/null
AuthName EnterPassword
AuthType Basic
require user usuarioparaacceder</pre>
<p>El directorio /home/tuusuario/ debe ser un directorio <strong>fuera  del acceso a la web</strong> por ejemplo si el raíz de tu web es  /home/tuusuario/tudominio.com el fichero .htpasswd debe estar fuera de  tudominio.com: <strong>nunca dejes el fichero .htpasswd accesible por  web</strong>.</p>
<p>Una vez hecho esto, creamos el fichero <code>.htpasswd</code> con el  contenido siguiente que será el usuario y la contraseña separados por  dos puntos juntos (:):</p>
<pre>usuarioparaacceder:contraseñaparaacceder</pre>
<p>Sobra decir que <strong>las rutas</strong> (/home/tuusuario) y <em>usuarioparacceder</em> debe coincidir en los dos ficheros.</li>
</ul>
</li>
<li><strong>Elimina los ficheros de instalación y los importadores</strong>.  Una vez hecha la instalación o actualización de WordPress se deben  borrar los ficheros de instalación:
<pre>/wp-admin/install.php
/wp-admin/upgrade.php
/wp-admin/installer-helper.php</pre>
<p>El tercero es opcional (aunque todo código que no sea necesario se  debe borrar), el primero y segundo si no se borran son un agujero de  seguridad del tamaño del Gran Cañón del Colorado. Luego además podemos <strong>borrar  los importadores</strong>:</p>
<p>Los importadores (los ficheros de dentro de <code>wp-admin/import/</code>)  sirven para importar contenido (es decir: <strong>modificar la base de  datos</strong>) desde otros sistemas de blogging por <a href="http://sigt.net/archivo/multiples-fallos-xss-csrf-en-importadores-de-wordpress.xhtml">lo  que pueden ser vulnerables a ataques</a> otra vez más la máxima es: si  no lo necesito lo borro. ¿Quién importa a WordPress entradas desde 15  sistemas distintos? Pues eso: <strong>borra los que no uses</strong>.</li>
<li><strong>Limita el uso de plugins</strong>. Los plugins suelen ser  vulnerables, sobretodo a ataques XSS (una plaga hoy en día), si puedes  prescindir de un plugin <strong>no lo dudes y hazlo</strong>.
<p>Los plugins que potencialmente son más peligrosos son aquellos <strong>que  permiten la entrada de parámetros</strong> mientras que aquellos que  solo devuelven una salida (por ejemplo: añadir un dato sacado de la BBDD  al diseño de la web) lo son menos.</li>
<li><strong>Protege /wp-admin/</strong>. De la misma forma que en el  primer paso hemos protegido el directorio de backups, podemos hacerlo  para el directorio /wp-admin/, quizá sea algo molesto pero si sabes a  ciencia cierta en un momento dado que tu WordPress es vulnerable en el  directorio wp-admin y todavía no hay solución puedes activar  momentaneamente esta restricción.</li>
<li><strong>Utiliza una cuenta de autor</strong>. <a href="http://sigt.net/archivo/fallos-xss-en-wordpress-page-new-post-new-y-user-edit.xhtml">El  bug anterior</a> es un buen ejemplo: permite editar información de  usuarios si <strong>estás como administrador</strong>.
<p>Crea una segunda cuenta con privilegios de “Autor” y usara para  escribir, comentar, moderar comentarios, etcétera. Si en algún momento  tienes que des/activar un plugin o editar un comentario de otro usuario  tendrás que entrar como administrador pero es un mal menor.</p>
<p>Por ejemplo, mi usuario es un “Autor” pero mediante los “Roles” tiene  como permisos extendidos editar páginas/entradas (propias),  moderar  comentarios (sólo permite los tuyos),  subir ficheros y escribir HTML no  filtrado. Mientras que el resto de “Autores” tienen permisos básicos  pero no pueden moderar…</p>
<p>Las tareas tales como activar plugins, importar, administrar  opciones, editar ficheros / plugins / plantillas / usuarios, administrar  categorías / encuestas o cambiar temas requieren que entre como  administrador pero no suelo necesitarlo</li>
<li><strong>(Bonus) Lee sitios que anuncien fallos</strong>: aquí en  SigT solemos dar la brasa bastante con temas de WordPress, además que  considero más práctico parchear (cuando son pocas líneas) que no  “obligar” a actualizar todo WordPress cada vez, en <a href="http://www.buayacorp.com/">Buayacorp</a> Alex suele dar la brasa a  los desarrolladores de WordPress con fallos y en el <a href="http://planetwebdev.net/">Planet Webdev</a> o el <a href="http://planeta.wordpress.com.mx/">Planeta WordPress</a> cada vez  que aparece un fallo de seguridad damos la brasa a lo menos 10 bloggers  distintos por cada Planet: sale un bug y aparecen 20 entradas <img src='http://www.elanibal.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</li>
<li><strong>(Bonus II) Quita el usuario administrador</strong>: o  mejor dicho: desactiva el primer usuario administrador. Truco sólo para  gente que sepa lo que hace. Muchos exploits automáticos atacan al <code>user_ID  = 1</code> de <code>wp_users</code> en la base de datos, una posible  táctica para que estos exploits fallen sería (aunque aviso que hay que  probarlo bien, no sea que algún plugin o algo también falle):
<ul>
<li>Crea un nuevo usuario con permisos de administrador (para que  tenga un <code>user_ID</code> distinto).</li>
<li>Deja el usuario <code>admin</code> antiguo como “lector” (sin  privilegios).</li>
</ul>
</li>
</ol>
<p>Actualmente WordPress se ha ganado el nombre de <em>WordStress</em> a  pulso pero considero que los desarrolladores trabajan duro para  solucionar los problemas, creo que poco a poco se hará menos común el  ver tantos fallos seguidos en tan poco tiempo.</p>
<p>Fuente:  <a href="http://sigt.net/archivo/cinco-consejos-de-seguridad-para-wordpress.xhtml" target="_blank">Sigt</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.elanibal.net/seguridad-en-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

