Ежемесячные архивы: августа 2011

Открытое железо и Facebook

Среди инженеров, выросших на советских российских предприятиях, почему-то популярна мысль, что OSHW (open-source hardware) — это для лузеров и радиолюбителей. За рубежом наверняка есть инженеры, которые тоже так думают, но есть и те, кто находит места, где OSHW является прекрасным решением проблемы. Например, в апреле этого года Facebook запустил проект Open Compute Project, в рамках которого ведётся разработка полностью открытого железа для сервера дата-центра. Более развёрнутый рассказ про историю и цели проекта можно прочитать тут: How Facebook is open-sourcing its data centers and servers.

Воркшоп по USRP — done

Спасибо всем, кто пришёл — было очень классно со всеми познакомиться. К сожалению, не всех смог сопоставить с виртуальными хэндлами вроде почты и ников. Сорри, если в следующий раз буду переспрашивать.

Семинар по USRP

Судя по всему в октябре будет продолжение, но пока не знаю, что что именно. Предлагайте варианты — кому что интересно.

И ещё раз — мы приглашаем всех принимать участие в жизни хакспейса. Давайте делиться знаниями, устраивать мероприятия, делать совместные проекты. Помните, что хакспейс будет таким, каким мы с вами его сделаем.

PS Новости Neúron можно читать в твиттере: @neuronspace. Пожелания и замечания можно писать туда же, или на почту neuron@hackspace.ru, или здесь в комментариях.

PPS Ребята из МИФИ — напишите, пожалуйста, ваши контакты. Надо организовываться и делать 3D-принтер.

Chaos Communication Camp 2011

Для тех, кто пропустил CCCamp, появились записи лекций (и на ftp). Информацию о лекциях можно найти в расписании.

Кроме лекций на CCCamp было огромное количество интересных людей. Ребята из OWNI.eu сделали отличную подборку интервью с самыми интересными людьми на CCCamp и выложили их в онлайн. Мой личный топ-лист из их интервью:

  • Интервью с John Gilmore — со-основателем Cygnus Solutions, со-основателем Electronic Frontier Foundation (EFF), со-основателем GnuRadio и т.д. и т.п. (wikipedia)
  • Интервью с Frantisek Apfelbeck — главным вдохновителем и основной движущей силой Food Hacking Base на CCCamp.
  • Интервью с James Carlson — основателем проекта School Factory, который ставит целью заменить традиционную школу более эффективными системами peer-to-peer обучения. Я к этому отношусь достаточно скептично, но в рамках School Factory Джеймс делает одно несомненно полезное дело — собирает информацию о существующих хакспейсах, помогает создавать новые и обеспечивает американским хакспейсам юридическую помощь.
  • Интервью с Mitch Altman — создатель популярного гаджета TV-B-Gone, основатель хакспейса Noisebridge и т.д. и т.п.

И просто несколько роликов, чтобы хоть немного представить масштаб и атмосферу мероприятия:

Большое количество фотографий можно посмотреть на soup.io.

Хакатон по безопасности GPRS — отчёт

Кратко — до результата мы ещё не добрались, так что если ждёте готовых результатов, то можете дальше не читать.

Как и предполагалось, ни в понедельник, ни во вторник мы до результата дойти не успели. Что успели сделать и выяснить:

  1. Половина времени в понедельник и часть времени по вторник ушла на то, чтобы скомпилировать весь нужный софт, разобраться, как его запускать и подогнать параметры под наше железо. Так как софт совсем не продакшн и построен по принципу лоскутного одеяла, то это было не очень быстро.
  2. Долго выясняли, какой какой ARFCN (Absolute radio-frequency channel number, номер физического канала) нам записывать. Так как Airprobe не поддерживает EDGE, то нам нужны были телефоны с GPRS, но без EDGE. Таких телефонов у нас всего два — Siemens C60 и Benq-Siemens C72, и ни в одном (пока) нет разлоченного NetMonitor'а. Как выяснилось с помощью NetMonitor на других телефонах, все телефоны МТС в хакспейсе висят на одной и той же соте (ARFCN 753, GSM1800), и мы стали записывать эту частоту в надежде, что наш тестовый телефон тоже будет использовать именно её. Параллельно с записью стучались с Siemens C60 на ya.ru.
  3. После долгого рассматривания записанных данных в Wireshark, стало понятно, что можно было вообще не напрягаться с тестовым телефоном (но это было уже в середине дня вторника): (1) все управляющие сообщения используют стандартную систему кодирования/модуляции GSM, а не EDGE, (2) вокруг достаточно телефонов, постоянно генерирующих трафик, и (3) всё, что видно на основной частоте соты (у нас ARFCN 753) — это перевод дальнейшего общения про GPRS/EDGE (Immediate Assignment) на другую частоту (у нас ARFCN 52, GSM900). Выдержки из декодированных Immediate Assignment: короткая, длинная. К GPRS относятся Immediate Assignment с упоминанием Packet Channel Description, а не Channel Description.
  4. Записали ARFCN 52. Его Airprobe не декодирует, но про это ниже.
  5. Сейчас Airprobe всегда подразумевает, что в записанном канале есть FCCH (канал синхронизации частоты) и SCH (канал синхронизации логических часов TDMA). При чтении записи Airprobe сначала ищет в записи FCCH, а затем декодирует идущий сразу за ним SCH, и только после этого может начать декодировать данные. Важно, что FCCH и SCH вещаются только на основной частоте соты, и отсутствуют на остальных частотах, на которых вещает сота. Обычный телефон, прыгая с одной частоты на другую, сохраняет синхронизацию как по частоте, так и по времени. В нашем же случае, необходимо синхронизировать записи на основной частоте и на частоте GPRS-канала, чтобы после получения синхронизации на основной частоте перескочить на запись GPRS-канала без потери синхронизации.
  6. Положительная новость — если не используется PDCCH, управляющий канал GPRS фиксирован на одной частоте (у нас ARFCN 52, GSM900) и одном тайм-слоте (у нас TS7), т.е. по крайней мере на этом этапе у нас не будет проблем с прыжками по частоте (hoping channels).
  7. На этом в данный момент всё. Дальше будем разбираться, как с помощью USRP записывать два канала одновременно (см пример rx_multi_samples к UHD), модифицировать Airprobe для работы с несколькими частотными каналами и модифицировать Airprobe для записи всех таймслотов без исключения в файл в формате, пригодном для gprsdecode.

Спаисбо всем, кто пришёл в понедельник, чтобы совместно решить задачу. Вместе всегда веселее. Отдельное спасибо Sylvain Munaut за консультации в реальном времени.

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

Воркшоп по USRP в понедельник 29 августа

29 августа (понедельник) 19:00 в Neuron я буду проводить воркшоп по USRP. Начнём с самых азов, а дальше посмотрим по ходу дела. Подозреваю, что будем гооврить так же про использование USRP в целях исследования безопасности беспроводных сетей, но если будет интерес к «мирным» применениям, то поговорим и про них тоже. План-минимум — рассказать следующее:

  1. Что такое Software Defined Radio?
  2. Что такое USRP? Какие бывают USRP и чем отличаются?
  3. Что получается «на выходе» USRP и что с этим можно сделать?
  4. Как «это» обычно делают? :)
  5. Посмотрим простые примеры использования USRP, вроде спектроанализатора.
  6. далее — по заявкам.

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

Приглашаем всех интересующихся — только напишите об этом заранее тут, в твиттер или в почту. Количество (посадочных) мест ограничено. :)

Хакатон по тестированию безопасности GPRS

В понедельник начиная с 17:00 у нас в хакспейсе Neuron будет открытый мини-хакатон посвящённый тестированию стойкости шифрования в московских GPRS-сетях. :) Работать будем по мотивам выступления Карстена Нола на CCCamp'11.

Что нужно будет сделать:

  1. Захватить GPRS-bursts. Для этого или (а) нужен телефон совместимый с osmocomBB и быстрый кабель к нему (это default железо для кода Карстена), или (б) нужно разобраться, как это прикрутить к Airprobe+USRP. Телефона для osmocomBB у меня лично нет, поэтому я буду пробовать вариант (б). Если у кого-то есть подходящий телефон и быстрый кабель к нему — дайте знать, это упростит процесс.
  2. Декодировать полученные bursts инструментарием Карстена. Тут (вроде бы) проблем быть не должно, хотя подводные камни никто не отменял.
  3. Действовать по обстоятельствам.

Для нескольких часов план достаточно агрессивный. Посмотрим, как далеко нам удастся продвинуться.

Присоединяйтесь, если у вас руки заточены под gcc и Wireshark, а голова — под быстрое решение проблем. Знание соответствующих протоколов приветствуется.

Да, кофе-чай и какое-то количество плюшек будет доступно в нашей /dev/kitchen. Остальное приносите с собой.