В общем пытаюсь пробраться на один форум. phpBB+PhpNuke. В принципе пробрался. Могу читать файлы и коннектится\редактировать БД. Но мало мне. А тем более интересно. Что меня интересует это пароли. Загнал в PassPro то что надо, ни хрена не расшифровывает. Загнал свой хэш 18aee3af80e5b6786b8780a00306ab23 (пароль 123) - то же самое. Что думаю такое? Генерирую MD5 на 123 - получаю 202cb962ac59075b964b07152d234b70. Вот те на! Вопрос. В каком файле посмотреть как шифруется пас? И где он должен лежать? PS: Помню была тема про шифровку в IPB, но я её не нашёл.
да мож админы сами забодяжили чтонить, а искать надо в файлах которые работают с кешами в login.php например
Модернизировать не особо сложно - возможно сделали как в Ipb P.s Крутую идею подкинули -)) МОд такой надо сотворить.
Посмотрел пару файлов. Вот один /modules/NS-User/password.php PHP: <?php // File: $Id: password.php,v 1.3xxxxxx larsneo Exp $ // ---------------------------------------------------------------------- // POST-NUKE Content Management System // Copyright (C) 2001 by the Post-Nuke Development Team. // http://www.postnuke.com/ // ---------------------------------------------------------------------- // Based on: // PHP-NUKE Web Portal System - http://phpnuke.org/ // Thatware - http://thatware.org/ // ---------------------------------------------------------------------- // LICENSE // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License (GPL) // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // To read the license please visit http://www.gnu.org/copyleft/gpl.html // ---------------------------------------------------------------------- // Original Author of file: hdonner // Purpose of file: password generation for new users and lost password // ---------------------------------------------------------------------- /** * Please note: * * This is a suggestion for a stronger password creation. Define _SYLLABELS * in a way you like (you do not need to use uppercase characters). In this * example the letters a-z are thre times in the list, so we do not have * to many numbers in the password. * * _MAKEPASS_LEN defines the length of the password, that will be produced; * by default 8. If this suggestion will be taken over the define should be * replaced by a configuration var. * * The _MAKEPASS_BOX defines the size of the random box. For a good secure * it should be 1,000,000 but this is not possible on most of the servers * (memory restrictions) and it took a while to create the box. The box * contains a random collection of _SYLLABELS with some uppercases (about * nearly 20% are uppercase). * * I do not see a high risk if _MAKEPASS_BOX will be reduced to a value * of 10,000. * * hdonner */ define('_SYLLABELS', "*abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789"); define('_MAKEPASS_LEN', 8); define('_MAKEPASS_BOX', 5000); // taken from php.net function _make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } function makePass() { // init some $result = ''; mt_srand(_make_seed()); $syllabels = _SYLLABELS; $len = strlen($syllabels) - 1; $box = ""; // create box for($i = 0; $i < _MAKEPASS_BOX; $i++) { $ch = $syllabels[mt_rand(0, $len)]; // about 20% upper case letters if (mt_rand(0, $len) % 5 == 1) { $ch = strtoupper($ch); } // filling up the box with random chars $box .= $ch; } // now collect password from box for($i = 0; $i < _MAKEPASS_LEN; $i++) { $result .= $box[mt_rand(0, (_MAKEPASS_BOX - 1))]; } return $result; } define('_MAKEPASS_LENG', 15); define('_MAKEPASS_BOXX', 5000); function makeECode(){ // init some $result = ''; mt_srand(_make_seed()); $syllabels = _SYLLABELS; $len = strlen($syllabels) - 1; $box = ""; // create box for($i = 0; $i < _MAKEPASS_BOXX; $i++) { $ch = $syllabels[mt_rand(0, $len)]; // about 20% upper case letters if (mt_rand(0, $len) % 5 == 1) { $ch = strtoupper($ch); } // filling up the box with random chars $box .= $ch; } // now collect password from box for($i = 0; $i <= _MAKEPASS_LENG; $i++) { $result .= $box[mt_rand(0, (_MAKEPASS_BOXX - 1))]; } return $result; } ?>1 В остальных про пасы вроде ничего нету. Чёрт хреново, что листать диры не могу. Наугад всё. Ещё фича: Запрашиваю типа забыл и получаю свой старый 123.
Azazel, ты по ходу привел код восстановления паролей. Генератор случайных чисел для тех кто забыл пароль. К последней версии нюки прилагается старая версия пхпбб. А тебе получается попалась не старая версия, раз хэш не расшифровывается. Значит и админ там не лох, и как пропатчен его форум без кода не узнать. В пхпбб 18 пароль может шифроваться очень многими способами. Модов до фига. Самое распространенное имхо двойное, тройное и далее md5 шифрование хэша. Проверь на своем 123 многократную расшифровку. Но гарантии нет. Некоторые моды пхпбб 18 не шифруют многократно, а добавляют случайные числа в хэш. Надо смотреть login.рнр includes/usercp_register.php includes/functions.php admin/admin_users.php db_update.php includes/usercp_sendpasswd.php profile.рнр