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

Системный администратор

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

Истинное могущество регулярных выражений

Время на прочтение16 мин
Количество просмотров93K
Как частый посетитель тэга PHP на StackOverflow, я очень часто встречаю вопросы о том, как распарсить какие-то конкретные аспекты HTML, используя регулярные выражения. Самый распространённый ответ на это:
«Ты не можешь парсить HTML с помощью регулярных выражений, потому что HTML не является регулярным. Используй XML парсер, и будет тебе счастье»

Это утверждение — в контексте вопроса — находится где-то между сильно вводящим в заблуждение и абсолютно неправильным. Что я хочу попытаться продемонстрировать в этой статье, так это то, насколько могущественны современные регулярные выражения на самом деле.
Читать дальше →
Всего голосов 182: ↑172 и ↓10+162
Комментарии39

Организация доступа в сеть WI-FI московского метрополитена с точки зрения безопасности

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

Введение


В данном исследовании проанализирована схема работы беспроводной сети московского метрополитена с точки зрения обычного пользователя. В рамках тестирования использовался телефон на Android. Случаи, когда телефон не был ни разу авторизован в сети, рассматриваются в ограниченном формате.
Читать дальше →
Всего голосов 53: ↑52 и ↓1+51
Комментарии54

DevConf:: Хакатон по Yii в ТАСС 18-19 июня 2016

Время на прочтение1 мин
Количество просмотров3.1K
Приглашаем принять участие в первом открытом Yii-хакатоне в ТАСС,
который пройдет в 18-19 июня сразу после условно платной конференции DevConf 2016!

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

Участие в хакатоне бесплатно, но требуется регистрация
Полная информация о месте и требования к участникам на страничке хакатона DevConf
Всего голосов 16: ↑12 и ↓4+8
Комментарии3

I2P: Ускорение асимметричной криптографии с помощью таблиц

Время на прочтение3 мин
Количество просмотров8.3K
Асимметричная криптография в I2P всегда приводила к замедлению работы: алгоритм Диффи-Хельмана при установлении транспортных сессий и, на мой взгляд, неудачный выбор схемы Эль-Гамаля в I2P адресах. Это особенно заметно при работе на слабом железе и floodfill-ах. Предложенный в статье подход основан на использовании некоторых особенностей I2P и позволяет добиться существенного ускорения работы и снижения нагрузки на процессор.

Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии3

Сбор и анализ логов демонов в Badoo

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

Введение


В Badoo несколько десятков «самописных» демонов. Большинство из них написаны на Си, остался один на С++ и пять или шесть на Go. Они работают примерно на сотне серверов в четырех дата-центрах.

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



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

Мы построили такую систему и спешим поделиться подробностями. Наверняка у кого-то из вас будет стоять похожая задача, и прочтение данной статьи убережет от ошибок, которые мы успели совершить.
Читать дальше →
Всего голосов 51: ↑50 и ↓1+49
Комментарии53

Альтернативы Raspberry Pi

Время на прочтение4 мин
Количество просмотров54K
Когда речь заходит об одноплатных компьютерах (single-board computer), вероятно, первым на ум приходит именно Raspberry Pi. Тем более, что недавно вышла третья «малина», которая шустрее и мощнее предыдущих версий. Крохотные компьютеры этой линейки, изначально предназначавшиеся под обучение информатике, способны делать много чего интересного. Эта «машинка» может стать метеостанцией на солнечной энергии, управляющим центром «умного дома», игровой приставкой для любителей 8-битной классики и даже сердцем радиоуправляемых моделей. Тут все зависит от фантазии, желания и прямоты рук.



Но несмотря на все свои особенности и преимущества, Raspberry Pi конечно же несовершенен. На рынке одноплатных компьютеров есть и другие модели. Ниже представлена подборка альтернатив RPi, заслуживающих внимания.

Читать дальше →
Всего голосов 45: ↑30 и ↓15+15
Комментарии122

Статья про микроконтроллер EFM32ZG110F32

Время на прочтение31 мин
Количество просмотров26K
Так уж вышло, что у нас на складе оказалось довольно много микроконтроллеров EFM32ZG110F32, это серия Zero Gecko от компании SiLabs. Контроллеры классные, но пока не особенно популярные, потому я и пишу эту статью.


На правах рекламы мы предлагаем вот такой набор: ARM Cortex-M0+, 32 Кбайт Flash, 4 Кбайт ОЗУ, DMA, I2C, UART, USART, 12-разрядный АЦП, токовый ЦАП, компаратор, аппаратный счетчик импульсов, часы реального времени и разные штуки для снижения энергопотребления в корпусе QFN-24 за $0.96.
upd: да, можно поштучно

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

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

Rogue AP — фальшивые точки доступа

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


Большинство современных устройств запоминают название Wi-Fi сети, к которой они успешно подключались хотя-бы один раз, и сразу же соединяются с ней, если «увидят» её в беспроводном эфире. Эту фичу беспроводных технологий всё чаще и чаще используют злоумышленники — создают т.н. rogue AP (поддельную точку доступа). Такие атаки с каждым годом становятся всё масштабнее, учитывая постоянно увеличивающийся рынок BYOD-устройств и количество критичной информации, содержащейся на них.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Комментарии45

Разъем своими руками для ESP8266 ESP-12

Время на прочтение2 мин
Количество просмотров41K
Многое сказано, написано, создано множество сайтов посвященных модулю ESP8266.

Сегодня добавить о нём, что-то новое, очень сложно. А повторять и озвучивать уже сказанное не всегда правильно и интересно.
Вот и меня завлек этот модуль, и я заказал себе с Китая несколько штук. Когда я понял что это огромное поле для творчества, стала задача: как, не покупая различные и не всегда нужные переходники программировать его. Вот какое я нашёл решение:

image

Если Вам уже интересно, то идем дальше.
Читать дальше →
Всего голосов 25: ↑21 и ↓4+17
Комментарии7

Радиоприёмник из DVB стика за $8 — изучаем SDR с GNURadio

Время на прочтение11 мин
Количество просмотров57K
Каждый день мы пользуемся множеством радио устройств. Однако редко понимаем, как они работают. Эпоха радиолюбителей фактически прошла, оставив в прошлом любителей спаять приёмник ДВ или СВ своими руками. Да и в методах кодирования техника ушла далеко вперёд. Мы часто слышим рассуждения о взломе умных домов на радио протоколах, о ненадёжности радио связи и т.д. Но многие ли из вас пробовали, например, подслушать Z-Wave сеть умного дома соседа и тем более поуправлять ей? Насколько велика эта угроза для вас?

К счастью в наши дни стали доступны очень удобные средства для работы с радио, а именно SDR.

SDR (Software Defined Radio) позволяет программно перестраивать приёмник и передатчик для работы на различных частотах от 20 до 2000 МГц, после чего произвести обработку сигнала на компьютере с помощью цифровых методов. Это существенно отличает SDR от аналоговых схем радиопрёмников и передатчиков, позволяя легко менять алгоритм обработки полученного сигнала.




Существует множество разных программ для обработки радио сигналов. Я изучил наиболее популярную из них GNURadio. Этот пакет позволяет строить процесс обработки из различных блоков, стыкуя их друг с другом в формате потоковой обработки (pipe). Каждый следующий блок принимает данный от одного или нескольких предыдущих, а вывод передаётся другим блокам.

Под катом я расскажу об основах SDR и GNURadio и о том, как за 8 баксов сделать приёмник AM/FM, китайской управляемой розетки, телеметрии со спутника и всего, что вздумается.

Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии47

«Почему всем можно, а мне нельзя?» или реверсим API и получаем данные с eToken

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


Однажды у нас на предприятии встала задача о повышении уровня безопасности при передаче очень важных файлов. В общем, слово за слово, и пришли мы к выводу, что передавать надо с помощью scp, а закрытый ключ сертификата для авторизации хранить на брелке типа eToken, благо их у нас накопилось определенное количество.

Идея показалась неплохой, но как это реализовать? Тут я вспомнил, как однажды в бухгалтерии не работал банк-клиент, ругаясь на отсутствие библиотеки с говорящим именем etsdk.dll, меня охватило любопытство и я полез ее ковырять.

Вообще, компания-разработчик на своем сайте распространяет SDK, но для этого надо пройти регистрацию как компания-разработчик ПО, а это явно не я. На просторах интернета документацию найти не удалось, но любопытство одержало верх и я решил разобраться во всём сам. Библиотека – вот она, время есть, кто меня остановит?
Читать дальше →
Всего голосов 49: ↑48 и ↓1+47
Комментарии78

Я достаю из широких штанин… Highscreen

Время на прочтение4 мин
Количество просмотров11K
8-ядерные процессоры, фотокамеры, которым завидуют некоторые цифровые мыльницы, невероятно чёткие и яркие экраны, сотни тысяч доступных приложений — почти каждый современный смартфон радует своего владельца. Но ровно до тех пор, пока значок батареи в верхнем правом углу предательски не опустеет, по закону подлости, в самый неподходящий момент. Поэтому неудивительно, что вместе с планшетами и смартфонами в карманы, сумки, портфели и бардачки автомобилей ложатся «хвосты» — зарядные устройства для любимых и постоянно необходимых гаджетов.

Производители, конечно, не теряются и предлагают устройства с ёмкими аккумуляторами, но за весьма неумеренную плату — они как никто знают, что покупатель готов платить за удобство и спокойствие. Однако есть исключения — одно из них и попало в наш третий предпраздничный обзор.
Читать дальше →
Всего голосов 44: ↑24 и ↓20+4
Комментарии30

Как в первый раз запустить i2pd: инструкция под Debian/Ubuntu

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


I2p — это сеть со специализацией на анонимности внутрисетевых ресурсов, этим она отличается от сети tor, основной задачей которой являются не внутренние ресурсы, а построение безопасного доступа к интернету. Зная об этих двух особенностях, люди могут гораздо эффективнее работать в обеих сетях.

В i2p ты можешь заниматься множеством вещей: посещать и создавать сайты, форумы и торговые площадки, принимать почту, чатиться и скачивать торренты, и многое многое другое. Программа i2pd способна работать с большим числом программ и сервисов.
Читать дальше →
Всего голосов 45: ↑35 и ↓10+25
Комментарии78

О безопасности UEFI, часть четвертая

Время на прочтение6 мин
Количество просмотров32K
Продолжаем говорить о безопасности UEFI, на этот раз речь пойдет об атаках на NVRAM и защите от них.
Неплохая, казалось бы, идея о том, что на микросхеме SPI можно хранить настройки практически вечно, не полагаясь на ненадежную и зависящую от батарейного питания CMOS SRAM, сыграла с разработчиками UEFI весьма злую шутку, теперь NVRAM с каждой новой версией стандарта обрастает все большим количеством костылей и подпорок, и конца этому процессу не видно. Если вам интересно, что именно пытаются подпереть костылем — эта статья для вас.
По традиции, всех, кто еще по каким-то причинам не читал первые три части — рекомендую начать с них, остальных с нетерпением жду под катом.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии14

Тюним память и сетевой стек в Linux: история перевода высоконагруженных серверов на свежий дистрибутив

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

До недавнего времени в Одноклассниках в качестве основного Linux-дистрибутива использовался частично обновлённый OpenSuSE 10.2. Однако, поддерживать его становилось всё труднее, поэтому с прошлого года мы перешли к активной миграции на CentOS 7. На подготовительном этапе перехода для CentOS были отработаны все внутренние процедуры, подготовлены конфиги и политики настройки (мы используем CFEngine). Поэтому сейчас во многих случаях миграция с одного дистрибутива на другой заключается в установке ОС через kickstart и развёртывании приложения с помощью системы деплоя нашей разработки — всё остальное осуществляется без участия человека. Так происходит во многих случаях, хотя и не во всех.

Но с самыми большими проблемами мы столкнулись при миграции серверов раздачи видео. На их решение у нас ушло полгода.
Читать дальше →
Всего голосов 110: ↑104 и ↓6+98
Комментарии73

15 тривиальных фактов о правильной работе с протоколом HTTP

Время на прочтение7 мин
Количество просмотров232K
Внимание! Реклама! Пост оплачен Капитаном Очевидность!

Ниже под катом вы найдёте 15 пунктов, описывающих правильную организацию ресурсов, доступных по протоколу HTTP — веб-сайтов, «ручек» бэкенда, API и прочая. «Правильный» здесь означает «соответствующий рекомендациям и спецификациям». Большая часть ниженаписанного почти дословно переведена из официальных стандартов, рекомендаций и best practices от IETF и W3C.



Вы не найдёте здесь абсолютно ничего неочевидного. Нет, серьёзно, каждый веб-разработчик теоретически эти 15 пунктов должен освоить где-то в районе junior developer-а и/или второго-третьего курса университета.

Однако на практике оказывается, что великое множество веб-разработчиков эти азы таки не усвоило. Читаешь документацию к иным API и рыдаешь. Уверен, что каждый читатель таки найдёт в этом списке что-то новое для себя.
Читать дальше →
Всего голосов 191: ↑186 и ↓5+181
Комментарии120

Как не нужно строить сети

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

Доброго времени суток.
На самом деле никогда не думал, что буду писать статью про такие банальные вещи, но уже в пятый раз сталкиваюсь с наплевательским отношением к простейшим правилам построения сетей. Если бы речь шла о каких-то мелких конторках, но подобное имеет место быть у крупных провайдеров, банков и госконтор, имена которых я по некоторым причинам раскрывать не буду.
Читать дальше →
Всего голосов 45: ↑43 и ↓2+41
Комментарии14

Современные RAID контроллеры Adaptec от А до Я. Часть 2

Время на прочтение7 мин
Количество просмотров46K
Ранее публиковал первую часть, в которой описывались общие сведения о RAID контроллерах (азы читать здесь), были вопросы и интерес, выкладываю уже «мясной» кусок. Здесь всё очень конкретно – подробная классификация контроллеров Adaptec, функции каждой серии контроллеров, таблицы, картинки и т.д.

image

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

Современные RAID контроллеры Adaptec от А до Я. Часть 1

Время на прочтение16 мин
Количество просмотров92K
Недавно наткнулся на полезную и очень подробную статью Adaptec, которая описывала ну просто все нюансы работы контроллеров, пугал разве что объем в 60 страниц. Возникло естественное желание сократить и разделить статью на 2 куска:
  • Часть 1. Общие сведения о RAID контроллерах (много теории, азы)
  • Часть 2. Классификация контроллеров Adaptec (здесь всё очень конкретно – серии контроллеров, функции каждой серии, таблицы, картинки)

Материал будет интересен всем, кто связан с хранением данных – инженерам-интеграторам, системным администраторам и конечным пользователям.

Собственно, Часть 1.

image

Читать дальше →
Всего голосов 12: ↑8 и ↓4+4
Комментарии13

Как не стать ботом в Bittorrent DHT и других P2P сетях

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

Сеть Bittorrent DHT позволяет найти источники торрента по хешу из магнет-ссылки. Сеть состоит из узлов которые могут быть как Bittorent клиентами так и вредоносными программами которые препятсвуют нормальной работе сети. Они мешают клиенту получить источники торрента, перенаправляют запросы на атакуемые узлы, заполняют список узлов бесполезными адресами.

Пока я работал над счетчиком пиров и сидов(DHT Scrape) в этой сети я наткнулся на такие виды атаки.
Читать дальше →
Всего голосов 30: ↑23 и ↓7+16
Комментарии13

Информация

В рейтинге
3 854-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность