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

  • 08 июня 2015 12:12:40
  • Отзывы : 0
  • Просмотров: 1497
  • Автор: Дмитрий Снопченко
  • 0
Все конечно же слышали о бэкдорах на сайтах, и о том что иногда их встраивают сами разработчики. Но недавно наткнулся на не то что бы интересный, но очень долгоиграющий бэкдор, выстреливший совершенно неожиданно.

Есть такая CMS с открытым кодом как OpenCart, которая имеет несколько ответвлений и сборок на его базе, например OcStore, или OcShop, MaxyStore с русской\украинской локализацией и собственными доработками. Так же есть разработчики, которые пишут свои модули под эту платформу, как платные, так и бесплатные. Кто то свои модули надежно защищает ionCube, кто то менее надежно, и через какое то время они появляются на варезных сайтах и зачастую уже зараженные. Установив такой зараженный модуль, владелец вебсайта через некоторое время имеет счастье лицезреть на своем сайте кучу ссылок на порно, редиректы на зараженные сайты, или вообще целиком залитые форумы по БДСМ или хентаю.

В начале мая 2013 года была атака на официальные ветки //opencartforum.ru и //myopencart.ru/ и заменены ссылки на дистрибутивы ocStore. Администрация заметила и поправила, предупредив пользователей о зараженням контенте. Вроде как все и закончилось, но нет.

Примерно в то же время появилось еще одно ответвление – MyOpencart.net, сборка интернет магазина с уже доставленными модулями, большинство из которых были платными, некоторые распространялись бесплатно. Сама сборка распространялась бесплатно, и её успело скачать достаточно большое количество вебмастеров, и успешно установило себе на сайт (и не только себе на сайт, но и на сайты клиентов). Так же на сайте было выложено большое количество взломанных модулей. Все работало замечательно, сборка и модули регулярно обновлялась, и мало кто заметил, что она модифицирована, и содержит в себе бэкдор…

Сам бэкдор относительно безобидный, в функции типа $ouput = eval(base64_decode(заколированные данные )); содержался код, который подменял ссылки конкурентов аналогичных сборок на свои. Один из способов черного PR в интернете. Так же он позволял управлять содержимым страницы, но видимо этим функционалом пользовались редко. О бэкдоре было известно давно, еще в сентябре 2013 года была статья на Хабре с подробным разбором кода и ссылками на фишинговый сайт MyOpencart.net . Но, видимо, её мало кто читал, и вебмастера продолжали и продолжали скачивать дистрибутив и ставить на сайты. Причем это касается не только фрилансеров-студентов, а и именитых вебстудий, с толстым и дорогим портфолио.

Но вот в один прекрасный момент, а именно 5 июня 2015г. что то произошло с проектом, и по адресу MyOpencart.net появилась стандартная парковочная страница доменного регистратора namebright.com, где он был зарегистрирован. Может домен не проплатили, или хостинг, уже не важно. Но что же произошло с бэкдором, установленным на тысячах сайтов? Он продолжал работать как и прежде, но вместо скрытой где то в коде ссылки, на зараженных сайтах появился баннер в пол-экрана с этой парковочной страницы! Эта картинка появилась в одно мгновение более чем на 10 000 сайтах! Да, именно столько успели скачать и поставить вебмастера за несколько лет.

 
Сейчас владельцы сайтов и вебмастера в мыле пытаются найти, откуда же у них появилось это на сайте, и в большинстве случаев валят все на злобных хакеров, которые вот так легко взламывают их магазины. Хотя на самом деле бэкдор был там изначально. Профильные форумы по OpenCart завалены однообразными темами, и первая реакция пользователя на замечание админа, что не следовало пользоваться варезными сборками, а только официальными – возмущение.
Да, люди возмущены тем, что ПО, находящееся в «свободном доступе», которое можно скачать бесплатно (без регистрации и SMS J ) может содержать в себе вредоносный код. Да, они возмущены тем, что, не смотря на то, что данное ПО они скачали бесплатно, им не оказывают помощь на официальных площадках. Да, они возмущены тем, что многие фрилансеры на этих площадках просят деньги за решение проблемы, пусть хоть и символические. Ведь зачем платить за и так бесплатный продукт?
Похожие статьи