Наблюдая попытки проверки наличия уязвимостей в логе своего web-сервера, исследователь безопасности из Университета Джорджа Вашингтона решил устроить ловушку (honeypot) и понаблюдать (http://sempersecurus.blogspot.com/2013/12/a-forensic-overvie...) за тем, что произойдёт в случае, если злоумышленники обнаружат наличие уязвимости. Для анализа содержимого памяти во время выполнения вредоносных программ использовался фреймворк Volatility (https://code.google.com/p/volatility/).
После симуляции уязвимости в CGI-режиме PHP, исправленной (https://www.opennet.ru/opennews/art.shtml?num=33765) в мае прошлого года, на сервер-ловушку под видом PDF-файла был загружен perl-скрипт, запущен и сразу удалён. После запуска скрипт некоторое время находился в неактивном состоянии, чтобы затруднить сопоставление данных в логе с вредоносной активностью. Затем скрипт подключился к одному из IRC-каналов и загрузил ещё один скрипт, в результате выполнения которого в системе оказалась серия вредоносных приложений.
За несколько дней в системе удалось наблюдать выполнение достаточно разнородного набора программ, отличающихся как по назначению (майнинг криптовалюты биткоин, осуществление DoS-атак, сканирование хостов на наличие уязвимостей, запуск ботов), так и по содержимому (исполняемые файлы в формате ELF, скрипты на perl и shell). Исследователь делает вывод, что Linux-серверы становятся лакомым кусочком для злоумышленников и администраторам следует не забывать о поддержании системы в актуальном состоянии и оперативно устранять уязвимости в web-приложениях.
URL: http://sempersecurus.blogspot.com/2013/12/a-forensic-overvie...
Новость: https://www.opennet.ru/opennews/art.shtml?num=38683
PHP же, причем тут Линукс.
Потому что *BSD пока нет программ для майнинга, а так сам в инете где то читал, как системный админ расспрашивал про майнинг на линуксе биткоинов, потому что сервера толком не нагружены, а их можно немного нагрузить
Гы, у меня есть несколько серваков которые большую часть времени страдают фигнёй.
Спасибо за идею :)
> Гы, у меня есть несколько серваков которые большую часть времени страдают фигнёй.
> Спасибо за идею :)Насколько мощные видеокарты на ваших серверах?
Обломал неудавшегося биткоинового магната :)
> Обломал неудавшегося биткоинового магната :)Для лайткоинов в принципе и CPU не совсем плох: там скорость работы с RAM роялит. Правда, GPU все-равно эффективнее. Насколько эффективнее будут ASIC? В принципе сделать можно, но алгоритм таков что эффективность ASIC будет как минимум заметно ниже чем в bitcoin, т.к. алгоритму нужно много оперативки.
Видеокарты уже прошлый век, сейчас в тренде использовать ASIC
> Видеокарты уже прошлый век, сейчас в тренде использовать ASICЯ ему хотел про лайты сказать (если бы карты мощные были).
майнить можно не только видео картой
Да, есть еще азики и фпга.
Можно еще ASIC-ками.
А майнить на процессоре - все равно что копать котлован чайной ложкой.
> А майнить на процессоре - все равно что копать котлован чайной ложкой.Суть ботнетов - собрать миллион ботов с чайными ложками, авось чего выкопают.
Не выкопают.
Время когда ботнэты могли что-то выкопать закончилось где-то в конце 2011-го, сейчас они могут разве что паразитную нагрузку создавать. Знаю, потому как сам админил пул некоторое время.
> Не выкопают.Выкапывают. Было бы это не так - никто б не заморачивался.
Вот за что я люблю школьных аналитиков с опеннет. Нихрена не умею, ничего никогда полезного не делали, но все знают, и на все у них свое экспертное мнение))).
Мощность одного процессорного ядра ~1МХеш. То есть сеть из 10000 ядер будет равна по мощности одному асику за 350 баксов. А что по вашему сделает админ пула увидев 10000 подключений сжирающих канал и имеющих мощность ~0? Правильно - забанит их нахрен.)>Выкапывают. Было бы это не так - никто б не заморачивался.
Сейчас этим никто и не заморачивается. Ботнеты с майнингом появились в конце 2010, начале 2011. В конце 2012 для майнинга их уже никто не использовал (пытались выбивать деньги с пулов через дос, но, насколько мне известно, успеха это не имело)). Сейчас это просто легаси софт.
>Вот за что я люблю школьных аналитиков с опеннет...... В конце 2012 для майнинга их уже никто не использовал.Смотри 5.85 и думай кто на самом деле "аналитик".
>Смотри 5.85 и думай кто на самом деле "аналитик".Ты наверное?) На заре его существования и биткоин можно было спокойно майнить на проце. Это вопрос не используемой железки, а общей мощности сети, не важно по какому алгоритму ты майнишь. Валют-однодневок по мимо биткоина, было до хрена и больше, только лайткоин набрал какую-то популярность. Никто ради очередной такой валюты ботнеты разворачивать не будет.
> А майнить на процессоре - все равно что копать котлован чайной ложкой.Поскольку этим занимаются тысячи железяк и они никуда не торопятся - нехай копают. Через недельку, глядишь, уже солидная яма образуется, а через месяц - вполне себе котлован.
Смотрим Праймкоин (Primecoin XPM) - криптовалюта, расчитанная на майнинг на процессорах. Если 64 разрядные сервачки с кучей ядрышек, то можно на приличное пиво накопать.
> Потому что *BSD пока нет программ для майнинга,Это примерно как "у меня нет штанов, поэтому их никто не сопрет, вау!".
> PHP же, причем тут Линукс.В данном случае php - это только способ распространения. Главное другое - под линукс написано столько вредоносных программ в формате ELF, а также скриптов на perl и shell, что они выполнялись аж несколько дней! А некоторые до сих пор продолжают утверждать, что под линукс вирусов нет.
> до сих пор продолжают утверждать, что под линукс вирусов нет.Ну и где они эти ваши вирусы? все что в статье - НЕ вирус.
>> до сих пор продолжают утверждать, что под линукс вирусов нет.
> Ну и где они эти ваши вирусы? все что в статье -
> НЕ вирус.Почему же, это вполне себе вирус. Единственное, он работает на очень малом количестве систем, которые давно не обновлялись и при "правильной" настройке php. На сервер успешно загружается произвольный скрипт "a,pdf" и работает в /var/tmp/ (до ближайшей перезагрузки). Скрипт не получил root-права (это не обязательно), скрипт не остался в системе навечно (это тоже не обязательно). Скрипт смог загрузить стороннее ПО (в том числе и ELF) и выполнить его (а значит при желании он сможет получить и root-права и остаться навечно). Вполне себе сойдет за trojan-loader по классификации популярных антивирусных систем...
Вопрос в другом - хороший способ защиты от таких уязвимостей не установка антивируса. Он вряд ли спасет в случае всяких bash- и perl-скриптов, которые легко может переписать до неузнаваемости программист уровня CodeMonkey. Ну и регулярные обновления всей системы и грамотный подход к организации безопасности системы более логичны, чем регулярное обновление только антивируса + дырявая система.
P.S. Самое неприятное в этой статье - вредоносное ПО на сервак загружали(!), т.е. есть злоумышленники, которые заинтересованы в эксплуатации linux-серверов (им есть чем занять эти сервера). Значит вопрос только в наличии доступной "дырки" для распространения ну и в количестве таких злоумышленников.
> Почему же, это вполне себе вирус.Нет. Давайте оставим хомячковую терминологию хомячкам. Это червь, бекдор, всё что угодно ещё, но не вирус. Вирусной активности сия малварь не проявляла. Хотя, в общем-то, могла бы. Но под линуксами это действительно гемор, поэтому под линуксом и нет вирусов.
> Исследователь делает вывод, что Linux-серверы становятся лакомым кусочком для злоумышленниковТ.е. если установить Apache + PHP на оффтопик, то всё будет пучком? Внатуре, причем тут Линукс то?
При том, что дыра в PHP лишь частный случай уязвимости, через которую можно проникнуть на сервер. С тем же успехом сканируются типовые пароли по SSH, проверяются дыры в популярных web-приложениях на python, perl, ruby. После взлома загружаются не только скрипты, но и бинарники в сборках для Linux.
> При том, что дыра в PHP лишь частный случай уязвимости, через которую можно проникнуть на сервер.Повторяю вопрос: при чем здесь Linux?
>> При том, что дыра в PHP лишь частный случай уязвимости, через которую можно проникнуть на сервер.
> Повторяю вопрос: при чем здесь Linux?Повторяю ответ: читай пост выше!
> Повторяю ответ: читай пост выше!Там какой-то поток сознания, никак не относящийся к заданному вопросу.
>> Повторяю ответ: читай пост выше!
> Там какой-то поток сознания, никак не относящийся к заданному вопросу.Специально для упоротых до измененного восприятия:
> бинарники в сборках для Linux.
> бинарники в сборках для Linux.А еще бывают в сборках для винды и фрибсд. Так чего сказать-то хотел?
Ты это, братан, к чему клонишь?
> Ты это, братан, к чему клонишь?Наверное намекает что у половины местных бсдшников "без вирусов" - винды в дуалбуте.
Что все вирусы используют уязвимости в софте и линукс тоже им подвержен т к умеет запускать софт. А вообще, смысл в прекращении глупой уверенности в собственной безопасности только по причине того, что установлен линукс.
>бинарники в сборках для LinuxРация на бронепоезде.
> Повторяю вопрос: при чем здесь Linux?Данная ОС в свете своей популярности на серверах становится хорошей средой для обитания вирусов. Это и была цель исследования.
> Данная ОС в свете своей популярности на серверах становится хорошей средой для
> обитания вирусов. Это и была цель исследования.Хорошей средой для обитания вирусов ОС делает не популярность на серверах, а что-то другое. Домашнее задание: подумать, что именно.
это мы уже слышали :) но как показывает практика - дыры в Linux не фиксятся годами.
И даже крутые эксперты из redhat умудряются при бэкпортах добавлять дыры через которые можно получить админа.но да лана - можете верить с свой придуманный мир :)
> это мы уже слышали :) но как показывает практика - дыры в Linux не фиксятся годами.Скажу по секрету - срок надо считать не с момента появления, а с момента обнаружения.
> И даже крутые эксперты из redhat умудряются при бэкпортах добавлять дыры через
> которые можно получить админа.Куда уж им до великих спецов из мелкософта!
Момент обнаружения != момент обнародования.С уважением, ваш кэп.
> это мы уже слышали :) но как показывает практика - дыры в
> Linux не фиксятся годами.
> И даже крутые эксперты из redhat умудряются при бэкпортах добавлять дыры через
> которые можно получить админа.
> но да лана - можете верить с свой придуманный мир :)А что бы легче было разглядеть реальность можно просто посмотреть на то как исправляют многие ошибки. Например glibc который до сих пор содержит ошибки которые были исправлены в дистрибутивах но не исправлены в основной ветке. Я не говорю сейчас о каких то специфичных для дистрибутива исправлениях, я говорю об ошибках которые в основной ветке живут, даже после того как они были выявлены. Получается что вроде все трудятся над одним и тем же но песочница у всех своя. И так поступают не только разработчики glibc так что отвергать реальность не имеет смысла.
такие слова в приличном обществе принято сопровождать пруфлинками. это, конечно, опеннет — но ты можешь поспособствовать тому, чтобы опеннет стал немного приличней.намёк ясен?
> намёк ясен?Конечно ясен, Вам нужен пруф того о какой ошибке я говорил, но на данный момент я не говорил о какой то недавней ошибке, я говорил цикле и оперативности исправлений в целом. На оперативность так же влияют и сами разработчики которые иногда некоторым ошибкам или уязвимостям ставят низкий приоритет и вот только когда припрет, тогда и появляется патч. А некоторые ошибки живут годами, и выявляют их чаще всего не сами разработчики, а какие нить известные эксперты. Наличие исходного кода и повышение популярности, должно так же повышать чистоту кода и оперативность исправления ошибок. Ответственность растет по мере роста популярности
Сышишь, Анон, ты братишка часом не путаешь бекпорт патчи дистрибутивов когда какойнить glibc-2.12 по факту дотягивается патчами до 2.16.0 но при этом продолжает гордо реять версией 2.12-p100500, нет?
вместо этой портянки мог сразу написать: «я балабол».
> дыры в Linux не фиксятся годами.Покажи мне дыры в текущем ядре Linux, которым уже годы? Очень интересно.
Просто ему дали венду и сказали что это Linux
Средой для обитания чего?
> Средой для обитания чего?Вирусов. Эта такая программа, которая встраивает свой код в EXE-файлы.
В DLL тоже.
> дыра в PHP
> С тем же успехом сканируются типовые пароли по SSHв голове админа должен быть набор каштанов десяти сортов, чтобы использовались пароли, да ещё типовые, да ещё с тем же успехом, что и дыры в PHP.
> всё будет пучкомПучок вирусов в оффтопике будет, ага.
При том, что кто-то уже 20 лет упорно кукарекает про какую-то "архитектуру", которая спасает от уязвимостей by design
От уязвимостей спасает не дизайн а способ разработки
Стыдно, юноша
И каким же образом? В лицензию написали что нельзя пакостить?
> И каким же образом?Таким, как вы, объяснять бесполезно. Ваши хозяева и не подозревают, что написание кода можно отдавать не только индусам на аутсорс.
> И каким же образом? В лицензию написали что нельзя пакостить?очень простым образом: удержанием подобных тебе подальше. нет вас — нет и дырок.
От уязвимостей спасает дизайн.
Какие 20? Пхп только в 1995 появился. Да и про "архитектуру" его даже сам автор высказался скептически.
> Какие 20? Пхп только в 1995 появился. Да и про "архитектуру" его
> даже сам автор высказался скептически.Можешь писать сервер на C? Пиши.
> Можешь писать сервер на C? Пиши.кроме пыха есть ещё стопиццот способов что-то пожевать и выплюнуть контент. не очень умно приплетать сюда C.
И че? Какие-то проблемы писать на C web приложения?
Вы понимаете разницу между прикладным ПО и системными компонентами ? Нет ? Тогда могу вас поздравить, вы сели в лужу.
>и администраторам следует не забывать о поддержании системы в актуальном состоянииСпасибо, конечно, Кэп, но знаешь, для такого "гениального" вывода нужны не исследования веб серверов, а исследования должностной инструкции сис. админа. В ней, если ее по-исследовать, обязательно найдешь пункт о своевременном обновлении ПО.
> В ней, если ее по-исследовать, обязательно найдешь пункт о своевременном обновлении ПО.Вот в демьяне, в своё время, обновилось ядро с 3.2.18 до 3.2.22 в котором есть дыра!
Уверен, что нужно обновляться без мозга в голове? Все одмины вкуривают устройство ядра?
Все могут проверить, создать эксплойт на основании описания?
>уверен, что нужно обновляться без мозга в головеБез моска - не стоит даже пытаться за комп садиться.
Но, вообще-то, вдумчивые да аккуратные админы не забывают смотреть в бюллетени безопасности. Например, сюда http://www.linuxsecurity.com
>>уверен, что нужно обновляться без мозга в голове
> Без моска - не стоит даже пытаться за комп садиться.
> Но, вообще-то, вдумчивые да аккуратные админы не забывают смотреть в бюллетени безопасности.
> Например, сюда http://www.linuxsecurity.comНу вот, чтоб долеко не ходить, лезем http://www.linuxsecurity.com/content/view/160621/
Засекаем время: 23:17
Package : pixman
Vulnerability : integer underflow
Problem type : remote
Debian-specific: no
CVE ID : CVE-2013-642523:18 - Ищем CVE-2013-6425:
https://security-tracker.debian.org/tracker/CVE-2013-6425 , есть в stable23:21 - Лезем в систему:
# ldconfig -p | grep libpixman
libpixman-1.so.0 (libc6) => /usr/lib/i386-linux-gnu/libpixman-1.so.0
libpixman-1.so (libc6) => /usr/lib/i386-linux-gnu/libpixman-1.soесть такое...
23:25 # apt-get install apt-rdepends (пока вспомнишь, чем зависимости искать...)
смотрим кому нужна эта либа
23:26 # apt-rdepends -r libpixman-1-0
23:30 Считаем и куеем.
# apt-rdepends -r libpixman-1-0 | grep -v 'Reverse Depends' | sort -u | wc -l
5212 пакетов23:31 Лезем искать патч.
23:32 Нашли http://patchwork.freedesktop.org/patch/14769/
23:33 Ушли изучать
http://cgit.freedesktop.org/pixman/commit/?id=5e14da97f16e42...
http://cgit.freedesktop.org/pixman/commit/?id=2f876cf86718d3...Описалово
Opening the attached file with LibreOffice with enabled anti-aliasing will crash the Intel Xorg driver
(see launchpad bug for details). While a crashing driver is not our bug, it might still be worth a
look to see if we are asking anything illegal from X or if we can workaround the driver bug easily.Уже легче, юзеры Nvidia спят спокойно.
С отключённым AA, тоже ....23:38 надо качать соурсы, искать кто юзает # define pixman_trapezoid_valid()
23:44
# cd /tmp/
/tmp # git clone http://anongit.freedesktop.org/git/pixman.git
...
23:45
# grep -r pixman_trapezoid_valid ././pixman/pixman-trap.c: if (!pixman_trapezoid_valid (trap))
./pixman/pixman-trap.c: if (!pixman_trapezoid_valid (trap))
./pixman/pixman-trap.c: if (!pixman_trapezoid_valid (trap))
./pixman/pixman-trap.c: if (!pixman_trapezoid_valid (trap))
./pixman/pixman-trap.c: if (!pixman_trapezoid_valid (trap))
./pixman/pixman.h:#define pixman_trapezoid_valid(t)23:47 ... ля-ля-ля
pixman_add_trapezoids()
Прекрасно...
for (i = 0; i < ntraps; ++i)
{
const pixman_trapezoid_t *trap = &(traps[i]);if (!pixman_trapezoid_valid (trap))
continue;pixman_rasterize_trapezoid (image, trap, x_off, y_off);
}
// *traps перед чтением никто не проверял на NULL !!! Отправляем репорт?
Или пороем код, мож там все нормально? Хрен, мне за это не платят.А тем временем уже 23:50
23:50 роем дальше...
pixman_rasterize_trapezoid()
pixman_add_trapezoids()
get_trap_extents()23:54 Вот эти 4 нужно искать
23:56 pixman_rasterize_trapezoid() юзается в cairoСколько рыть софта, чтоб нарыть возможную багу от этого исправления?! Почти все на GTK ?
23:57 - 23:17 = 50 минут на поверхностный анализ ОДНОЙ баги!
Ещё 6 баг + обед и рабочий день закончен! А в дверь ломятся юзера, начальники, посредники,
баба Клава провод перегрызла шваброй, пинг тормозит, ддосят твари, спамботы шарются по сайам,
почта оверхедется от спамассасина с кламавом....
Нужно было wallet.dat сконифолить у кулхацкеров )
для майнинга не обязателен кошелек - всё равно все сидят в пуле
> Нужно было wallet.dat сконифолить у кулхацкеров )Чтобы майнить - не обязательно кошелек притаскивать. Можно к пулу прицепиться. Совсем кстати не факт что хацкерскому.
Загрузил BOINC, и начал искать *своих*
> поддержании системы в актуальном состоянииНу например с самыми энтерпрайзными промышленными стабильными дистрибутивами типа Debian или RH это невозможно в принципе.
У них есть security updates вообще-то.
> У них есть security updates вообще-то.это где redhat бывает добавляет новые дыры ?
> это где redhat бывает добавляет новые дыры ?Почему во множественном числе?
> это где redhat бывает добавляет новые дыры ?Не ошибается лишь тот кто ничего не делает. Пользуйся DOS 1.0, там уж точно новых дыр никто не добавит.
Долбодятел?Обновления безопасности в Дебиане бывает и раньше апстрима появляются.
http://www.debian.org/security по десятку-два фиксов в неделю.Ну иногда и SSH патчат, не без того :)
вообще то есть Debian unstable который стабильней всех остальных и при этом актуальный
Нужно понимать, где chroot-тить, где монтировать ro, где монтировать noexec, где следить rkhunter-ом, и вообще иметь голову и прямые руки, и всё будет хорошо даже на дырявой венде.
Как в дырявой винде чрутнуться? А как смонтировать раздел с noexec? А rkhunter там будет работать?
> Как в дырявой винде чрутнуться? А как смонтировать раздел с noexec? А
> rkhunter там будет работать?Мне понравился этот вопрос. Только одна поправка слово дырявая применимо не только к винде, не расценивайте это как троллинг. Это отражение суровой реальности. Но ваш вопрос действительно классный даже настроение подняли
На виндузе свои приблуды, о которых мне увы не известно.
Какое актуальное и свежее исследование. Еще немного поисследует парень и откроет миру руткиты.