19
Jun 2009

Guía genérica para recuperar la contraseña de un CMS

Por i/o

En ocasiones uno llega a olvidar la contraseña del administrador de un CMS, si uno recuerda el email o el nombre de usuario, existe la posibilidad de usar la función “Recordar contraseña” que muchos CMS implementan. Sin embargo, puede suceder que uno no recuerde ningún dato o ha perdido el rastro de la dirección de correo de quien fuera el administador. También puede ser que el CMS simplemente no contemple recuperar o cambiar contraseñas.

Esta es una pequeña guía -genérica- para resetear la contraseña en un CMS que use una base de datos MySQL.

Vamos a necesitar una shell y acceso a MySQL vía shell.

1.- Nos conectamos al servidor.

user@computer:$ ssh usuario@servidor.com

2.- Nos conectamos a la base de datos.

user@computer:$ mysql -u mi_usuario -p mi_basededatos

PISTA. Si tampoco contamos con los datos para conectar a la base de datos, la mayoría de las veces los podemos encontrar en el archivo config. El nombre y la ruta de este archivo varía en cada CMS, así que habrá que buscarlo un poco. Algunas rutas son:

CMS Config
Spip /config/connect.php
Wordpress /wp-config.php
Drupal /sites/default/settings.php
OSCommerce /catalog/includes/configure.php

Ejemplo en Worpress /wp-config.php:

define('DB_NAME', 'mi_basededatos');
define('DB_USER', 'mi_usuario');
define('DB_PASSWORD', 'mi_clave');

Ejemplo en Drupal /sites/default/settings.php:

$db_url = 'mysql://mi_usuario:mi_clave@localhost/mi_basededatos';

3.- Ya conectados a la base de datos buscamos con la línea de comandos de MySQL en qué tabla pueden estar los usuarios o los administradores.

mysql> show tables;

PISTA. Por lo general las tablas tienen nombres descriptivos como ‘users’, ‘authors’, ‘administrators’, etc.

4.- Ya que ubicamos la tabla de usuarios, vemos cuál es su contenido:

mysql> SELECT * from tabla_de_usuarios;

Entonces nos mostrará los ID, nombres de usuario, las contraseñas (seguramente cifradas con MD5) y quizá otros datos dependiendo del CMS:

+----+-----------+-------------------------------------+
| id | user_name | pass                                |
+----+-----------+-------------------------------------+
|  1 | admin     | e5282b1595287ee71178042ad070d3f3    |
+----+-----------+-------------------------------------+
1 row in set (0.02 sec)

5.- Ahora vamos a actualizar el campo de la contraseña para un usuario, es posible que el usuario administrador sea el que tiene el ID = 1 o bien al ver la lista de usuarios recordemos cual era el admin o ubiquemos cúal email está asignado al admin.

mysql> UPDATE tabla_usuarios SET pass=MD5('nueva') WHERE id=1;

Donde tabla_usuarios es el nombre de la tabla de usuarios, pass es el nombre del campo de las contraseñas (MD5 cifrará la clave), nueva es la nueva contraseña que usaremos y id es el nombre del campo para el número de identificación, en este caso = 1. Lo cambiamos según se llamen los campos de la tabla usuarios del CMS. Si todo resultó bien nos regresará algo como esto:

Query OK, 0 rows affected (0.04 sec)
Rows matched: 1  Changed: 0  Warnings: 0

Ahora podemos ir a la página de login del CMS y usar los datos usuario:admin y clave:nueva.

PISTA. Puede ser que al ver la lista de usuarios y emails recordemos que tenemos control sobre alguno, o que sólo sea cuestión de cambiar el email para que quien haya olvidado la contraseña pueda cambiarla con la función “Recordar contraseña” que ofrecen algunos CMS. Usamos:

mysql> UPDATE tabla_usuarios SET email=('nuevo@correo.com') WHERE id=1;

Enlaces

. . .
  • Digg
  • del.icio.us
  • BarraPunto
  • Identi.ca
  • Meneame
  • Slashdot
  • Technorati

Un Comentario en “Guía genérica para recuperar la contraseña de un CMS”

  1. coyotita dice:

    otro truco:

    en SPIP la tabla mysql qe contiene los datos de autores, editores y administradores se llama “spip_auteurs”

Escribe un comentario

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word

Anti-Spam Protection by WP-SpamFree