SELECT * FROM Vzakladke.net

Статьи об автоматизации и программировании

17.04.2015 01:59

Отлавливаем в POST запросах наличие sql-inject на PHP

Поиск SQL injection

Как Вы уже поняли, инъекция появляется из входящих данных, которые не фильтруются. Самая распространенная ошибка — это не фильтрация передаваемого ID. Ну грубо говоря подставлять во все поля кавычки. Будь это GET/POST запрос и даже Cookie!

Внедрение SQL-кода (англ. SQL injection) — один из распространённых способов взлома сайтов и программ, работающих с базами данных, основанный на внедрении в запрос произвольного SQL-кода.

Внедрение инъекций, в зависимости от типа используемой СУБД и условий внедрения, может дать возможность атакующему выполнить произвольный запрос к базе данных (например, прочитать содержимое любых таблиц, удалить, изменить или добавить данные), получить возможность чтения и/или записи локальных файлов и выполнения произвольных команд на атакуемом сервере.

Атака типа внедрения SQL может быть возможна из-за некорректной обработки входных данных, используемых в SQL-запросах - если не экранировать входящие данные (например используя функцию escape для строковых значений или intval для целочисленных значений).

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

Подробнее


17.04.2015 00:32

Отправка почты с помощью PHP и Ajax

Вашему вниманию представляю легкий, простой и полностью настраиваемый метод отправки почты на PHP. Для того, чтобы не перезагружать страницу во время отправки, будем использовать Ajax. Этот способ отлично подойдет для одностраничных и простых сайтов.

 

HTML


Итак, приступаем. В качестве примера рассмотрим самую банальную форму заказа звонка. Форма будет содержать всего два поля номер и телефон. 

Для начала напишем простую форму отправки на HTML:
 

<form id="form">
    <input type="text" name="name" required="required"/>
    <input type="text" name="phone" required="required"/>
    <input type="submit" value="Заказать звонок"/>
</form>

Для обязательных полей указываем:  required="required"

 

Подробнее


17.04.2015 00:12

Функции Mysqli

Функция Mysqli_close

Функция Mysqli_close закрывает ранее открытое соединение с базой данных.

 
 
 

Функция Mysqli_real_escape_string

Функция Mysqli_real_escape_string экранирует специальные символы в строке для использования в SQL выражении, используя текущий набор символов соединения.

Подробнее


14.04.2015 01:41

ORM в Kohana

ORM

Одним из самых важных модулей Kohana является ORM, неотъемлемая часть любого серьезного фреймворка. ORM позволяет представить работу с базой данных как взаимодействие объектов, выкидывая из кода большинство операций чтения, удаления, создания и изменения данных.

 

ORM в Kohana

Реализация ORM в Kohana позволяет представить запись из базы данных в виде экземпляра объекта, который имеет различные методы взаимодействия, такие как изменение, сохранение, удаление и некоторые другие. Помимо того, с помощью незагруженного (пустого) экземпляра объекта может производится поиск (загрузка) одной или нескольких записей. Каждый объект представляется в виде PHP-класса, унаследованного от класса ORM и должен располагаться в папкеclasses/model/.

Подробнее


13.04.2015 23:59

Авторизация пользователей

АВТОРИЗАЦИЯ

Авторизация пользователей является нередкой задачей при построении приложения. Kohana реализует ее через встроенный модуль Auth. Этот модуль работает по системе «драйверов», вы можете выбрать, каким методом производить авторизацию (по умолчанию Kohana предоставляет файловую авторизацию и драйвер ORM). Помимо этого, возможно написать свой собственный драйвер.

 

Конфигурация

Файл конфигурации по умолчанию находится в config/auth.php в соответствии со структурой файловой системы. Для настройки доступны следующий параметры:

  • driver — Название драйвера аутентификации, по умолчанию это file.

  • hash_method — Хеш-функция для паролей, по умолчанию это sha256.

  • hash_key — Ключ, используемый при хэшировании пароля, по умолчанию он не указан и рекомендуется установить его в произвольное целое число.

  • session_type — Тип сессии для хранения авторизации пользователя, по умолчанию это стандартная сессия для приложения (Session::$default).

  • session_key — Имя переменной сессии для хранения авторизации пользователя, по умолчанию auth_user.

    Подробнее


<< 1 2 3 4 5 Вперед >>