Перейти к содержанию
Yoda

Критичное устранение уязвимостей магазинов

Рекомендуемые сообщения

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

С теми, у кого у меня есть прямая связь, в частном порядке мы закрываем эти дыры с уведомлением покупателей. 
Но со многими я просто физически не могу связаться, так как они отказываются идти на контакт.

 

Поэтому давайте сделаем наши магазины безопаснее вместе.

 

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

 

https://perishablepress.com/6g/

Для продвинутых пользователей, там все достаточно ясно-понятно. Для новичков, я бы рекомендовал добавить в .htaccess  хотя бы это:

<IfModule mod_rewrite.c>
    RewriteCond %{QUERY_STRING} (eval\() [NC,OR]
    RewriteCond %{QUERY_STRING} (javascript:)(.*)(;) [NC,OR]
    RewriteCond %{QUERY_STRING} (base64_encode)(.*)(\() [NC,OR]
    RewriteCond %{QUERY_STRING} (GLOBALS|REQUEST)(=|\[|%) [NC,OR]
    RewriteCond %{QUERY_STRING} (<|%3C)(.*)script(.*)(>|%3) [NC,OR]
    RewriteCond %{QUERY_STRING} (\\|\.\.\.|\.\./|~|`|<|>|\|) [NC,OR]
    RewriteCond %{QUERY_STRING} (boot\.ini|etc/passwd|self/environ) [NC,OR]
    RewriteCond %{QUERY_STRING} (\'|\")(.*)(drop|insert|md5|select|union) [NC]
    RewriteRule .* - [F]
</IfModule>

Встраивать эту конструкцию необходимо после строки  

RewriteEngine On

После добавления, рекомендую запустить Xenu's

И проверить доступность всех ссылок вашего магазина.

Если появятся страницы с кодом 404 или 500, проведите анализ и удалите исключения из списка, которые мешают нормальному отображению страниц.

Изменено пользователем Yoda
  • +1 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дыры, Дыры, сегодня кто то продавал мою базу :-D

https://xxx.ru/?utm_source=xxx.ru-%D0%9F%D0%A0%D0%9E%D0%94%D0%90%D0%96%D0%90-%D0%91%D0%90%D0%97%D0%AB-%D0%A1%D0%90%D0%99%D0%A2%D0%90&utm_term=xxx.ru-%D0%9F%D0%A0%D0%9E%D0%94%D0%90%D0%96%D0%90-%D0%91%D0%90%D0%97%D0%AB-%D0%A1%D0%90%D0%99%D0%A2%D0%90 

 

 

 

http://www.google.ru/search?q=

 

ПРОДАМ-БАЗУ-САЙТ
А-xxxx.ru

 

приплыли, это ппц господа. 8-)

Изменено пользователем vasilev86

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ещё один "безопасник", меньше говнокода писать и кубить... и модерировать что в магазин ставить, а не шаблоны проверять, нынче бизнес какой ?

с3.14здил - заионкубил - продавай... а что внутри ? а какая разница, работает )

 

p.s. вспомнилось из прошлой жЫзни, когда уважаемый человек вопрос задал:

 

а можно ли сделать SQL inject сквозь real_escape_string ?

взломать можно всё, вопрос резона )

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

с3.14здил - заионкубил - продавай... а что внутри ? а какая разница, работает )

 

:-D

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а уязвимость то какая была в шаблонах ? 

Пошла тенденция брать забугорное и пихать в шаблон без просмотра что там внутри 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а уязвимость то какая была в шаблонах ? 

Пошла тенденция брать забугорное и пихать в шаблон без просмотра что там внутри 

 

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

Вроде бы актив форума я собрал для выработки решения по вопросу. А вот что с этим делать - так никто и не понимает.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос такой - есть ли эти дыры в дефолтном шаблоне?

Относится ли данная проблема только к шаблонам или к модулям тоже?

Изменено пользователем chamaerops

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос такой - есть ли эти дыры в дефолтном шаблоне?

Относится ли данная проблема только к шаблонам или к модулям тоже?

1 - нет

2 - нет информации.

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вроде бы актив форума я собрал для выработки решения по вопросу. А вот что с этим делать - так никто и не понимает.

 

Ну тут все просто, писать авторам, если не будут приняты меры - тогда брать "дробовик и срывать бошки"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

:) Это не только в безопасности проблемы

Там в SEO вообще полный 3.14, 3.14, 3.14

А все от того что авторы тем по тупому копируют код "бесплатных" модулей где ошибок просто немеряно

К примеру "быстрый просмотр" товаров...

Открываем любую тему (да, да ребята - у всех (99%) там одна большая проблема) и что видим... дубли контента продуктов по разным URL, причем у "быстрого просмотра" без canonical понятное дело.

Как итог - выпадание страниц из индексов ПС, пессимизация контента  и все связанное с этим.

Это я только по "быстрому просмотру" прошелся сейчас. А если детально - все гораздо хуже.

Вообще авторы тем... что за глупость фаршировать темы "бесплатными" модулями, которые в 90% не нужны а в 99% вредны?

 

Вы не можете сделать, отдельно платную тему (с ценой ниже) и отдельно к ней service pack платный (с набором адаптированных под тему модулей)? Кому надо пусть берут sp, кому не надо чистую тему без говнокода "бесплатных" говноподелок

Мухи отдельно, котлеты отдельно

Да и вам легче будет темы обновлять! Да и заработаете больше :?
И не будет проблем ни с SEO ни с безопасностью

Зачем пользователей "принуждать" к проблемам ?

 

Сейчас авторов тем делю на три группы

1. Когда им сообщаешь о проблемах и они со словами благодарности исправляют код (им респект)

2. Когда тебя почти "посылают", как будто ты им в борщ плюнул. (без комментариев)

3. Это когда говорят "спасибо" и ничего не исправляют, а когда напоминаешь - они мотивируют тем, что "тот модуль" не они делали и пиши автору (бред полный :roll: )..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Провел эксперимент... правда не на форуме, пожалел авторов. Тем у кого на форуме я обнаруживаю пробои безопасности  я отписываюсь авторам.

А вот в официальном каталоге дополнений...

... на opencart.com взял самые популярные модули отзывов (с кучей продаж) с загрузкой изображений и ВСЕМ влил php бомбу, без всяких проблем. Ну что еще сказать..

О результатах отписался Yoda

Все ссылки на "бомбы" отправил ему

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос по безопасности, напрямую не связанный с Опенкарт. Скорее это вопрос по безопасности сервера как такового.

 

Нередко видел (на проектах, доставшихся для доработки), что  все папки/файлы имеют права 777.  Ну работает ведь магазин.

 

На мой взгляд, при возможности, папок/файлов с правами 777 быть вообще не должно. Достаточно 755 в случае апаче, работающего от имени пользователя.

 

Если вы решили использовать VPS/VDS,  то смысла в использовании прав 777 нет.  максимум 755. Правильно настроенный новый сервер (VPS/VDS) не требует для работы Опенкарт прав 777. Про общий хостинг речь не идет.

 

Даже если "из коробки" сервер VPS/VDS требует прав 777 для работы Опенкарт, то стоит настроить сервер таким образом чтобы это требование не было актуальным.

 

Но кто придерживается этого правила?

И есть ли смысл делать акцент на этом правиле?

При общих равных условиях максимальные права 755 всегда делают сервер более безопасным чем использование 777.

 

разве я не прав?

насколько существенен данный фактор по вашему мнению?

 

в общем, это должно хорошо работать в совокупности с правилами вида:

 

"отключить вывод всех ошибок",

"отключить phpinfo",

"отключить eval"

и т. п.

Изменено пользователем sitecreator

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
....

 

разве я не прав?

насколько существенен данный фактор по вашему мнению?

 

в общем, это должно хорошо работать в совокупности с правилами вида:

 

"отключить вывод всех ошибок",

"отключить phpinfo",

"отключить eval"

и т. п.

 

Это вопрос с проблемами безопасности гМОДУЛЕЙ и гТЕМ.

С opencart все в порядке :)

 

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"отключить eval"

 

 

И у всех перестанет работать их любимый Mega Filter PRO PLUS :ugeek: :-D

И другие "любимые" тоже

И вы "ведьме" не докажите что eval это плохо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ashap тоже eval использует

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...тоже eval использует

Ну, он то может изменить код быстро. Не думаю что это проблема. А вот "ведьме" не докажешь. Она упрямая :ugeek:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

не, ну это пипец какой то.... то заионкубируют лажу полную. то eval без всякой на то необходимости...

 

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

 

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

 

eval - это ведь дыра немеряных размеров.  Вот зачем намеренно ухудшать безопасность?  Чтобы защитить свой модуль, но при этом понизить защищенность сайта, читай - бизнеса заказчика?

 


А вот "ведьме" не докажешь.

 

А это кто?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А это кто?

Авторша Mega Filter Pro

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

короч народ
запасаемся вазелином
ведрами

авторша?
я думал это оно...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

интересно то, что на 2.*  безопасность оказывается ниже чем на 1.5 благодаря "защищенным" модулям?

 

Если раньше авторы модулей для 1.5 не использовали ни eval, ни ioncube, то эти же самые авторы для 2.* используют эту самую гадость, причем ухитряются еще и, нередко, комбинировано (eval + ioncube) это делать....

Изменено пользователем sitecreator

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поэтому давайте сделаем наши магазины безопаснее вместе.

...

... Для новичков, я бы рекомендовал добавить в .htaccess  хотя бы это:

<IfModule mod_rewrite.c>
    RewriteCond %{QUERY_STRING} (eval\() [NC,OR]
    RewriteCond %{QUERY_STRING} (javascript:)(.*)(;) [NC,OR]
    RewriteCond %{QUERY_STRING} (base64_encode)(.*)(\() [NC,OR]
    RewriteCond %{QUERY_STRING} (GLOBALS|REQUEST)(=|\[|%) [NC,OR]
    RewriteCond %{QUERY_STRING} (<|%3C)(.*)script(.*)(>|%3) [NC,OR]
    RewriteCond %{QUERY_STRING} (\\|\.\.\.|\.\./|~|`|<|>|\|) [NC,OR]
    RewriteCond %{QUERY_STRING} (boot\.ini|etc/passwd|self/environ) [NC,OR]
    RewriteCond %{QUERY_STRING} (\'|\")(.*)(drop|insert|md5|select|union) [NC]
    RewriteRule .* - [F]
</IfModule>

Встраивать эту конструкцию необходимо после строки  

RewriteEngine On

После добавления, рекомендую запустить Xenu's

И проверить доступность всех ссылок вашего магазина.

Если появятся страницы с кодом 404 или 500, проведите анализ и удалите исключения из списка, которые мешают нормальному отображению страниц.

Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От shoputils
      Скачать/Купить дополнение


      Антиспам формы обратной связи
      О модуле Shoputils.Antispam.Contact 1.5.x - 2.x - 3.x - v1.0 (Антиспам формы обратной связи):
       
      Дополнение позволяет отсечь спам через форму обратной связи, который в Опенкарте стал массовым явлением.
      Если запрос через обратную связь модуль идентифицирует как спам - злоумышленник будет послан на error/not_found.
      При этом в журнал модуля запишется какие запросы отправлялись на сервер, если это включено в настройках модуля.
       
      Совместимость: все версии Opencart/ocStore 1.5.x - 2.x - 3.x (1.5.x, 2.0.x, 2.1.x, 2.2.x, 2.3.x, 3.0.x, 3.1.x)
      Для 1.5 и 3.0 дополнение будет выпущено позже.
       
       
      Системные требования
      - Opencart/ocStore 1.5.x - 2.x - 3.x
       
      Установка модуля
      Информацию по установке модуля читайте в инструкции к модулю в файле README.TXT дистрибутива вашей версии.
       

      Лицензия
      - Модуль имеет принцип распространения "as is" ("как есть").
      - Изменение функционала модуля ("допиливание" модуля под индивидуальные нужды) может быть оказано на платной основе.
       
       
       
      Добавил shoputils Добавлено 30.03.2018 Категория Инструменты, утилиты Системные требования Сайт разработчика https://opencart.market Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
    • От shoputils
      О модуле Shoputils.Antispam.Contact 1.5.x - 2.x - 3.x - v1.0 (Антиспам формы обратной связи):
       
      Дополнение позволяет отсечь спам через форму обратной связи, который в Опенкарте стал массовым явлением.
      Если запрос через обратную связь модуль идентифицирует как спам - злоумышленник будет послан на error/not_found.
      При этом в журнал модуля запишется какие запросы отправлялись на сервер, если это включено в настройках модуля.
       
      Совместимость: все версии Opencart/ocStore 1.5.x - 2.x - 3.x (1.5.x, 2.0.x, 2.1.x, 2.2.x, 2.3.x, 3.0.x, 3.1.x)
      Для 1.5 и 3.0 дополнение будет выпущено позже.
       
       
      Системные требования
      - Opencart/ocStore 1.5.x - 2.x - 3.x
       
      Установка модуля
      Информацию по установке модуля читайте в инструкции к модулю в файле README.TXT дистрибутива вашей версии.
       

      Лицензия
      - Модуль имеет принцип распространения "as is" ("как есть").
      - Изменение функционала модуля ("допиливание" модуля под индивидуальные нужды) может быть оказано на платной основе.
       
       
       
    • От mirek
      498.00 руб
      Скачать/Купить дополнение


      Двух факторная Google авторизация для админ панели
      Модуль позволяет обезопасить ваш интернет-магазин на базе OpenCart 2.х от не санкционированного доступа Обеспечивает надежную защиту административной части магазина. Даже в том случае если злоумышленник получил логин и пароль от админ панели Вашего магазина  - он не сможет войти! Модуль активирует вход в админ панель магазина используя двух факторную Google авторизацию!

       
      Коды доступа меняются с интервалом в 30 секунд!
       
      Для использования двух факторной Google авторизации Вам необходимо также скачать и установить на свое мобильное устройство
      приложение Google Authenticator!  Коды доступа генерируются в приложении Google Authenticator Их необходимо вводить в форму авторизации
      на Вашем сайте

      Приложение Google Authenticator Вы можете найти и скачать в Play Market на своем мобильном устройстве!

      Внимание! При использовании двух факторной Google авторизации имейте ввиду возможную рассинхронизацию времени 
      между времененм на хостинге на котором работает Ваш сайт и временем на мобильном устройстве которое Вы используете
      для получения кодов для прохождения двух факторной Google авторизации

      Код полученный на Вашем устройстве подходит только в то время которое показывает Ваше мобильное устройство! 
       
      Лицензия:
      Модуль продается с лицензией на один сайт, одна покупка = один домен Покупая копию модуля вы получаете право только на использование. Распространяя модуль платно или бесплатно вы нарушает лицензию - это грозит обнулением покупки, а так же уголовной ответственность предусмотренной статей 146 УК РФ (Нарушение авторских и смежных прав)  Автор оставляет за собой право изменят условия предоставления лицензии, цену и строк продления дополнения. Все доработки и изменения функционала не входят в стоимость и оплачиваются отдельно. Модуль официально продается только через площадку opencartforum, другое получения дополнения считается не легальным.
       Тип распространения:
      as is (как есть)  
      Установка:
      Для установки модуля users2fa Вам необходимо в административной панели Вашего сайта в Разделе Дополнения -> Установка дополнений
      загрузить zip архив с модулем После того как модуль установится можно перейти в подраздел Дополнения -> Менеджер дополнений и обновить кеш (иконка в правом верхнем углу) После установки в настройках пользователей админ панели появится пункт "Использовать 2fa google авторизацию" Добавил mirek Добавлено 02.04.2018 Категория Модули Системные требования Сайт разработчика http://hgroup.pp.ua Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось  
    • От Sha
      Скачать/Купить дополнение


      Защита от взлома Ftp protection against hacking
      Хранить учётные данные в базе данных не безопасно,
      если Вы устанавливаете любую наработку через "Установщик дополнений (Extension Installer)"
      лучше потом удалить свои настройки Ftp из настроек магазина.
      А так-же можно воспользоваться этой небольшой наработкой,
      которая даёт возможность Вам использовать свои логин и пароль только в момент установки дополнения, что является намного более безопасным!
       
      модуль тестировался на OpenCart/ocStore 2.3.x.x
       
      ПРОСТАЯ УСТАНОВКА:
      Стандартными средствами OpenCart:
      1) Загружаем файл ocmod "Дополнения" -> "Установка дополнений".
      2) Заходим "Дополнения" -> "Менеджер дополнений" нажимаем кнопку "Обновить".
      или копируем файл в корень папки [system]
       
      ОБНОВЛЕНИЕ:
      С помощью стандартного функционала OpenCart:
      1) Удалить модуль в "Дополнения" -> "Менеджер дополнений".
      2) Повторить все действия пункта "Установка".
      или копируем файл в корень папки [system] с заменой, поверх старой версии.
       
      ВАЖНО:
      Разработчик НЕ ГАРАНТИРУЕТ отсутствия ошибок, которые могут нарушить работу компьютера и/или сайта и/или привести к потере данных.
      Также, если в код магазина было внесено много изменений, то работоспособность модуля может быть нарушена.
      Перед установкой, рекомендуем, делать необходимые бекапы!!!

      ЛИЦЕНЗИЯ:
      - Модуль распространяется по принципу "как есть"
       
      ТЕХНИЧЕСКАЯ ПОДДЕРЖКА:
      Техническая поддержка не осуществляется. На возникшие вопросы ответ по мере поступления свободного времени.
      Добавил Sha Добавлено 28.03.2017 Категория Прочее Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore 2.3 OpenCart.Pro, ocShop  
    • От NNA
      Скачать/Купить дополнение


      Show Password (Показать-скрыть пароль) для OC 2.x
      Отображает и снова прячет пароли на страницах регистрации, авторизации и изменения пароля.
      Давно известно, что на самом деле толком не повышающая безопасности мода прятать вводимые символы под "звёздочками" приводит к потере клиентов в е-коммерции из-за целого ряда неудобств, среди которых:
      Нет контроля набора букв, особенно новых и сложных паролей. Ошибки, отрицательные эмоции. В случае несовпадения паролей в полях невозможно определить, какое из них содержит ошибку, а какое - верный пароль. Невозможно элементарно скопировать набранный пароль для сохранения в любимый блокнот\контейнер\etc. Ну и так далее. Столкнулся с полным отсутствием решения этой давно наболевшей проблемы для пользователей. Дарю сообществу, пусть приносит пользу (и расширение, и сообщество ).
      Должно работать на:
      любых грамотных шаблонах, использующих стандартный вывод ошибок при вводе пароля. Проверено на нескольких имеющихся. любой версии OC2 со стандартным шаблоном. Проверено от 2.2.х. В случае несовместимости шаблона - правки минимальны, но по просьбе могу внести в публикуемый код.
      Тестирование (и сообщения о работоспособности) на OCStore и других сборках также привествуются.
      Плюсы:
      Не требует загрузки файлов (значит, и нет потенциальных проблем с ftp). Не требует JQuery. Минимизированный код (не сжатый! т.е. без потери удобства чтения-правок). Известные минусы: не обнаружено.
      Установка:
      Распаковать zip-архив! Установочный файл - xml из архива. Установить через стандартное меню (либо скопировать в папку /system/ сайта) В обоих случаях обновить кэш модификаторов. Добавил NNA Добавлено 10.01.2017 Категория Прочее Системные требования Исправный OCMOD Метод активации Без активации Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось  
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×