Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #59, НОЯБРЬ 2003 г.

Дадим отпор грубой силе!

Докучаев Дмитрий aka Forb

Xakep, номер #059, стр. 059-062-4


Для проверки параметров формы вовсе не обязательно использовать внешние файлы с процедурами, типа ReadParse. Достаточно подключить модуль CGI, чтобы затем вызвать функцию param() для определения значений формы. К примеру, чтобы вытащить содержимое из поля number, пришедшего скрипту, достаточно сделать следующее:

#!/usr/bin/perl

use CGI qw(:standard);

$number=param('number');

Удобно? Несомненно! Это лучше, чем изобретать велосипед и писать свои функции для извлечения переменных из формы.

Абсолютная безопасность

На данный момент защита проекта кодовым изображением - самый надежный способ обезопасить себя от хакеров, скрипткидисов, флудеров и прочих сетевых говнючков. Но не стоит окончательно расслабляться. Ведь технологии постоянно развиваются, и, возможно, скоро на паблик выйдет модуль, который сможет анализировать картинку и вытаскивать из нее цифры. Поэтому, чтобы усложнить задачу хакеру, ставь на картинку дополнительный фон и пиши нестандартными шрифтами.

Вот на этой оптимистической ноте я и попрощаюсь с тобой. Желаю, чтобы все твои проекты были защищенными, и тогда ни один хакер не сможет посягнуть на твою виртуальную территорию.

Применение GD-защиты

GD-защита применяется во многих серьезных проектах. Например, эту технологию использует www.e-gold.com. Также защиту кодом можно увидеть на различных смс- или пейджер-гейтах. Делай выводы. Картинки с кодом - это действительно эффективная защита от флуда хакеров.

Другие модули

На странице www.perl.com/CPAN/modules/01modules.index.html ты найдешь множество модулей-примочек для GD. Все они используют базовый GD.pm, но наделены различными функциями. GD-Graph3d, например, умеет рисовать трехмерные изображения. Для некоторых это суперполезный модуль.

Открытие готовых картинок

Чтобы открыть уже готовое изображение, а затем наложить на него дополнительные данные с помощью GD, используй следующий блок кода:

open(JPG, "picture.jpg");

$image = GD::Image->newFromJpeg(JPG, 1);

Цифра 1 указывает здесь на использование true-colors. Без этого параметра твое изображение будет содержать всего лишь 256 цветов.

Инфа о CD

На нашем CD ты найдешь полную версию вышеописанного скрипта (можно взять и отсюда - kamensk.net.ru/forb/1/x/gd.tar.gz). К тому же на компакте лежат все необходимые библиотеки и модули, использующие GD.

В старых версиях можно было использовать и формат gif, но его убрали из-за патента на LZW, который получила компания Unisys.

GD дает огромный выбор возможностей наложения различных геометрических фигур на картинку.

На экране у тебя появится черный квадрат с числом 1000. Поздравляю, ты только что научился выводить динамические картинки! :)

Теперь нам надо связать картинку с HTML-формой. Главное - не вздумай делать hidden поле с номером на картинке.

Назад на стр. 059-062-3  Содержание
<<< НАЗАД ||| ГЛАВНАЯ