Задать вопрос

Можно ли взломать черз POST?

Недавно увидел у знакомого вот такой код:
$url = 'http://blabla.com/?id='.(array_key_exists('id', $_POST) ? $_POST["id"] : '').';
    $otvet = json_decode(file_get_contents($url), true);
    if($otvet['error'] == 'no'){
      ...
    }

Сразу бросилось в глаза что нет обработки входящих пост данных. Указав на эту ошибку в безопасности получил ответ "всё там норм, наведи пример взлома".
Возможен ли взлом? Или хотя бы не взлом, а подмена урл, или другие варианты нарушения работы скрипта.
Мне ничего в голову так и не пришло.
  • Вопрос задан
  • 1659 просмотров
Подписаться 4 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
magalex
@magalex
Архитектор распределённых систем управления
Смотреть надо не в этот кусок кода, т.к. здесь просто пробрасывается параметр id в запрос, вызываемый функцией file_get_contents.
А смотреть надо туда, где на ресурсе blabla.com обрабатывается запрос $url: есть там или нет обработка входящих данных.
В общем смотрите что такое SQL injection
exploits_of_a_mom.png
Ответ написан
@neol
Конкретно в этом примере вполне вероятно получить отказ в обслуживании на первом школьнике, решившем просканировать сайт с помощью nessus. Но даже если до этого не дойдет ( в смысле до отказа в обслуживании, школьники-то не заставят себя долго ждать), то получится пустая трата ресурсов на обработку соединений и со стороны данного приложения, и со стороны blabla.com. Вряд ли это можно назвать страшной уязвимостью, но код явно попахивает чем-то неприятным.
Ответ написан
Комментировать
@dvomaks Автор вопроса
Однажды мой препод по программированию попросил написать программу которая выведет результат сложения двух чисел 3 и 2. Так вот с заданием никто нормально не справился, все писали типа
х=2
у=3
z=x+y
print z
Все получили неут, а решение было простое print 5. Запомнилось на всю жизнь.
Вот и здесь примерно то же. Задал вопрос, и в ответ куча лишней информации, 80% которой не относится к сути вопроса.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы