Перейти к содержанию
Форум поддержки пользователей VamShop

Проверить

   (0 отзывов)

support
  • Статус: Closed

Здравствуйте.

Я один из ваших бывших лицензированных клиентов и периодически консультирую людей по вопросам производительности и безопасности.
Недавно ко мне обратился клиент с просьбой расследовать почему тормозит сервер.

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


Обнаружилось, что  используется сканер уязвимостей и он нашел старую не до конца закрытую уязвимость в vamshop 1. Судя по коду, который я нашел на github, в текущих версиях так же не исправлено. (Если конечно этот код актуальный)
Уже была одна проблема связанная с /shopping_cart.php http://cxsecurity.com/issue/WLB-2012100215, однако теперь наблюдается то же самое в частях где запросы были просто скопированы
речь идет о
templates/vamshop2/source/boxes/shopping_cart.php:
includes/classes/order.php:          


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

 

Так же были использованы подобные же проблемы в файле includes/classes/vam_price.php в функции  function GetOptionPrice($pID, $option, $value) .

Еще один тип запросов связан с обновлением IP-адреса клиента  и тоже в основном коде нет обновлений.
обновление обычно происходит в  inc/vam_update_whos_online.inc.php
update whos_online set customer_id = '0', full_name = 'Посетитель', ip_address = 'if(now()=sysdate(),sleep(34.884),0)/*'XOR(if(now()=sysdate(),sleep(34.884),0))OR'"XOR(if(now()=sysdate(),sl
Это происходит на совершенно разнообразных страницах.
Злоумышленник отправляет строки в заголовке X-Forwarder-For, где обычно только IP-адрес числовой.
Так что я добавил в файл inc/vam_get_ip_address.inc.php простую фильтрацию значений - удаление всех знаков кроме [\d,.]+

 

Если эта информация помогла вам, я приму любую доступную вам помощь в виде каких-нибудь лицензий на продукты :)


Обратная связь


×
×
  • Создать...