Страница 1 из 2

[BETA] md5*3()

Добавлено: 12.08.2004 18:53
ra

Код: Выделить всё

############################################################## 
## MOD Title: md5*3() 
## MOD Author: R@ < meos@mail.ru > (Kirill) n/a 
## MOD Description: Gives more security to your users passwords by hashing it 3 times by md5 algorythm instead of one 
## MOD Version: 1.0.0 
## 
## Installation Level: Easy 
## Installation Time: 7 Minutes 
## Files To Edit (4): login.php 
##        	      includes/usercp_register.php 
##        	      includes/usercp_sendpasswd.php
##		      admin/admin_users.php
## Included Files (1): db_update.php 
############################################################## 
## For Security Purposes, Please Check: http://www.phpbbguru.net/mods/ for the 
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code 
## to enter into your phpBB Forum. 
##############################################################
## Author Notes: run db_update.php for updating exists passwords
##
## Before adding this MOD to your forum, you should backup users table of your phpBB database 
## 
## 
##############################################################
## MOD History: 
## 
##   2004-08-11 - Version 1.0.0 
##      - Initial Release 
## 
############################################################## 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
##############################################################

#
#-----[ OPEN ]------------------------------------------
#

login.php

#
#-----[ FIND ]------------------------------------------
#

if( md5($password) == $row['user_password'] && $row['user_active'] )

#
#-----[ REPLACE WITH ]------------------------------------------ 
#

if( md5(md5(md5($password))) == $row['user_password'] && $row['user_active'] )

#
#-----[ OPEN ]------------------------------------------
#

includes/usercp_register.php

#
#-----[ FIND ]------------------------------------------
#

if ( $row['user_password'] != md5($cur_password) )

#
#-----[ REPLACE WITH ]------------------------------------------ 
#

if ( $row['user_password'] != md5(md5(md5($cur_password))) )

#
#-----[ FIND ]------------------------------------------
#

$new_password = md5($new_password);

#
#-----[ REPLACE WITH ]------------------------------------------ 
#

$new_password = md5(md5(md5($new_password)));

#
#-----[ FIND ]------------------------------------------
#

if ( $row['user_password'] != md5($cur_password) )

#
#-----[ REPLACE WITH ]------------------------------------------ 
#

if ( $row['user_password'] != md5(md5(md5($cur_password))) )

#
#-----[ OPEN ]------------------------------------------
#

includes/usercp_sendpasswd.php

#
#-----[ FIND ]------------------------------------------
#

SET user_newpasswd = '" . md5($user_password) . "', user_actkey = '$user_actkey'

#
#-----[ REPLACE WITH ]------------------------------------------ 
#

SET user_newpasswd = '" . md5(md5(md5($user_password))) . "', user_actkey = '$user_actkey'

#
#-----[ OPEN ]------------------------------------------
#

admin/admin_users.php

#
#-----[ FIND ]------------------------------------------
#

$password = md5($password);

#
#-----[ REPLACE WITH ]------------------------------------------ 
#

$password = md5(md5(md5($password)));

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM

db_update.php

Код: Выделить всё

<?php
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx);

$sql = "UPDATE " . USERS_TABLE . " SET user_password = md5(md5(user_password)) WHERE user_id > '1'";
if (!$result = $db->sql_query($sql))
{
	die('Error');
}
else
{
	die('OK, delete this script');
}
?>

Добавлено: 12.08.2004 19:16
Vladson
Смысл понятен, но вот надо ли оно ?
Проги вычисляющие пароль брутои и так слишком медленные.
Хотя идея хорошая

Добавлено: 12.08.2004 19:56
ra
Vladson ну есть пароли типа 123, qwert, qaz и т.п. Я вот с нюки много аналагичных паролей расшифровывал.

Добавлено спустя 8 минут 18 секунд:

Несколько месяцев назад, кстати, открыли сервис по взлому хешей до восьми символов включительно.

Добавлено: 12.08.2004 20:16
Vladson
ну есть пароли типа 123, qwert, qaz и т.п. Я вот с нюки много аналагичных паролей расшифровывал
У кого хватает ума ставить такой пароль (123, qwert) тот заслуживает того чтоб его взломали IMHO
(у меня тоже на одном из форумов подобный пароль, но там я junior и мне не жалко чтоб его взломали, я даже могу здесь его выложить)

Добавлено: 17.08.2004 8:43
Xpert
Описание: Gives more security to your users passwords by hashing it 3 times by md5 algorythm instead of one.

Мне кажется, что стоит заменить:
Before adding this MOD to your forum, you should back up your data base
На что-нибудь подобное:
Before adding this MOD to your forum, you should backup users table of your phpBB database.

Добавлено: 24.10.2004 5:32
Vladson
ну есть пароли типа 123, qwert, qaz и т.п.
Самый наверно популярный пароль 123 я на одном форуме у 18 (из 3000) человек такой видел, на втором месте 1 (у 7 чел)

Добавлено: 08.02.2005 6:30
[R: R@m$e$ :U]
Я в свое время реализоовал это... и тестил перебор мд5 на универской сетке моего знакомого... в общем стандартный мд5 разбирается легко... а с таким.... мало кто решить разбирать после второй не удачной попытки... тк хз скоко там еще раз перехешировано =)

Добавлено: 10.12.2005 20:36
VovikV
А как сей мод потом удалить, как обратно преобразовать базу?

Добавлено: 10.12.2005 21:23
[R: R@m$e$ :U]
VovikV
ни как

Добавлено: 10.12.2005 21:25
TUMS
[R: R@m$e$ :U] писал(а):VovikV
ни как
VovikV
да я думаю это не особо и надо-то...

Добавлено: 11.12.2005 8:38
VovikV
Да как сказать, изменят разработчики чегонить касаемое работы форума с паролями, и придется ждать пока, будет исправлен этот мод, если вообще будет исправлен. От всех остальных модов которые я ставил вродь зависимости нет, их можно откатить, а тут с одной стороны конечно, в плане безопасности, хорошо, что нельзя вернуть исходное состояние базы, а с другой стороны, я уже написал.

Добавлено: 11.12.2005 8:48
TUMS
VovikV
ты конечно прав, но есть одно "но"...
Разработчики могу изменить всё что угодно, кроме этой части, ибо никто ничего лучше md5 пока не придумал (имееться ввиду по доступности и непоколебимости).

Так что думаю не скоро PhpBB изменит свои предпочтения в этой части...

Добавлено: 11.12.2005 9:36
Xpert
VovikV
Никак. Новые пароли пользователи могут получить через систему восстановления паролей.

Добавлено: 15.01.2006 23:00
окись
а правильно ли в db_update.php указан SET user_password = md5(md5(user_password))? А то везде replace with md5(md5(md5($password))); повторяется 3 раза, а в апдейте всего два :oops:

Добавлено: 15.01.2006 23:35
Xpert
Все верно. Один раз пароль уже шифрован самим phpBB.

Добавлено спустя 30 минут 58 секунд:

Можно зашифровать и 3 и 4 раза. Но нет смысла. Важно не сколько раз пароль зашифрован, а то что он зашифрован нестандартно для данного движка. Вот и все. Достаточно применить любое решение, отличное от дефолтного.