Обновить
3
0

Пользователь технологий

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

LFS: Темная сторона силы. Часть 2

Время на прочтение13 мин
Охват и читатели20K

Предисловие


Итак, в предыдущей статье мы начали собирать LFS, остановившись на том, что собрали временную систему, располагающую всем необходимым для дальнейшей сборки инструментарием.

Теперь мы будем собирать основную систему, выполняя по пути необходимые для работы настройки. Поскольку эта статья продолжает цикл об LFS, без особых предисловий приступим к делу.

Однако, прежде чем двигаться дальше, немного отойдем от классической схемы, предлагаемой авторами книги и сделаем вот что

$ su - lfs
$ wget http://roy.marples.name/downloads/dhcpcd/dhcpcd-6.7.1.tar.bz2 --directory-prefix=$LFS/sources
$ wget http://www.linuxfromscratch.org/blfs/downloads/7.7/blfs-bootscripts-20150304.tar.bz2 --directory-prefix=$LFS/sources
$ logout


Дело в том, что стандартная документация, касающаяся сборки базовой системы не описывает процесс настройки сети в случае, когда вы будете получать ip-адрес от DNS провайдера, или в случае, если динамический ip выдает вам ваш домашний роутер. Или в том случае, если Вы выполняете сборку под ВМ, имеющей доступ к сети через NAT.

Поэтому после того как мы соберем всё и вся, мы дополнительно установим и настроим DHCP-клиент, который позволит свеженькой системе получить ip сразу после перезагрузки и иметь таки доступ в сеть. Этот шаг относится уже к книге BLFS.
Читать дальше →

Что такое TLS

Время на прочтение9 мин
Охват и читатели559K
Данный текст является вольным переводом вот этой главы замечательной книги «High Performance Browser Networking» авторства Ильи Григорика. Перевод выполнялся в рамках написания курсовой работы, потому очень вольный, но тем не менее будет полезен тем, кто слабо представляет что такое TLS, и с чем его едят.

Общие сведения о TLS

Протокол TLS (transport layer security) основан на протоколе SSL (Secure Sockets Layer), изначально разработанном в Netscape для повышения безопасности электронной коммерции в Интернете. Протокол SSL был реализован на application-уровне, непосредственно над TCP (Transmission Control Protocol), что позволяет более высокоуровневым протоколам (таким как HTTP или протоколу электронной почты) работать без изменений. Если SSL сконфигурирован корректно, то сторонний наблюдатель может узнать лишь параметры соединения (например, тип используемого шифрования), а также частоту пересылки и примерное количество данных, но не может читать и изменять их.
Читать дальше →

Неизвестный Smalltalk

Время на прочтение10 мин
Охват и читатели33K


Уважаемые читатели хабра. Прежде всего я хочу объяснить, что обзор языка Smalltalk делает в корпоративном блоге FLProg. Дело в том, что и сама программа FLProg и сайт программы написаны на этом замечательном языке. Его возможности и огромная скорость разработки на нём позволяют мне одному поддерживать и постоянно увеличивать функциональность как сайта, так и программы. Если интересно, как мне это удается – прошу под кат.
Подробности

Car Hacking: так ли безопасны системы безопасности автомобиля?

Время на прочтение18 мин
Охват и читатели55K


Автомобили обросли огромным количеством электроники, начиная со спидометра и заканчивая контроллером тормозной системы. Все эти устройства связаны в единую локальную сеть, что дает простор для попыток влезть в нее и немного там обжиться. В этой статье я расскажу, как устроен среднестатистический автомобиль, и постараюсь посеять в тебе паранойю и страх (смайл).
Читать дальше →

Почему вас все равно взломают

Время на прочтение7 мин
Охват и читатели80K
Тему этой небольшой статьи навеяла небольшая дискуссия на хабре, свидетелем которой я стал. Один участник дискуссии был ярым сторонником ОС Linux и утверждал, что если всех простых пользователей перевести на Linux, то все будет просто зашибись – и не взломают и данные не украдут.
Читать дальше →

Взламываем D-Link DIR-890L

Время на прочтение7 мин
Охват и читатели62K
Последние 6 месяцев, я был жутко занят и не следил за новыми хренями от D-Link. Чтобы немного поразвлечься, я зашел на их сайт, и меня поприветствовал этот кошмар:

Insane router
Самый безумный роутер D-Link DIR-890L за $300

Пожалуй, самым «безумным» в роутере является то, что он работает под управлением все той же забагованной прошивки, которую D-Link ставит в свои роутеры вот уже несколько лет…and the hits just keep on coming.
Читать дальше →

Да какого, блин, хрена, D-Link⁈

Время на прочтение2 мин
Охват и читатели81K
Как уже писал в апдейте к посту про баг в HNAP DIR-890L, его нашли в начале года, в DIR-645, и выпустили патч. Сейчас D-Link выпустил патч и для DIR-890L.
Патчи для DIR-645 и DIR-890L одинаковые, поэтому я буду писать только про DIR-890L.

Хоть в предыдущем посте я рассматривал только выполнение команд, патч указывает на несколько дыр в безопасности, которые появились из-за использования strstr для валидации HNAP-заголовка SOAPAction:
  • Использование неаутентифицированных пользовательских данных в вызове system
  • Использование неаутентифицированных пользовательских данных в вызове sprintf
  • Неаутентифицированные пользователи могут выполнять привилегированные HNAP-запросы (такие, как смена пароля администратора)

Видите, D-Link признала все это в информации об уязвимости, и они ясно представляли все векторы атаки.
Итак, убрали ли они переполнение стека sprintf?

image
sprintf(cmd_buf, “sh %s%s.sh > /dev/console”, “/var/run”, SOAPAction);

Нет.
Читать дальше →

Трактат о радиотрактах или некоторые маркетинговые заблуждения о радиосвязи

Время на прочтение9 мин
Охват и читатели38K
Написать данную статью побудило наличие в сети большого количества маркетинговых заблуждений, информации типа «радиооборудование, работающее на дальности в 100км», «радиооборудование работает на полностью закрытых трассах» и т.п. В принципе, маркетинг на то и существует, чтобы приукрасить тот или иной продукт, однако сейчас всё чаще и чаще сталкиваюсь с тем, что многие коллеги воспринимают данные маркетинговые заявления за чистую монету. В статье постараюсь озвучить и обосновать некоторые утверждения, которые конкретизируют некоторую «маркетинговую информацию».
Читать дальше →

Линейная алгебра: пробный заезд

Время на прочтение7 мин
Охват и читатели155K
Привет, Хабр!

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

Часто первое знакомство с линейной алгеброй выглядит как-то так:

image

Не очень вдохновляет, правда? Сразу возникает два вопроса: откуда это все взялось и зачем оно нужно.

Начнем с практики


Когда я занимался вычислительной гидродинамикой (CFD), один из коллег говорил: «Мы не решаем уравнения Навье-Стокса. Мы обращаем матрицы.» И действительно, линейная алгебра — «рабочая лошадка» вычислительной математики:


Читаем дальше...

Организация виртуальной памяти

Время на прочтение14 мин
Охват и читатели86K
Привет, Хабрахабр!

В предыдущей статье я рассказал про vfork() и пообещал рассказать о реализации вызова fork() как с поддержкой MMU, так и без неё (последняя, само собой, со значительными ограничениями). Но прежде, чем перейти к подробностям, будет логичнее начать с устройства виртуальной памяти.

Конечно, многие слышали про MMU, страничные таблицы и TLB. К сожалению, материалы на эту тему обычно рассматривают аппаратную сторону этого механизма, упоминая механизмы ОС только в общих чертах. Я же хочу разобрать конкретную программную реализацию в проекте Embox. Это лишь один из возможных подходов, и он достаточно лёгок для понимания. Кроме того, это не музейный экспонат, и при желании можно залезть “под капот” ОС и попробовать что-нибудь поменять.
Читать дальше →

Как студент баг в Яндекс.Музыке нашел

Время на прочтение1 мин
Охват и читатели83K
Сервис Яндекс.Музыка появился на свет уже довольно давно, как и его приложения в AppStore и GooglePlay, но только совсем недавно он был выпущен на платформу Windows Phone.

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

«В чем же заключается сам баг», — спросите вы. А я отвечу: в версии на Windows Phone можно слушать любую песню любого исполнителя абсолютно бесплатно, в обход подписки. Алгоритм действий, на самом деле, очень прост:
Читать дальше →

Как мы отбивали xss/sql атаку с Nginx и Naxsi

Время на прочтение4 мин
Охват и читатели26K
image
Совсем недавно в разгар рабочего дня от клиента к нам поступила тревожная информация о том, что их сайт подвергается XSS/SQL атакам, часть из которых была успешной. Необходимо было срочно принять меры и настроить базовую защиту в течение нескольких часов, т.к. возможности быстро найти и устранить несовершенства кода у разработчиков не было.

После недолгих раздумий выбор пал на firewall веб-приложений для nginx под названием naxsi, который технически является модулем nginx.
Читать дальше →

История одного выхода в космос

Время на прочтение8 мин
Охват и читатели36K


Создавать космические корабли интересно. Интересно программировать автономные системы — что могут совершить посадку на астероиде, или выйти на орбиту Венеры. Космос интересен.

В эти выходные (5 апреля) Продленка была посвящена космонавтике. Перед этим, когда я узнал, что будет космическая тематика — решил найти 3д модель корабля Восток-1, того самого на котором Гагарин совершил тот исторический полет вокруг Земли — найти модель этого корабля для печати на 3д принтере — для демонстрации ребятам.

Но к своему удивлению сходу найти не удалось…

И возможно это было к лучшему, так как привело к самостоятельному созданию модели — о том как создать космический корабль за час в Екатеринбурге, напечатать на 3д принтере в Москве, подарить модельки школьнику и космонавту на выступлении в Digital October, а потом создать симулятор корабля в космосе и по-управлять им и будет этот рассказ.
Читать дальше →

Аппаратный зал (про инфраструктуру спутниковой сети и осциллограф)

Время на прочтение12 мин
Охват и читатели31K
В прошлом посте я показывал, как выглядит земная станция спутниковой связи снаружи. Теперь давайте немного посмотрим на теорию, плюс спустимся вниз в аппаратный зал. Кабели ПЧ, которые мы видели в контейнерах, приходят сюда. Ну, или уходят отсюда, у нас же «приём» и «передача».



Всё начинается и заканчивается антенной:



Антенна, кроме, собственно, зеркала и облучающей системы, имеет в своём составе волноводные тракты, МШУ и (по варианту) систему автосопровождения, антиобледенения, осушки волноводного тракта. Осторожно, трафик.
Читать дальше →

OSSIM — разворачиваем комплексную open source систему управления безопасностью

Время на прочтение12 мин
Охват и читатели151K


OSSIM (Open Source Security Information Management) — система управления, контроля и обеспечения информационной безопасности.
OSSIM «из коробки» включает в себя такой функционал как:
  • Сбор, анализ и корреляция событий — SIEM
  • Хостовая система обнаружения вторжений (HIDS) — OSSEC
  • Сетевая система обнаружения вторжений (NIDS) — Suricata
  • Беспроводная система обнаружения вторжений (WIDS) — Kismet
  • Мониторинг узлов сети- Nagios
  • Анализ сетевых аномалий – P0f, PADS, FProbe, Arpwatch и др.
  • Сканер уязвимостей – OpenVAS
  • Мощнейшая система обмена информацией об угрозах между пользователями OSSIM — OTX
  • Более 200 плагинов для парсинга и корреляции логов со всевозможных внешних устройств и служб

Читать дальше →

Return oriented programming. Собираем exploit по кусочкам

Время на прочтение8 мин
Охват и читатели28K
Введение
В этой статье мы попробуем разобраться как работает Return Oriented эксплоит. Тема, в принципе, так себе заезженная, и в инете валяется немало публикаций, но я постараюсь писать так, чтобы эта статья не была их простой компиляцией. По ходу нам придется разбираться с некоторыми системными особенностями Linux и архитектуры x86-64 (все нижеописанные эксперименты были проведены на Ubuntu 14.04). Основной целью будет эксплуатирование тривиальной уязвимости gets с помощью ROP (Return oriented programming).
Читать дальше →

Я тебя по сетям вычислю: используем API крупнейших соцсетей в своих корыстных целях

Время на прочтение11 мин
Охват и читатели185K


Ни для кого не секрет, что современные социальные сети представляют собой огромные БД, содержащие много интересной информации о частной жизни своих пользователей. Через веб-морду особо много данных не вытянешь, но ведь у каждой сети есть свой API… Так давай же посмотрим, как этим можно воспользоваться для поиска пользователей и сбора информации о них.

Есть в американской разведке такая дисциплина, как OSINT (Open source intelligence), которая отвечает за поиск, сбор и выбор информации из общедоступных источников. К одному из крупнейших поставщиков общедоступной информации можно отнести социальные сети. Ведь практически у каждого из нас есть учетка (а у кого-то и не одна) в одной или нескольких соцсетях. Тут мы делимся своими новостями, личными фотографиями, вкусами (например, лайкая что-то или вступая в какую-либо группу), кругом своих знакомств. Причем делаем это по своей доброй воле и практически совершенно не задумываемся о возможных последствиях. На страницах журнала уже не раз рассматривали, как можно с помощью различных уловок вытаскивать из соцсетей интересные данные. Обычно для этого нужно было вручную совершить какие-то манипуляции. Но для успешной разведки логичнее воспользоваться специальными утилитами. Существует несколько open source утилит, позволяющих вытаскивать информацию о пользователях из соцсетей.
Читать дальше →

Исследование андроид-вируса

Время на прочтение13 мин
Охват и читатели106K
Всем привет. Недавно мне valdikss рассказал об андроид-вирусе, который может немало навредить пользователю, если он недостаточно внимателен. Мне захотелось узнать его внутренности, т.к. более или менее в последнее время занимаюсь ресерчем андроид приложений, но вирусы никогда еще не исследовал. До его рассмотрения, мне сразу бросилось в глаза название файла — android_update-1.apk. Первым делом делаю то, что делает каждый андроид ресерчер — распаковывает его dex2jar-ом (ну и параллельно можно посмотреть WinRAR-ом список файлов).

dex2jar


Когда я распаковал файл dex2jar-ом у меня получился красивый jar. Я обрадовался и кинулся смотреть его в JD-GUI.

image

Но, к сожалению, JD-GUI не смог полностью декомпильнуть получившийся файл, зато в самом конце файла были интересные строки.
Читать дальше →

Подробно об объектах и классах в PHP

Время на прочтение25 мин
Охват и читатели98K
Сегодня объекты используются очень активно, хотя это трудно было предположить после выхода PHP 5 в 2005 году. Тогда я ещё мало что знал о возможностях этого языка. Пятую версию PHP сравнивали с предыдущей, четвёртой, и главным преимуществом нового релиза стала новая, очень мощная объектная модель. И сегодня, десять лет спустя, около 90% всего PHP-кода содержит объекты, не изменившиеся со времени PHP 5.0. Это убедительно говорит о том, какую роль сыграло внедрение объектной модели, неоднократно улучшавшейся на протяжении последующих лет. В этом посте я хотел бы рассказать о том, как всё устроено «под капотом». Чтобы люди понимали суть процессов — почему сделано так, а не иначе — и лучше, полнее использовали возможности языка. Также я затрону тему использования памяти объектами, в том числе в сравнении с эквивалентными массивами (когда это возможно).

Я буду рассказывать на примере версии PHP 5.4, и описываемые мной вещи справедливы для 5.5 и 5.6, потому что устройство объектной модели там почти не претерпело изменений. Обратите внимание, что в версии 5.3 всё не так хорошо с точки зрения возможностей и общей производительности.

В PHP 7, который пока ещё активно разрабатывается, объектная модель переработана не сильно, были внесены лишь незначительные изменения. Просто потому что всё и так хорошо работает, а лучшее — враг хорошего. Были добавлены возможности, не затрагивающие ядро, но здесь об этом речи не пойдёт.
Читать дальше →

Привязки из вендорного бандла к рабочему проекту Symfony2

Время на прочтение4 мин
Охват и читатели5.6K
Среди php-разработчиков последнее время все сильнее набирает популярность Symfony2. Этот фреймворк позволяет использовать любые модули (в симфони они называются бандлы) для создания базовых фич проекта. По сути стандартная поставка симфони и является набором модулей. Но что если у вас несколько проектов, и вам необходим одинаковый набор функций на них, но подходящего модуля среди открытых нет? Не беда, можно написать свой.
Читать дальше →

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность