Автор: kaliostro
Версия движка DLE: 9.x — 10.x
Описание:
Представляем вашему вниманию хак, который пригодится тем кто использует модуль HIDE. Он позволяет шифровать номера прикрепленных файлов на сайте, чтобы избежать их слива.
Особенности:
+ поддерживает старые аттачи
+ не требует внесения изменений в БД
+ установка в 3 действия
+ подойдёт для версий ДЛЕ с 9.0 и выше
Установка:
Открываем файл engine/modules/functions.php, находим строку в функции show_attach:
$find_1[] = '[attachment=' . $row['id'] . ']';
$find_2[] = "#\[attachment={$row['id']}:(.+?)\]#i";
Ниже вставляем:
$row['id'] = urlencode(base64_encode($row['id']) . md5($row['id'] . DBHOST . DBNAME));
Открываем файл engine/download.php, находим строку:
$id = intval ( $_REQUEST['id'] );
И заменяем ее на:
$id = intval(base64_decode(substr($_REQUEST['id'], 0, -32)));
if (md5($id . DBHOST . DBNAME) != substr($_REQUEST['id'], -32))
{
die ( "link protected!" );
}