Сегодня интернет-магазины расплодились в Глобальной сети буквально как грибы после дождя. Так что любой человек, не отходя от компьютера, может приобрести буквально все — от пирожка и упаковки аспирина до автомобиля или участка земли. Причем ни для кого не секрет, что в электронной коммерции достаточно сильно рискуют обе стороны — как покупатели, так и продавцы. Первые могут остаться без приобретенного товара или получить никуда не годные вещи. Вторые же постоянно рискуют стать жертвами различных мошенников.
А ведь среди последних есть немало технически продвинутых людей. И они с помощью своих знаний и хакерских приемов и инструментов могут попытаться атаковать сервер интернет-магазина с целью получения личной выгоды.
Многие работающие сегодня интернет-магазины на удивление плохо защищены от различных удаленных атакЭтому способствует низкая защищенность многих онлайновых торговых точек. Конечно же, речь не идет о крупных магазинах, поскольку программное обеспечение для них создавалось хорошими специалистами. Да и во время его эксплуатации часто проводятся различные исследования системы защиты, призванные найти и обезвредить все «дыры», которыми могут воспользоваться хакеры. Совсем по-другому обстоят дела с мелкими торговцами. Они не могут позволить себе заказать дорогой софт, а поэтому либо приобретают дешевые скрипты, которые на досуге пишут студенты, пробующие свои силы, либо нанимают внештатного работника, который самостоятельно создает необходимый комплекс с нуля. Причем ни один из этих вариантов нельзя назвать удачным с точки зрения информационной безопасности. Ведь нет никакой гарантии, что человек, пишущий движок интернет-магазина, действительно разбирается в этом деле. Любой программист, знающий основы одного из веб-языков, может написать работающие скрипты для электронной торговой точки. Но лишь очень немногие специалисты могут сделать это так, чтобы не оставить никаких лазеек для хакеров. К сожалению, сегодня большинство людей не понимают этого. А поэтому интернет-магазины довольно часто становятся жертвами удаленных атак. Некоторые из них являются универсальными и могут с успехом использоваться для взлома любых веб-серверов. Другие же уникальны и пригодны для работы только с торговыми точками. И сейчас мы с вами, уважаемые читатели, рассмотрим наиболее часто использующиеся виды удаленных атак, относящихся к первому типу.
Инъекции
Инъекции — это простые атаки, в которых хакер в полях данных или параметров отправляет серверу специальные компанды
Атаки, называемые инъекциями, не являются специфическими для интернет-магазинов. В принципе, они могут быть использованы против любого веб-сервера. Суть их заключается в том, что злоумышленник вместо ожидаемых данных или параметров скриптов отправляет специальные команды. И если сервер не защищен от этого, то он будет эти команды выполнять. О том, какую это несет опасность для владельца интернет-магазина, наверное, не стоит и говорить.
Основу практически любого интернет-магазина составляет специальная база данных* SQL*. Именно в ней хранится вся информация о товарах, клиентах, платежах и т. д. Нужно ли говорить, что, заставив базу данных выполнять его команды, злоумышленник может сделать практически все. Ну а если он при этом не будет зарываться, то вполне вероятно, что какое-то время его проникновение не смогут обнаружить. Именно поэтому наибольшее распространение среди атак интернет-магазинов получили SQL-инъекции.
Принцип проведения этих атак очень прост. Злоумышленник заходит на одну из страниц магазина, содержащую веб-форму, и вводит в каком-либо текстовом поле специальные символы или строки, после чего отправляет их на сервер. И если база данных не защищена от инъекции, то она выполнит команды, которые передал ей злоумышленник. Особенно уязвимыми в этом плане являются серверы MS SQL. Дело в том, что они по умолчанию работают с высокими привилегиями и могут выполнять команды операционной системы. Кроме того, они умеют обрабатывать множественные запросы, разделенные символом точка с запятой. Все это, конечно, весьма удобно для программиста, но становится крайне опасным, если он забыл включить в скрипты защиту от SQL-инъекций.
Впрочем, для инъекций могут использоваться не только базы данных. Достаточно часто злоумышленники получают возможность выполнять команды операционной системы сервера благодаря скриптам, написанным на языках PHP или Perl. Особенно опасным в этом плане является запрос system. С его помощью и с использованием разделителей команд и системных метасимволов хакер может попытаться заставить сервер выполнять нужные ему действия.
Вызов исключительных ситуаций
Одним из универсальных способов атак различных компьютерных систем является искусственный вызов тех или иных исключительных ситуацийОдним из универсальных способов атак различных компьютерных систем является искусственный вызов тех или иных исключительных ситуаций. В большинстве случаев это ничего не дает, поскольку разработчики предусмотрели такую возможность и определили реакцию системы на такие ошибки. Однако всегда есть шанс того, что создатели не учли возможность возникновения каких-либо исключительных ситуаций. И если злоумышленнику удастся вызвать такую ошибку, то система может повести себя самым неожиданным образом, в том числе и выгодным для злоумышленника.
Самой известной атакой рассматриваемого типа является искусственный вызов переполнения буфера. Этой ошибкой могут попытаться воспользоваться хакеры и в отношении интернет-магазинов. Причем данной опасности подвергаются системы, написанные на различных языка программирования: Perl, PHP, ASP и т. д. Впрочем, сразу стоит отметить, что вызов исключительной ситуации не позволяет хакеру автоматически получить контроль над удаленной машиной, исправить базу данных или выполнить произвольную команду. Но зато сообщения, которые выдаются в результате ошибок, могут стать для злоумышленника поистине бесценным источником информации. Так, например, попытавшись отправить через веб-форму слишком длинную строку, хакер может раскрыть пути используемых в ней функций PHP. И это очень важно. Дело в том, что, видя сайт снаружи, нельзя догадаться, где располагаются служебные скрипты. Между тем эта информация позволяет злоумышленнику попробовать провести те или иные атаки.
Но, естественно, опасность несут не только сложные исключительные ситуации, но и простые ошибки. И за примерами далеко ходить не нужно. В некоторых интернет-магазинах ошибки в скриптах возникают в том случае, если пользователь ввел данные не того типа. Например, в параметрах какого-либо скрипта должно передаваться какое-то число. Если же злоумышленник вместо него ввел символьную строку, а разработчик не предусмотрел такую возможность и не создал соответствующую обработку сложившейся ситуации, то на экране браузера будет отображено сообщение об ошибке. А в нем многие серверы сообщают такие данные, как свой тип и версию, используемые дополнительные компоненты, путь к скрипту и т. д. Эта информация позволяет хакеру использовать узконаправленные атаки с использованием известных уязвимостей программного обеспечения.
Подводим итоги
Безопасность интернет-магазина очень сильно зависит от разработчика его движка Итак, как мы с вами, уважаемые читатели, видим, безопасность интернет-магазина очень сильно зависит от разработчика его движка (впрочем, в этом нет совершенно ничего удивительного). Именно поэтому создание программного обеспечения для электронной торговой точки лучше всего доверять настоящим профессионалам или использовать для создания сайта какую-либо систему CMS. В этом случае шансы стать жертвами мошенников существенно снижаются. Кроме того, весьма полезно периодически проводить аудит системы защиты веб-сайта. Для этого можно как привлекать сторонних специалистов в области информационной безопасности, так и применять программы-сканеры. Только таким образом можно добиться надежной защиты интернет-магазина от технически подкованных злоумышленников.
Ссылки по теме
Статья получена: hostinfo.ru