Читайте новини і аналітику про ритейл та e-commerce в Україні на нашій сторінці в Facebook, на нашому каналі в Telegram, а також підписуйтеся на щотижневу e-mail розсилку.
Какие существуют способы взломать сайт вашего интернет-магазина и как их предотвратить? Колонка проектного менеджера Datami Алины Кульпинской
На одной из конференций, прошедших не так давно, я заметила, что участники с улыбкой воспринимают понятие “кибербезопасность”. Им кажется, что это уж точно не коснется их компании. Но, никто не застрахован от атаки хакеров.
Почему ломают сайты?
Устранить конкурента
Подножка от конкурента в виде временной поломки сайта – неприятный сюрприз. Пока вы будете латать дыры, клиент пойдет за услугой или товаром туда, кто смотрел "под ноги" и обезопасил свой сайт от мошенников.
Продажа базы клиентов
То, что для вас основной источник прибыли – для мошенника способ быстро заработать. Получив доступ к контактам клиентов хакер может спокойно ее присвоить и продать за небольшую сумму вашим конкурентам.
Вам не повезло
Если вы думаете, что ваш сайт не привлекателен для хакера, ведь "там нечего красть, да и трафик невысокий" – ваш сайт может стать площадкой для начинающих кибер-преступников.
Платежные данные
Если ваш сайт предусматривает оплату товара или услуги онлайн, то он автоматически становится мишенью для хакера. При наличии открытых портов вполне реально украсть платежные данные ваших клиентов.
Ты туда не ходи, ты сюда ходи
Ваш сайт может стать отличным батутом для отправки клиента на другой ресурс. Или он попадет на сайт конкурента, или, что еще хуже – на сайты, содержащие неприемлемый контент.
Как можно взломать сайт
DOS/DDOS атаки
Сайт интернет-магазина подразумевает посещение огромного количества пользователей и запросов от них ежедневно. Задача системного администратора правильно распределить трафик чтобы сервер не накрылся и сайт не упал. Ведь день простоя может стоить владельцу от нескольких десятков тысяч гривен.
Подобную ситуацию можно создать намеренно, например, в сезон распродаж или праздников. Схема проста: создать условия, при которых сервер сайта не выдержит нагрузки. DOS атака предусматривает большое количество запросов с одного IP-адреса. Скорее всего, ваш Firewall заблокирует подобные манипуляции. В случае с DDOS отправляется аномально большое количество запросов с нескольких IP-адресов, что Firewall может распознать не как атаку, а как запросы от пользователей, с которыми он будет пытаться справиться. Но здесь логика очевидна: если сайт способен пропускать 100Мбит/с – то с трафиком в 1Гбит/с он просто не справится.
SQL-инъекции
Если совсем просто, sql-инъекция – это атака на базу данных с целью получить выгоду. На любом сайте есть контактные формы, куда пользователь вводит свои данные – это могут быть персональные данные в виде телефона, e-mail и имени, иногда – данные своей банковской карты или документа (паспорта, идентификационного кода).
Как работает sql-инъекция?
Данные, которые вводятся пользователем отправляются на сервер, где хранится база данных. Хакеру достаточно найти незащищенную контактную форму, чтобы внедрить туда кусочек кода, которая изменит логику возврата запроса. Таким образом он перехватит данные, которые ввелись вашим пользователем. Для чего нужны эти данные? Например, список с контактными данными можно выгодно продать вашим конкурентам. Они, в свою очередь, могут сделать рассылку с условиями акции, например. Таким образом, ваши потенциальные клиенты станут реальными клиентами вашего конкурента.
Если перехватываются данные вашей банковской карты – останется подобрать пароль для входа в ваш интернет-банкинг при помощи брутфорса. Ну и третий шаг, обнаружение необходимых данных для входа под видом администратора.
Бэкдор (backdoor)
В июле этого года к нам обратился клиент для проведения пентеста своего интернет-магазина. Мы обнаружили очень неожиданную для владельца уязвимость, которая могла “открыть дверь” хакеру к серверу.
Часто интернет-магазины предлагают свои клиентам зарегистрироваться для дальнейших покупок. В личном кабинете обычно хранится пароль, контактные данные, история заказов. Удивительно, но мы также увидели возможность загрузить фото для профиля. Вы задумывались зачем человеку, который покупает чехлы для телефона, кабели или любой другой товар онлайн фото профиля? Как это влияет на лояльность клиента или может повышает конверсию?
Наши специалисты сумели загрузить файл на сайт, обойдя даже валидацию формата файла. То есть, под видом картинки мы загрузили файл с нужным нам форматом, в который спрятали вредоносный код.
В логику этого кода заложена команда, которая ищет пароли к базе данных, серверу, админ панели. На скриншоте видно, что формат файла изменен, хотя формат, требуемый самим ресурсом – jpeg.
Получив доступ к папкам с паролями или же сайту целиком хакер может использовать его в своих целях: изменить пароль к админ панели, перенести сайт на другой сервер, удалить сайт или требовать выкуп за восстановление вашего интернет-магазина.
Если нет острой необходимости в загрузке файлов пользователями – уберите эту возможность.
Вирусы-шпионы
С этой проблемой обратился к нам клиент, у которого неожиданно пропал доступ к админ панели интернет-магазина. Было ясно, что проникли через один из компьютеров сотрудников компании.
Задача стояла найти пробел в системе защиты сайта, восстановить данные и вернуть доступ. Один день простоя обходился клиенту в $4 000, поэтому действовать требовалось немедленно.
Как это произошло? На сайте любого интернет-магазина есть чат, где можно пообщаться с менеджером: обратиться с проблемой, задать вопрос и даже наглядно его показать, загрузив файл в чат. Для открытия текстового документа менеджеру придется кликнуть на файл, который автоматически скачается на компьютер.
Таким образом был загружен вирус keylogger, который отслеживал все движения на клавиатуре – от ввода паролей на почту, сервиса облачного хранения файлов (где, кстати, нашли файл с паролями ко всем рабочим утилитам), так и доступу к 1С.
Во-первых, хранить пароли с логинами в файле в облаке очень небезопасно. Во-вторых, менеджер не понимает, что загруженный им файл - заражен. С виду файл напоминал инструкцию по замене стекла на смартфоне.
Мы не рекомендуем использовать такую фичу как загрузка файла пользователем в чат в интернет-магазин. Если вы никак не можете отказаться от нее, предлагаем ограничиться картинкой, которую можно рассмотреть, не кликая на нее.
To sum up
Мы рекомендуем регулярно проводить пентест своего продукта, ведь предотвратить взлом дешевле, чем лечить его. Также не стоит забывать, что допиливание какого-либо функционала ставит под угрозу защиту вашего интернет-магазина или сайта. Поэтому, если вы сотрудничаете с компанией по кибербезопасности советуем уведомлять их о внесении изменений в ваш продукт.