Linux-бэкдор скрывается в легитимном сетевом трафике

Компания Symantec в результате разбора атаки на одного из крупных хостинг-провайдеров выявила новый вид бэкдора для GNU/Linux, cообщает opennet.ru.

Бэкдор выполнен в форме разделяемой библиотеки, перехватывающей ряд стандартных вызовов, таких как read, EVP_CipherInit, fork и ioctl. Библиотека связывается с работающими на системе сетевыми процессами, такими как sshd, берёт на себя обработку указанных вызовов и получает контроль над трафиком поражённых серверных приложений. При работе бэкдор не сохраняет файлов, не создаёт сокетов и не инициирует сетевые соединения, прикрываясь в своей активности поражённым серверным процессом, что затрудняет его обнаружение. Управляющие команды передаются в составе штатного сетевого трафика, через интеграцию подставных блоков. Бэкдор отслеживает появление в нормальном, не вызывающем подозрение, трафике маску “:!;.”, при обнаружении которой декодирует следующий за ней блок данных. Данные зашифрованы с использованием шифра Blowfish и следуют в формате Base64. Через закодированные блоки, примешанные в обычный трафик, могут передаваться управляющие команды для выполнения произвольной shell-команды или отправки в ответ накопленных бэкдором данных. Основной функцией бэкдора является перехват и накопление конфиденциальных данных, таких как пароли, ключи шифрования и email-адреса. В частности, поддерживается перехват паролей и SSH-ключей пользователей, подсоединяющихся к поражённой системе. Читать

Джефф Дин из компании Google — это Чак Норрис нашего времени

«Джефф Дин компилирует и запускает свой код перед коммитом, но только чтобы проверить на баги компилятор и CPU», — вот один из множества шуточных фактов о Джеффе Дине.

Джефф Дин считается кем-то вроде Чака Норриса. Отличие только в том, что он вовсе не герой боевиков, а инженер-программист компании Google.

Шутки о нём впервые появились на 1 апреля шесть лет назад. Один из коллег Дина по имени Кентон Варда открыл страничку, куда каждый мог добавлять факты о Джеффе Дине. Идею с энтузиазмом подхватили другие разработчики — и вскоре наполнили страничку множеством таких «фактов».

«Я ни с кем никогда не согласовывал это, — говорит Кентон Варда, — просто сделал, потому что подумал, это будет весело и народу понравится. Так всё происходит в компании Google. Но моя маленькая шутка и близко не может сравниться с самыми большими и смешными проектами в корпоративной сети».

«Когда Джефф Дин разрабатывает программу, то сначала создаёт бинарник, а потом пишет исходный код как документацию».

«Джефф Дин однажды не прошёл тест Тьюринга, потому что правильно установил 203-е число Фибоначчи менее чем за секунду».

«Джефф Дин родился 31 декабря 1969 года в 23:48. Ему потребовалось 12 минут, чтобы запустить свой первый счётчик времени».

Джефф Дин даже если захочет, уже не сможет избавиться от имиджа Чака Норриса. Впрочем, его вряд ли заботят такие мелочи. Один из ведущих программистов Google считается соавтором ключевых инфраструктурных систем компании, включая MapReduce, BigTable и Spanner. Читать

Для чего нужны Zeroconf и Avahi.

Я, как старый линуксоид, когда впервые установил Ubuntu и увидел незнакомое слово avahi, конечно же сразу посмотрел в google. Потыкался в несколько ссылок, увидел другие непонятные слова, типа zeroconf, multicast dns, bonjour. Сразу понял, что это какая то мутная технология от Apple и нафиг мне ненужная.

Однако, с ростом локальной сети внутри моей квартиры, подумал, что неплохо бы было полюбопытствовать, как можно приспособить zeroconf, чтобы облегчить себе жизнь.

Давайте разберемся с терминологией:

  1. Zeroconf — это протокол, разработанный Apple и призванный решать следующие проблемы:
    • выбор сетевого адреса для устройства;
    • нахождение компьютеров по имени;
    • обнаружение сервисов, например принтеров.
  2. Avahi — открытая и свободная реализация протокола zeroconf.
  3. Bonjour — open-source реализация протокола zeroconf от Apple.

Читать

Прозрения псто

Исторически так сложилось, что я всегда для подключения к p2p сети DC++ пользовался linuxdcpp. Сравнительно недавно перешл на Eiskaltdcpp.

Все бы хорошо, всем вроде доволен, но начал меня напрягать досадный баг, в менюшках значки все заменены на перечеркнутый круг, т.е. типа нет такого значка в системе. Вот сегодня, сижу дома, на больничном, времени свободного дох… много. Решил тупо снести прогу и поставить снова. И тут, для тех, кто не в курсе, небольшая заметка. Дело в том, что данная программа имеет два интерфейса, GTK  и QT. Поскольку я всегда под гномом жил, у меня стоял GTK. Так вот, переставляю я программу, запускаю…. а там чудо из чудес! Множество функций неведомых, старых множества наоборот нет… Короче по какой то причине, встал у меня дефолтом QT интерфейс, а в нем оказались пофиксены куча мелких, но неприятных багов.

 

Вывод первый, если у софтины много интерфейсов – тестить все, ибо именно от фронтенда зависит доступный функционал.

Вывод второй, софт на GTK развивается хреново, желательно переходить на QT, или вообще на кеды.

Управление VLC плеером с Android устройства

Что бы управлять плеером с андроид устройства, нужно три вещи:

1. Включить в VLC плеере (на компьютере) WEB интерфейс.

2. Установить на android устройство специальное приложение (в принципе не обязательно, но так удобнее).

3. Что бы компьютер и мобильное устройство были в одной сети (не обязательно, но очень желательно)

Итак. Теперь по каждому пункту подробнее:

1. Не зависимо от платформы (Linux, Win, Mac), веб интерфейс включается через “Вид”->”Добавить интерфейс”->”Веб интерфейс”. В после этого, можно подключаться на http://localhost:8080, и управлять плеером.

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

  • Windows – C:\Program Files (x86)\VideoLAN\VLC\lua\http ( “Program Files” вместо “Program Files (x86)” на 32х битных версиях Windows.)
  • Mac OS X – /Applications/VLC.app/Contents/MacOS/share/lua/http/.hosts
  • Linux – /usr/share/vlc/lua/http/.hosts Читать

Очень волшебная кнопка.

Вчера выхватил забавный баг. Оказывается на некоторых ядрах, если нажать Alt + SysRq + J. Ведро начинает спамить в сислог и кернел лог сообщением типа:

Oct  6 00:54:45 citadel kernel: [43044.278885] Emergency Thaw on sdd1

После чего кончается место на разделе, и система тухнет.

Вот тут https://bugzilla.kernel.org/show_bug.cgi?id=47741 есть небольшой список подверженных багу версий ядер.

А вот тут https://bugs.launchpad.net/ubuntu/+source/linux/+bug/984273 этот же баг в багтрекере убунты. Если не лень, тыкайте на This bug affects you and 3 other people Edit , и выбирайте “Yes, affect me too”. Таким образом можно привлечь внимание девелоперов к этому делу.

История создания электронной почты

Электронная почта как средство коммуникации возникла не в 1971 г., как об этом нередко можно прочитать в популярных изданиях, а несколько раньше. По одной из версий, это произошло летом 1965 г., когда Ноэль Моррис и Том ван Влек написали в Массачусетском технологическом институте (MIT) программу MAIL для операционной системы Compatible Time-Sharing System (CTSS), установленной на компьютере IBM 7090/7094. Идея включения MAIL в CTSS была закреплена в документе Programming Staff Note 49 (декабрь 1964 – январь 1965 г.). Сама команда MAIL, встроенная в операционную систему, позволяла пользователям CTSS передавать друг другу текстовые сообщения в рамках одного компьютера. Она имела формат:

MAIL <код проблемы> <код программиста>

(пример: MAIL M1416 2962), Читать

Андроид вирус

Вчера жена получила СМС от абонента с именем “email”, т.е. номер был скрыт. В тексте сообщения было только “Фотки наши выложила сюда”, и дальше ссылка. Если ткнуть на ссылку, скачивается photo.apk, и предлагает установиться.

К счастью, при запросе на установку можно нажать “отмена”, и ничего страшного не произойдет. Ноне у всех на это хватит сообразительности.

Ради интереса попробовал скачать эту хрень. Что примечательно, с компа не скачивается, перенаправляет на сайт МТС. Скачал с телефона, закинул на комп, и проверил каспером. На что получил сообщение – в файле содержится HEUR:Trojan-SMS.AndroidOS.Opfake.a

На данную тему, гугль вывалил кучу информации. Как не трудно догадаться, вирусняк отправляет СМС на платные номера, но кроме этого делает еще некоторые интересные вещи.

Подробности тут: http://www.securelist.com/ru/blog/207764524/Zhadnyy_troyanets

Переменные в скриплетах и jstl

Хороший пример поясняющий, как получить доступ к переменной JSP из скриплета, и наоборот:

<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<c:set var="myTest" value="testValue"/>
#1:<c:out value="${myTest}" />
#2:<%=pageContext.getAttribute("myTest") %>

<c:set var="anotherTest" value="anotherValue" scope="request"/>
#1:<c:out value="${anotherTest}" />
#2:<%=request.getAttribute("anotherTest") %>

JSP и include

В jsp есть два вида include.
Первый – <jsp:include page=”uri”/>
Второй – <%@include file=”uri”%>

В книгах и в документации много разного понаписано по этому поводу, чаще всего пишут, что тегом подключается статическая страница, а директивой – страница с jsp. Но это фигня.

Вот самое лучшее объяснение, которое я нашел:

Перед выполнением, jsp страницы компилируются контейнером. После компиляции директивы вида:

<@include file="reuse.html">

при дезассемблировании, получим:

out.write("<html>\r\n");
out.write("    <head>\r\n");
out.write("        <title>reusable</title>\r\n");
out.write("        <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\r\n");
out.write("    </head>\r\n");
out.write("    <body>\r\n");
out.write("        <img src=\"candle.gif\" height=\"100\" width=\"50\"/> <br />\r\n");
out.write("        <p><b>As the candle burns,so do I</b></p>\r\n");
out.write("    </body>\r\n");
out.write("</html>\r\n");

Читать