Шифрование паролей (Encrypt Passwords)

Дополнительная защита при авторизации и других действиях с паролями в phpBB3

Здесь вы можете скачать и получить поддержку по модам, созданным командой нашего сайта. Пожалуйста, не пишите и не задавайте вопросов, связанных с чужими разработками, используйте для этого форум ниже.
Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 11.09.13 02:24

В стандартном phpBB3 все вводимые пользователями пароли отправляются на сервер в виде обычного текста, и при определённых условиях могут быть перехвачены в канале "Браузер пользователя --> Конечный Сервер". Этот мод добавляет дополнительную защиту паролей в виде их шифрования перед отправкой на сервер с помощью устойчивого ко взлому алгоритма RSA. Таким образом, даже если произойдёт перехват пароля в канале между браузером пользователя и конечным сервером, злоумышленник не сможет узнать пароль, потому что не сможет его расшифровать.

Мод находится в стадии бета-тестирования и требует дальнейшей проверки на устойчивость работы, поэтому будем признательны вам за тесты. Хотя лично я в процессе проверки никаких отклонений не обнаружил.
Более детальную информацию можно прочитать в теме о разработке мода: Шифрование паролей в передаваемых формах

Скачать МОД:
encrypt_passwords_v_1_0_7.zip
(257.56 КБ) Скачиваний: 1768

В архиве находится инструкция в формате MODX, плюс русские и английские пояснения к установке (язык выбирается с помощью формы "Select language" в правом верхнем углу инструкции). Может ставиться вручную, либо с помощью Automod.
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

maco8024
Сообщения: 22
Зарегистрирован: 04.12.13 16:55

maco8024 » 04.12.13 17:03

Приветствую, установил данный мод, через некоторое время в дебаге вылезли вот такие ошибки:

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


Файл: [ROOT]/includes/hooks/hook_encrypt_passwords.php
Строка: 34

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

[PHP Warning]

require_once(./includes/encrypt_passwords/phpseclib/Crypt/RSA.php) [require-once-function.require-once]: failed to open stream: No such file or directory

В основном от ботов и от гостей.Файл ошибки один и тот же только на разных страницах.

Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 04.12.13 22:58

Данная ошибка означает, что требуемый для работы мода файл не найден. Проверьте наличие файла includes/encrypt_passwords/phpseclib/Crypt/RSA.php по указанному адресу. Если файл присутствует, попробуйте сделать следующее:
Найти в hook_encrypt_passwords.php:

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

global $template, $db;

Заменить на:

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

global $template, $db, $phpbb_root_path;

Далее заменить все вхождения $path на $phpbb_root_path и очистить кеш
Не проверялось.
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

maco8024
Сообщения: 22
Зарегистрирован: 04.12.13 16:55

maco8024 » 05.12.13 07:53

Да, это все сделал - ничего не изменилось.
Забыл еще сказать, что сейчас ошибка только в одном файле на стр.

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

Страница: gallery/index.php
Файл: [ROOT]/includes/hooks/hook_encrypt_passwords.php
Строка: 34

А когда входишь на главную gallery/index.php белая страница и светится вот такая ошибка

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

Fatal error: require_once() [function.require]: Failed opening required './includes/encrypt_passwords/phpseclib/Crypt/RSA.php' (include_path='.:/opt/php5.3/lib/php') in /home/m/maco8024/forum.vgorahaltaya.ru/public_html/includes/hooks/hook_encrypt_passwords.php on line 34

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 05.12.13 08:42

maco8024, это из-за галереи, у неё текущий путь отличается от корневого phpbb. В выходные поправлю.

Чтобы сейчас не лезла ошибка, в файле hook_encrypt_passwords.php найдите:

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

		$path = defined('ADMIN_START') ? './../' : './';
и добавьте ПОСЛЕ проверку:

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

		if(!file_exists($path . 'includes/encrypt_passwords/phpseclib/Crypt/RSA.php')) return;
Это отключит мод для всех случаев, когда не тот путь...

maco8024
Сообщения: 22
Зарегистрирован: 04.12.13 16:55

maco8024 » 05.12.13 10:24

c61
Воот! теперь все ок, применил правки от Shredder
и от вас . :)

Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 05.12.13 10:48

maco8024 писал(а):сейчас ошибка только в одном файле на стр.

А раньше в разных что ли была?
Спрашиваю, чтобы понять, понадобилась моя правка или нет. Если да, то это тоже нужно будет в моде исправить.
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

maco8024
Сообщения: 22
Зарегистрирован: 04.12.13 16:55

maco8024 » 05.12.13 11:56

Shredder писал(а):А раньше в разных что ли была?

У меня стоял ненужный мод "липовой админки" (его удалил уже), в нем была ошибка и в галереи - больше ошибок небыло.
Что б ясней, приложу сюда файл hook_encrypt_passwords.php там все правки - ошибок больше - нет.
hook_encrypt_passwords.rar
(1.51 КБ) Скачиваний: 967


Спасибо! :)

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 08.12.13 12:16

Думаю, достаточно той правки, что приводил. А насчет $phpbb_root_path - могут быть всякие приколы, когда путь к скрипту не совпадает с путём к "штатным" скриптам конференции. Кроме того, в галерее нет работы с паролями, и шифрование не требуется. Хук заточен конкретно под админку и скрипты из корня, моды учитывать не стоит, имхо.

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 15.03.14 18:05

Выпущена версия 1.0.3. Изменения:
  • обновлена библиотека phpseclib
  • добавлена возможность выдачи отладочной информации о времени выполнения
  • добавлена возможность использования ключей 512 бит
  • небольшие улучшения по части безопасности

После проверки можно сделать modx...

Тема там же http://c61.no-ip.org/forum/viewtopic.php?f=11&t=58

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 16.03.14 23:18

Выпущена версия 1.0.4. Исправления в инструкции установки: были ошибочно заменены на

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

[b]1)[/b]
в трёх местах.

Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 17.03.14 04:02

Потестировал новую версию мода, никаких отклонений мной замечено не было. Архив в первом сообщении обновил.

Добавлено спустя 16 минут 35 секунд:
Поставил сюда новую версию, и у меня тоже случился fatal error :lol:



Надо всё-таки как-то продумать, чтобы подключалось во всех случаях, либо наоборот - не подключалось, если не может найти файл. Мне больше нравится первый вариант)

Добавлено спустя 25 минут 11 секунд:
Также был обнаружен странный баг с отображением отладочной информации: вопреки описанию мода, она отображается даже при выключенном DEBUG в config.php :D Посмотрел в код, но так и не понял, в чём дело. Если вынести проверку if (isset($template->_rootref['DEBUG_OUTPUT'])) за пределы функции do_encrypt_passwords_debug - всё работает как положено. Если оставить внутри - нет. Похоже на какой-то очередной баг системы хуков phpBB.
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 17.03.14 07:59

Shredder писал(а):...у меня тоже случился fatal error

По-простому можно так:

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

		$path = defined('ADMIN_START') ? './../' : './';

		// Поиск phpseclib
		if (!file_exists($path . 'includes/encrypt_passwords/phpseclib/Crypt/RSA.php')) return;

		$encrypt_passwords = new ENCRYPT_PASSWORDS();

		// Генерируем пару ключей RSA
		include_once($path . 'includes/encrypt_passwords/phpseclib/Crypt/RSA.php');
include_once вместо require_once, с этим require_once случаются проблемы.
Хотя есть возможность вычислить абсолютный путь.
Shredder писал(а):....был обнаружен странный баг с отображением отладочной информации...
Похоже на какой-то очередной баг системы хуков phpBB
Похоже на особенности вложений классов в php... Непонятно.

Shredder
Администратор
Сообщения: 1066
Зарегистрирован: 22.08.13 09:05

Shredder » 18.03.14 03:15

Обнаружил следующую проблему при установленном моде "Prime Quick Login", который добавляет форму входа в верхней части форума на все страницы: при вводе учётных данных в любую из нижележащих форм для входа, невозможно зарегистрироваться или войти на форум.
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

Аватара пользователя
c61
Разработчик модов
Сообщения: 249
Зарегистрирован: 24.08.13 16:46

c61 » 19.03.14 20:42

Shredder писал(а):странный баг с отображением отладочной информации
Эта бяка у меня во всех хуках)) Вместо проверки на define('DEBUG') проверяю $template->_rootref['DEBUG_OUTPUT'], который всегда определён))
Shredder писал(а):Обнаружил следующую проблему при установленном моде "Prime Quick Login"...
Однако, несколько форм с вводом пароля не предполагал... Доделал.

Выпущена версия 1.0.5. Изменения:
  • Исправлена ошибка с возможным fatal error, если не обнаружен файл RSA.php
  • Исправлена ошибка с выдачей отладочной информации
  • Исправлена несовместимость с модом Prime Quick Login и наличием на странице нескольких форм с вводом пароля (ограничение мода: не более 4 тэгов input с тиопм password на странице)

Ответить