[CVE-2013-4547] Nginx

Discussion in 'Уязвимости' started by BigBear, 24 Nov 2013.

  1. BigBear

    BigBear Escrow Service
    Staff Member Гарант - Escrow Service

    Joined:
    4 Dec 2008
    Messages:
    1,801
    Likes Received:
    920
    Reputations:
    862
    Похоже у известного CVE появилась вторая жизнь.

    Проблеме подвержены версии nginx 0.8.41 — 1.5.6.
    Проблема исправлена в nginx 1.5.7, 1.4.4.

    Эксплуатируется очень и очень похоже.

    Вкратце о уязвимости:

    Злоумышленник должен загрузить на сервер файл с пробелом в имени файла на конце с активным содержимым. После загрузки можно обратиться к файлу, использую запрос

    [url_host][url_pth]"/file \0.php"

    Если все зависимости выполняются - данный файл интерпретируется как PHP скрипт.

    Это возможно, благодаря присутствию следующих строк в конфиге Nginx

    Code:
    location ~ \.php$ {
    fastcgi_pass…
    }
    Единственное в чём будут трудности - загрузить на сервер файл с пробелом в имени файла на конце, минуя все преобразования внутри CMS, включая функцию trim().

    Конечно, есть определённые зависимости:


    Есть идеи по эксплуатации ?
     
    _________________________
    #1 BigBear, 24 Nov 2013
    Last edited by a moderator: 29 Nov 2013
  2. Expl0ited

    Expl0ited Members of Antichat

    Joined:
    16 Jul 2010
    Messages:
    1,035
    Likes Received:
    534
    Reputations:
    935
    Это специфичная ***ня, пользы от которой не много
     
    _________________________
    #2 Expl0ited, 29 Nov 2013
    Last edited by a moderator: 29 Nov 2013
  3. BigBear

    BigBear Escrow Service
    Staff Member Гарант - Escrow Service

    Joined:
    4 Dec 2008
    Messages:
    1,801
    Likes Received:
    920
    Reputations:
    862
    Вообще - да.

    Уже пришли к мнению, что тут нужно средоточие факторов, комбинацию которых хрен найдешь.

    Вообще, если посмотреть на проблему массовых взломов, то перед злоумышленниками встаёт 3 проблемы:

    1) Обойти функцию trim() в CMS.
    2) Обойти resize картинки в случае загрузки исполняемого кода как изображения.
    3) Обойти переименовывание файлов после аплоадинга.

    Если 2 и 3 пункт ещё могут как-то решиться, например, этим способом, и нахождением CMS, где загруженные файлы не переименовываются. То обход первого пункта — наиболее трудный.

    А в совокупности все 3 проблемы очень сильно ограничивают злоумышленников в своих массовых взломах. Так что по сути, бояться сильно то и нечего.
     
    _________________________
    #3 BigBear, 29 Nov 2013
    Last edited: 29 Nov 2013