ok, i have installed a cms and tried to log in, but it says login fails. so i start to poke around mysql and here is what i find out:
Code:
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| avps |
| bans |
| blocks |
| categories |
| comments |
| config |
| countries |
| files |
| forums |
| friends |
| messages |
| news |
| peers |
| pollanswers |
| polls |
| posts |
| readposts |
| sitelog |
| stylesheets |
| topics |
| torrents |
| users |
+----------------+
22 rows in set (0.00 sec)
so i take a peak in users:
Code:
mysql> describe users;
+-----------------+-------------------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+-------------------------------+------+-----+---------------------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| username | varchar(40) | NO | UNI | | |
| old_password | varchar(40) | NO | | | |
| passhash | varchar(32) | NO | | | |
| secret | varchar(20) | NO | | | |
| email | varchar(80) | NO | | | |
| status | enum('pending','confirmed') | NO | MUL | pending | |
| added | datetime | NO | | 0000-00-00 00:00:00 | |
| last_login | datetime | NO | | 0000-00-00 00:00:00 | |
| last_access | datetime | NO | MUL | 0000-00-00 00:00:00 | |
| editsecret | varchar(20) | NO | | | |
| privacy | enum('strong','normal','low') | NO | | normal | |
| stylesheet | int(10) | YES | | 1 | |
| info | text | YES | | NULL | |
| acceptpms | enum('yes','friends','no') | NO | | yes | |
| ip | varchar(15) | NO | MUL | | |
| class | tinyint(3) unsigned | NO | | 0 | |
| avatar | varchar(100) | NO | | | |
| uploaded | bigint(20) unsigned | NO | MUL | 0 | |
| downloaded | bigint(20) unsigned | NO | MUL | 0 | |
| title | varchar(30) | NO | | | |
| country | int(10) unsigned | NO | MUL | 0 | |
| notifs | varchar(100) | NO | | | |
| modcomment | text | NO | | | |
| enabled | enum('yes','no') | NO | MUL | yes | |
| avatars | enum('yes','no') | NO | | yes | |
| donor | enum('yes','no') | NO | | no | |
| warned | enum('yes','no') | NO | MUL | no | |
| warneduntil | datetime | NO | | 0000-00-00 00:00:00 | |
| torrentsperpage | int(3) unsigned | NO | | 0 | |
| topicsperpage | int(3) unsigned | NO | | 0 | |
| postsperpage | int(3) unsigned | NO | | 0 | |
| deletepms | enum('yes','no') | NO | | yes | |
| savepms | enum('yes','no') | NO | | no | |
| passkey | varchar(32) | NO | | | |
| tzoffset | tinyint(2) | NO | | 0 | |
+-----------------+-------------------------------+------+-----+---------------------+----------------+
36 rows in set (0.01 sec)
ok, so i see 2 things, one is old_password, but the others is passhash. so i take a look at the old_password:
Code:
mysql> SELECT username, old_password, passhash FROM users;
+----------+--------------+----------------------------------+
| username | old_password | passhash |
+----------+--------------+----------------------------------+
| automan | passwd | 329996eae77078f9f5962188103629ca |
+----------+--------------+----------------------------------+
1 row in set (0.00 sec)
ok, old_passwd is passwd, so i will change it to 123abcd:
Code:
mysql> UPDATE users SET old_password = '123abcd' WHERE username = 'automan';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
which yields:
Code:
mysql> SELECT username, old_password, passhash FROM users;
+----------+--------------+----------------------------------+
| username | old_password | passhash |
+----------+--------------+----------------------------------+
| automan | 123abcd | 329996eae77078f9f5962188103629ca |
+----------+--------------+----------------------------------+
1 row in set (0.00 sec)
but when i try to sign into the site, i get:
Username or password incorrect
i am assuming this has something to do with the passwd not mathcing the hash now. could someone please enlighten me on how to work around this so i dont have to reinstall the cms only to meet the same issue again.