[BETA] noMZ - Безусловный запрет исполняемых вложений

Здесь авторы могут постить бета-версии своих модификаций для phpBB 3.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
c61
phpBB 2.0.6
Сообщения: 506
Стаж: 13 лет 9 месяцев
Благодарил (а): 42 раза
Поблагодарили: 251 раз

[BETA] noMZ - Безусловный запрет исполняемых вложений

Сообщение c61 »

Порой возникает необходимость запретить загрузку файлов (независимо от их расширения), которые могут быть исполнены под Windows, то есть содержать сигнатуру MZ. Этот мод тупо анализирует первые два байта любого загружаемого файла и, если находит 'MZ', запрещает загрузку.

Установка:

Редактируем файл includes/function_upload.php.

1) Найти:

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

	/**
	* Check the first 256 bytes for forbidden content
	*/
	function check_content($disallowed_content)
Добавить ПЕРЕД:

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

// noMZ mod begin
	/**
	* Check file content for MZ signature
	*/
	function check_noMZ()
	{
		$fp = @fopen($this->filename, 'rb');
		if ($fp !== false)
		{
			$mz = fread($fp, 3);
			fclose($fp);
			if (stripos($mz, 'MZ') !== false)
			{
				return false;
			}
		}
		return true;
	}
// noMZ mod end

2) Найти:

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

		return ($file->check_content($this->disallowed_content));
ЗАМЕНИТЬ на:

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

// noMZ mod begin
		return ($file->check_content($this->disallowed_content) && $file->check_noMZ());
// noMZ mod end
При попытке закачки файла с сигнатурой MZ пользователь увидит сообщение: Закачка была отклонена, так как вложение было определено как возможная атака.
Аватара пользователя
staiki
phpBB 2.0.2
Сообщения: 318
Стаж: 14 лет 3 месяца
Откуда: Киев Украина
Благодарил (а): 76 раз
Поблагодарили: 9 раз
Забанен: Бессрочно

Re: [BETA] noMZ - Безусловный запрет исполняемых вложений

Сообщение staiki »

Супер.Установили-работает на ура.Рекомендую тем у кого заливаются файлы на ресурс.
http://staiki.net/index.php Форум Компьютерная Помощь
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: [BETA] noMZ - Безусловный запрет исполняемых вложений

Сообщение MIT »

Не всё, что запускается под Виндой, имеет заголовок MZ. Формат COM, например, может начинаться как угодно.

Вернуться в «Бета-версии модов для phpBB 3.0.x»