четверг, 16 апреля 2015 г.

XC4: контрибьютерам X-Cart насчет безопасности

*подозрительно относиться к операциям обратным к операциям экранирования из prepare.php
stripslahes / func_unhtml / unhtmlentities / unhtml_entitity

*подозрительно относиться к переменным которые проходят двойную конвертацию
например urldecode может выдать SQL-инъекцию даже после прохождения prepare.php

*подозрительно относиться к trusted переменным

*лучше использовать ограниченные белые списки допустимых значений для переменной
пример
$orderby = (!in_array($orderby, array('login', 'name', 'usertype'))) ? 'login' : $orderby;

*не забывать делать escape в шаблонах

*максимально жестко ограничивать всю логику, которая расширяет права пользователя. Или вообще лучше не изменять переменные которые расширят права типа current_area / login/ logged_userid / login_type / identifiers

*делать проверки не хуже чем из login.php при альтернативных логинах. Или лучше полностью задействовать логику из login.php
аналогично для register.php

*не забывать про подключение
include/admin_security.php
include/security.php

Комментариев нет:

Отправить комментарий