Как стать автором
Обновить
1
0

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

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

Похек Wi-Fi встроенными средствами macOS

Время на прочтение13 мин
Количество просмотров65K


TL;DR Встроенные средства macOS позволяют выполнить некоторые атаки на Wi-Fi-сети. В статье описывается, как с помощью встроенного в Macbook Wi-Fi адаптера AirPort и macOS похекать Wi-Fi.

Обычно для аудита безопасности Wi-Fi-сетей используется классическая связка: виртуалка с Kali Linux + внешний USB адаптер типа Alfa AWU-blabla1337. Но оказывается, что с помощью macOS и встроенного адаптера Broadcom тоже можно делать грязь.

Содержимое статьи:

  • Мониторный режим на встроенном адаптере
  • Расшифровываем WPA трафик
  • Ловим хендшейки и PMKID
  • Собираем под макось пацанские тулзы: hcxtools, hashcat, bettercap
  • Брутим хеши на онлайн-фермах и локально

Йоу, камон мазафака
Всего голосов 45: ↑44 и ↓1+60
Комментарии29

Умный дом с Xiaomi на примере бани

Время на прочтение12 мин
Количество просмотров77K
В интернете довольно много обзоров и видеороликов о построении умных домов. Бытует мнение, что все это достаточно дорого и хлопотно в организации, то есть, в целом, удел гиков. Но прогресс не стоит на месте. Устройства становятся более дешевыми, при этом более функциональными, а проектирование и монтаж – довольно простыми. Однако, в основном, обзоры фокусируются на 1-2 примерах использования, практически не покрывая нюансы и не создавая целостной картины. Поэтому в данной статье я хочу сделать обзор законченного проекта, продемонстрировать сценарии использования и встретившиеся подводные камни в построении умного дома с помощью устройств Xiaomi на примере бани. Описанные идеи с небольшими вариациями можно применить и при автоматизации квартиры.

image

Читать дальше →
Всего голосов 32: ↑30 и ↓2+35
Комментарии99

Linux Kernel Library: ядро Linux в форм-факторе so или dll

Время на прочтение13 мин
Количество просмотров14K

Когда-то читал статью о выборе файловых систем «чтоб везде-везде работало». В ней в очередной раз увидел жалобы, что Ext4 замечательная файловая система, но на Windows есть только кривые неточные проприетарные драйверы. Но отмотаем ленту ещё на пару лет назад: тогда на Хабре (а в те времена — Гиктаймсе) пролетала новость про LibOS — попытку превратить Linux kernel в обычную библиотеку пользовательского режима. Упор там делался на вынос сетевого стека в user space. Как-то раз я решил поглядеть, а жив ли вообще проект, и в их блоге увидел ссылку на своего рода конкурента — проект Linux Kernel Library (LKL). По сути, это порт ядра, так сказать, на аппаратную архитектуру «библиотека пользовательского режима POSIX / Win32».


Чем интересна LKL? Во-первых тем, что она живёт и здравствует, пусть и не в основной кодовой базе ядра. Во-вторых, это более-менее честная поддержка «архитектуры», автоматически делающая доступной бОльшую часть ядра. Более того, прямо в комплекте идут утилиты-примеры: cptofs/cpfromfs, fs2tar, lklfuse. В этой статье мы протестируем LKL на хостовом Linux, заглянем в файл с образом Ext4 (Btrfs, XFS...) без рута и виртуалок и коротко обсудим, как её можно попробовать на Windows.

Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии5

VPN в каждый дом или как приручить Дракона

Время на прочтение4 мин
Количество просмотров77K

Ниже я расскажу о том, как заменить ваш VPN провайдер собственным сервером, развернутым на DigitalOcean с использованием WireGuard.


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


Решение достаточно простое — развернуть свою VPN ноду.


Я хочу сделать это просто

Читать дальше →
Всего голосов 34: ↑27 и ↓7+20
Комментарии130

5 способов полезного использования Raspberry Pi

Время на прочтение5 мин
Количество просмотров165K
Привет Хабр.

Raspberry Pi наверное есть дома почти у каждого, и рискну предположить, что у многих она валяется без дела. А ведь Raspberry это не только ценный мех, но и вполне мощный fanless-компьютер с Linux. Сегодня мы рассмотрим полезные возможности Raspberry Pi, для использования которых код писать не придется совсем.

Для тех кому интересно, подробности под катом. Статья рассчитана для начинающих.
Читать дальше →
Всего голосов 58: ↑53 и ↓5+48
Комментарии132

Как начать использовать User Mode в Linux

Время на прочтение17 мин
Количество просмотров20K
Вступление от переводчика: На фоне массового входа в нашу жизнь различного рода контейнеров может быть довольно интересно и полезно узнать, с каких технологий это всё начиналось когда-то. Некоторые из них можно с пользой применять и по сей день, но не все о таких способах помнят (или знают, если не застали во время их бурного развития). Одной из таких технологий является User Mode Linux. Автор оригинала изрядно покопалась, разбираясь, что из старых наработок ещё работает, а что уже не очень, и собрала нечто вроде пошаговой инструкции о том, как самому себе завести доморощенный UML в 2к19. И да, мы пригласили на Хабр автора оригинального поста Cadey, так что если есть вопросы — задавайте на английском в комментариях.

image

User Mode в Linux — это, фактически, порт ядра Linux на само себя. Этот режим позволяет запустить полноценное ядро Linux в качестве пользовательского процесса и обычно используется разработчиками для тестирования драйверов. Но также этот режим полезен и в качестве инструмента общей изоляции, принцип которой схож с работой виртуальных машин. Данный режим обеспечивают большую изоляцию, чем Docker, но меньшую, чем полноценная виртуальная машина вроде KVM или Virtual Box.
Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии14

Самодельный сканирующий лазерный дальномер

Время на прочтение13 мин
Количество просмотров76K

image
В этой статье я расскажу о том, как я делал самодельный лазерный сканирующий дальномер, использующий триангуляционный принцип измерения расстояния, и об опыте его использования на роботе.

Читать дальше →
Всего голосов 48: ↑48 и ↓0+48
Комментарии44

Катаемся на Xiaomi Vacuum Cleaner

Время на прочтение4 мин
Количество просмотров43K
Вот и пришли новогодние праздники, а с ними и куча свободного времени, да еще и умный пылесос угодил ко мне в руки. Как только я увидел в приложении MiHome ручное управление, я сразу понял, что хочу сделать: будем управлять пылесосом с помощью геймпада Dualshock v4!
Всего голосов 43: ↑42 и ↓1+41
Комментарии14

Linux и бесплатные облачные хранилища

Время на прочтение8 мин
Количество просмотров96K
В попытках подмонтировать MS Onedrive в линуксе возникла мысль — а какие вообще бывают облака, которые нормально монтируются в папку и при этом предлагают максимальный объем? Ниже — небольшой список сервисов и впечатления от попыток примонтировать их.
Сразу скажу — это все делалось только для удовлетворения любопытства, а не для последующего использования — потому не могу сказать, как себя поведут предложенные решения в долговременном плане. Но, возможно, кому-то будет полезно.
Облака выбирались по двум параметрам — максимальный бесплатный объем (желательно получаемый без нескольких десятков регистраций по вашей реферральной ссылке) и возможность монтирования в папку под линуксом.

Процесс тестирования состоял из
1) Регистрация или вспоминание пароля (если я уже был зарегистрирован на этом сервисе)
2) Попытка добавить свободное место по реферральной ссылке — чтобы проверить, как выглядит процесс и насколько просто самостоятельно «накрутить» себе место.
3) Попытка подключить облако в папку под линуксом (там, где работает WebDAV — использовал davfs2, где не работает — другие доступные варианты).
4) Если попытка удачная, то несколько попыток загрузить разные файлы — какая-нибудь мелочь в пределах мегабайта, 50-70 мегабайт и 1,6 гигабайта.
Эксперименты производились на hetzner'овском VPS с одним ядром и гигабайтом оперативки (debian stable).

Я не смотрел на: цены, удобство клиентов, возможности коллективной работы, встроенные редакторы и т.п. Это всё для полноценного сравнения сервисов, которым я заниматься не хочу. Кому лень читать буквы, в конце табличка.
Читать дальше →
Всего голосов 42: ↑39 и ↓3+36
Комментарии84

Курс MIT «Безопасность компьютерных систем». Лекция 3: «Переполнение буфера: эксплойты и защита», часть 1

Время на прочтение14 мин
Количество просмотров10K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Всего голосов 16: ↑15 и ↓1+14
Комментарии0

Курс о Deep Learning на пальцах

Время на прочтение2 мин
Количество просмотров174K
Я все еще не до конца понял, как так получилось, но в прошлом году я слово за слово подписался прочитать курс по Deep Learning и вот, на удивление, прочитал. Обещал — выкладываю!

Курс не претендует на полноту, скорее это способ поиграться руками с основными областями, где deep learning устоялся как практический инструмент, и получить достаточную базу, чтобы свободно читать и понимать современные статьи.

Материалы курса были опробованы на студентах кафедры АФТИ Новосибирского Государственного Университета, поэтому есть шанс, что по ним действительно можно чему-то научиться.


Читать дальше →
Всего голосов 117: ↑117 и ↓0+117
Комментарии31

Насколько хорошо ты знаешь bash?

Время на прочтение4 мин
Количество просмотров39K

Пользуешься командным интерпретатором каждый день? Готов решить несколько логических задачек и узнать что-то новое? Добро пожаловать под кат.
Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Комментарии31

Обходим ASLR для Linux по-новому

Время на прочтение37 мин
Количество просмотров16K


Ядро Linux широко распространено во всем мире как на серверах, так и на пользовательских машинах, на мобильных платформах (ОС Android) и на различных «умных» устройствах. За время существования в ядре Linux появилось множество различных механизмов защиты от эксплуатации уязвимостей, которые могут существовать как в самом ядре, так и в приложениях пользователей. Такими механизмами является, в частности, ASLR и stack canary, противодействующие эксплуатации уязвимостей в приложениях.

Читать дальше →
Всего голосов 50: ↑50 и ↓0+50
Комментарии6

Шпоры по сертификатам X.509

Время на прочтение8 мин
Количество просмотров105K
Чудище обло, озорно, огромно, стозевно и лаяй.

Набор технологий, который мы по привычке именуем сертификатами SSL, представляет из себя здоровенный айсберг, на вершине которого зеленый замочек слева от доменного имени в адресной строке вашего браузера. Правильное название X.509 сертификат, который восходит к X.500 стандарту ITU-T DAP (Directory Access Protocol). DAP не взлетел, в IETF его посчитали неудобным для использования со всеми этими OSI нагромождениями и вместо него придумали LDAP, Lightweight DAP где первая буква обозначает «легковесный». Те, кому пришлось настраивать, или что хуже производить его отладку могут оценить иронию в полной мере. Никогда еще первая буква аббревиатуры так не лгала, не считая SNMP.


Шпоры


Кстати что общего между LDAP, SNMP и X.509 ну кроме того, что им еще не скоро предстоит собрать стадионы фанатов? Их объединяет ASN.1 — мета-язык описания объектов древности. Если бы эти технологии создавали сейчас, в ход бы пошли XML, DTD или какой-нибудь другой ML. Но в то время стандарты создавались титанами, для которых даже SNMP был простым делом.

Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии12

Заменяем бут-анимацию Android устройства на мелькающие логи Linux ядра

Время на прочтение3 мин
Количество просмотров35K
После разработки кастомного загрузчика для своего телефона мне захотелось реализовать вывод ядерных логов на дисплей, как это умеют делать десктопные дистрибутивы Linux. А всё потому, что лично мне при загрузке телефона намного интереснее наблюдать мелькающие kmsg логи, нежели наблюдать сначала логотип загрузчика, а затем ещё и бут-анимацию Android системы. За два года «скучные обоины» уже приелись.

Сейчас попытаюсь вкратце рассказать о модуле LLCON для Android ядра, который реализует низкоуровневый вывод kmsg логов на дисплей.
Всего голосов 61: ↑56 и ↓5+51
Комментарии28

Как отлаживать Android ядро без UART, JTAG и прочих

Время на прочтение4 мин
Количество просмотров11K
Довольно часто разработчики ядер под Android устройства сталкиваются с тем, что собранное из исходников ядро просто напросто не работает. И при этом часто разработчик, собравший ядро, не имеет никаких специальных средств для отладки. В данной ситуации без kmsg логов довольно трудно что либо сделать. Конечно же в Linux ядре уже имеется несколько способов копирования содержимого kmsg буфера в специальную область памяти, но если вам интересно узнать ещё об одном способе, то прошу под кат.
Читать дальше →
Всего голосов 19: ↑17 и ↓2+15
Комментарии9

Мобильные устройства изнутри. Разметка памяти, структура файлов описания и разметки памяти

Время на прочтение19 мин
Количество просмотров38K

1. Введение


Как оказалось, разметка физической памяти мобильных устройств (МУ) это малоописанный раздел знаний, необходимых разработчику. Т.к. память существует во всех устройствах, созданных на основе микропроцессоров или микроконтроллеров, а их уже миллиарды, то это еще и очень-очень востребованный раздел знаний.

Эта статья посвящена аспектам разметки памяти только МУ, т.к. именно здесь существует тесно свитый разными производителями клубок из файлов описания разметки при почти полном отсутствии теоретических данных о структуре самих этих файлов.

Разметка физической памяти МУ формируется на основании таблиц или списков описаний параметров разделов памяти. Практически каждая фирма-производитель МУ имеет свою форму (структуру) этих таблиц. Тем не менее, все описания параметров разделов имеют много общего, что позволяет рассматривать их в едином контексте.

На основе таблиц описаний затем формируются файлы разметки памяти, которые в виде образов разделов прошиваются непосредственно в память МУ.
Читать дальше →
Всего голосов 28: ↑25 и ↓3+22
Комментарии7

Книги для системного администратора. Моя книжная полка

Время на прочтение6 мин
Количество просмотров482K
Книги.
Я считаю, что важнейшим инструментом получения скилов системного администрирования являются именно они — книги.
Нет специальных факультетов, обучающих «админству» — каждый постигает это самостоятельно. Путем проб, ошибок и боли, потере важных данных различных злоключений.
В начале пути сложно определиться, что же нужно прочесть — ведь массив информации столь огромен!
В данном посте я хочу собрать наиболее важные и значимые труды для системных администраторов.
Уклон будет на *nix админство, но, надеюсь тема окажется небезынтересной и для Windows коллег и в комметариях они заполнят мои пробелы.
Пост субьективен и отражает лишь мой собственный опыт — я раскажу о книгах, которые помогли моему становлению.

Читать дальше →
Всего голосов 51: ↑46 и ↓5+41
Комментарии45

Составляем DNS-запрос вручную

Время на прочтение7 мин
Количество просмотров53K
Об авторе. Джеймс Рутли — бэкенд-разработчик в компании Monzo.

В этой статье мы изучим двочиный формат сообщений Domain Name Service (DNS) и напишем вручную одно сообщение. Это больше, чем вам нужно для использования DNS, но я подумал, что для развлечения и в образовательных целях интересно посмотреть, что находится под капотом.

Мы узнаем, как:

  • Написать запросы DNS в двоичном формате
  • Отправить сообщение в теле датаграммы UDP с помощью Python
  • Прочитать ответ от DNS-сервера

Писать в двоичном формате кажется сложным, но в реальности я обнаружил, что это вполне доступно. Документация DNS хорошо написана и понятна, а писать мы будем маленькое сообщение — всего 29 байт.
Читать дальше →
Всего голосов 21: ↑21 и ↓0+21
Комментарии8

Как выйти на путь разработки ОС

Время на прочтение10 мин
Количество просмотров34K
Данная статья служит одной простой цели: помочь человеку, который вдруг решил разработать свою операционную систему (в частности, ядро) для архитектуры x86, выйти на тот этап, где он сможет просто добавлять свой функционал, не беспокоясь о сборке, запуске и прочих слабо относящихся к самой разработке деталей. В интернете и на хабре в частности уже есть материалы по данной теме, но довольно трудно написать хотя бы “Hello world”-ядро, не открывая десятков вкладок, что я и попытаюсь исправить. Примеры кода будут по большей части на языке C, но многие другие языки тоже можно адаптировать для OSDev. Давно желавшим и только что осознавшим желание разработать свою операционную систему с нуля — добро пожаловать под кат.
Читать дальше →
Всего голосов 41: ↑39 и ↓2+37
Комментарии22

Информация

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