Новый 64-битный руткит под Linux делает инъекции фреймов в HTTP-трафик

Discussion in 'Мировые новости. Обсуждения.' started by Solitude, 20 Nov 2012.

  1. Solitude

    Solitude Member

    Joined:
    29 Aug 2011
    Messages:
    445
    Likes Received:
    23
    Reputations:
    1
    Новый 64-битный руткит под Linux делает инъекции фреймов в HTTP-трафик

    Один из подписчиков списка рассылки SecLists прислал описание нового руткита, который работает под 64-битной ОС Linux и использует Nginx. Вредоносную программу пользователь обнаружил на своём сервере Debian Squeeze, веб-сервер Nginx 1.2.3.

    Обнаружить руткит удалось после того, как некоторые посетители сайта пожаловались, что им отгружается странный iframe с редиректом на вредоносную страницу. Каким-то образом злоумышленнику удалось внедрить код на страницы сайта.

    Расследование показало, что Nginx возвращает клиенту ответ с вредоносным фреймом даже в случае неверного запроса.

    Code:
    server {
        listen          80 default backlog=2048;
        listen          443 default backlog=2048 ssl;
        server_name     _;
        access_log      off;
        (...)
        location / {
            return  400;
        }
    }
    В данном случае Nginx не обращается в кэш после получения плохого запроса, а return 400 означает, что он возвращает предустановленный ответ из памяти.

    Вот как выглядит ответ.

    Code:
    HTTP/1.1 400 Bad Request
    Server: nginx/1.2.3
    Date: Wed, 07 Nov 2012 00:01:24 GMT
    Content-Type: text/html
    Content-Length: 353
    Connection: close
    
    <html>
    <head><title>400 Bad Request</title></head>
    <body bgcolor="white"><style><iframe src="http://malware-site/index.php
    "></iframe></div>
    <center><h1>400 Bad Request</h1></center>
    <hr><center>nginx/1.2.3</center> 
    Покопавшись в системе, админы обнаружили на сервере руткит и несколько скрытых процессов с именами вроде write_startup_c и get_http_inj_fr.

    Собственно, вот сам руткит.

    lib+modules+2.6.32-5-amd64+kernel+sound+module_init.lo

    Специалисты «Лаборатории Касперского» проанализировали код и выяснили, что руткит специально создан для версии ядра 2.6.32-5-amd64, бинарный файл размером более 500 Кб содержит неудалённую служебную информацию от разработчиков, некоторые запланированные функции руткита не реализованы или работают с ошибками. Эксперты ЛК объясняют, что внедрение фреймов происходит путём подмены системной функции tcp_sendmsg, то есть внедрение в HTTP-трафик осуществляется путём непосредственной модификации исходящих TCP-пакетов на сервере Linux.

    [​IMG]

    Для получения боевой нагрузки руткит связывается с удалённым сервером с авторизацией по паролю.

    [​IMG]

    Вредоносной программе присвоено название Rootkit.Linux.Snakso.a, более подробное описание см. в блоге CrowdStrike.

    20.11.2012
    http://www.xakep.ru/post/59663/
     
  2. -=Cerberus=-

    -=Cerberus=- κρυπτός γράφω

    Joined:
    29 Apr 2012
    Messages:
    1,266
    Likes Received:
    898
    Reputations:
    391
    Классная идея!
     
  3. lukmus

    lukmus Elder - Старейшина

    Joined:
    18 Nov 2009
    Messages:
    366
    Likes Received:
    115
    Reputations:
    23
    я не силен в руткитах, но помойму подмена выдаваемого http-пакета в ядре это третье, что приходит на ум после изменения файлов конкретного сайта и подмены в выдаче конкретного http-сервера(apache, nginx итд)