Я хотел бы рассказать вам об утилите, с которой вы сможете забыть о боли создания документации для Web API. О том как это сделать прошу всех под кат.
Доронин Станислав @mugisbrows
User
Как легко расшифровать TLS-трафик от браузера в Wireshark
2 min
161KTranslation
Многим из вас знаком Wireshark — анализатор трафика, который помогает понять работу сети, диагностировать проблемы, и вообще умеет кучу вещей.
Одна из проблем с тем, как работает Wireshark, заключается в невозможности легко проанализировать зашифрованный трафик, вроде TLS. Раньше вы могли указать Wireshark приватные ключи, если они у вас были, и расшифровывать трафик на лету, но это работало только в том случае, если использовался исключительно RSA. Эта функциональность сломалась из-за того, что люди начали продвигать совершенную прямую секретность (Perfect Forward Secrecy), и приватного ключа стало недостаточно, чтобы получить сессионный ключ, который используется для расшифровки данных. Вторая проблема заключается в том, что приватный ключ не должен или не может быть выгружен с клиента, сервера или HSM (Hardware Security Module), в котором находится. Из-за этого, мне приходилось прибегать к сомнительным ухищрениям с расшифровкой трафика через man-in-the-middle (например, через sslstrip).
Что ж, друзья, сегодня я вам расскажу о способе проще! Оказалось, что Firefox и Development-версия Chrome поддерживают логгирование симметричных сессионных ключей, которые используются для зашифровки трафика, в файл. Вы можете указать этот файл в Wireshark, и (вуаля!) трафик расшифровался. Давайте-ка настроим это дело.
Одна из проблем с тем, как работает Wireshark, заключается в невозможности легко проанализировать зашифрованный трафик, вроде TLS. Раньше вы могли указать Wireshark приватные ключи, если они у вас были, и расшифровывать трафик на лету, но это работало только в том случае, если использовался исключительно RSA. Эта функциональность сломалась из-за того, что люди начали продвигать совершенную прямую секретность (Perfect Forward Secrecy), и приватного ключа стало недостаточно, чтобы получить сессионный ключ, который используется для расшифровки данных. Вторая проблема заключается в том, что приватный ключ не должен или не может быть выгружен с клиента, сервера или HSM (Hardware Security Module), в котором находится. Из-за этого, мне приходилось прибегать к сомнительным ухищрениям с расшифровкой трафика через man-in-the-middle (например, через sslstrip).
Логгирование сессионных ключей спешит на помощь!
Что ж, друзья, сегодня я вам расскажу о способе проще! Оказалось, что Firefox и Development-версия Chrome поддерживают логгирование симметричных сессионных ключей, которые используются для зашифровки трафика, в файл. Вы можете указать этот файл в Wireshark, и (вуаля!) трафик расшифровался. Давайте-ка настроим это дело.
+81
Домофонный мультиключ и всё про имитацию «таблеток»
9 min
520KДа, это жутко избитая тема. Универсальный домофонный ключ «таблетку» делал наверное каждый второй, кто начинал изучать микроконтроллеры. В Интернете очень много и статей на эту тему, и готовых решений. Однако, интерес к этому угасать не перестаёт даже с массовым переходом на RFID. Это не удивительно, ведь многим хочется собрать такое устройство, которое выполняет не только весьма интересную задачу, но ещё и всегда с собой. К тому же оно не такое уж сложное в изготовлении.
В этом посте мне хотелось бы собрать в одном месте всю необходимую информацию для тех, кто хочет изготовить такой ключ. Сейчас я постараюсь рассказать о том, какими бывают контактные домофонные ключи, как они работают, как их имитировать, какие при этом бывают подводные камни, а также рассказать о своей реализации такого устройства и о том, как можно собрать аналогичное самому.
Внимание! Этот ключ не позволяет нелегально проникать куда-либо. Это устройство лишь для того, чтобы носить один ключ вместо нескольких.
В этом посте мне хотелось бы собрать в одном месте всю необходимую информацию для тех, кто хочет изготовить такой ключ. Сейчас я постараюсь рассказать о том, какими бывают контактные домофонные ключи, как они работают, как их имитировать, какие при этом бывают подводные камни, а также рассказать о своей реализации такого устройства и о том, как можно собрать аналогичное самому.
Внимание! Этот ключ не позволяет нелегально проникать куда-либо. Это устройство лишь для того, чтобы носить один ключ вместо нескольких.
Хотя ничто не мешает вам записать в него универсальные коды открытия домофонов.
+202
Самодельный SD Card Shield для Arduino
3 min
91KПриветствую, %username%!
Подумал на днях, что для своего будущего 2х ядерного коптера (да и мало ли других проектов) неплохо бы потом сделать еще и черный ящик (GPS), а для этого надо много памяти и EEPROM не поможет, а поэтому стоит купить или сделать SD шилд для Arduino.
Купить — дороговато для такой мелочи и долго ждать пока пришлют, поэтому гуглим и находим что народ то клепает свои шилды, для этого нам понадобится всего 6 резисторов, переходник/разъем для карты памяти и сама карточка (заработало с картами SD и SDHC, отформатированными в FAT16 и FAT32).
Подумал на днях, что для своего будущего 2х ядерного коптера (да и мало ли других проектов) неплохо бы потом сделать еще и черный ящик (GPS), а для этого надо много памяти и EEPROM не поможет, а поэтому стоит купить или сделать SD шилд для Arduino.
Купить — дороговато для такой мелочи и долго ждать пока пришлют, поэтому гуглим и находим что народ то клепает свои шилды, для этого нам понадобится всего 6 резисторов, переходник/разъем для карты памяти и сама карточка (заработало с картами SD и SDHC, отформатированными в FAT16 и FAT32).
+41
Удаленная отладка в Linux при помощи связки GDB-gdbserver
9 min
57KКак всем нам известно, процесс отладки это такая вещь, важность которой трудно переоценить. Причем, понимая важность таких методов как дебажное моргание светодиодами и вывод дебажных сообщений в порт, я остаюсь при мнении, что эффективнее пошаговой отладки пока ничего не придумано. Однако, задача пошаговой отладки становится не такой тривиальной в случае программирования под Linux на встраиваемых системах (таких как rasbery pi, virt2real или промышленные процессорные модули).
Данную задачу в Linux призвана решать стандартная связка программ GDB и gdbserver. Идея в том, что пишешь на компе программу (host в терминологии GDB), компилируешь её и заливаешь на целевое устройство (target). Далее запускаешь на целевом устройстве (target) отлаживаемый файл и gdbserver, а на хосте GDB и вперед.
Данную задачу в Linux призвана решать стандартная связка программ GDB и gdbserver. Идея в том, что пишешь на компе программу (host в терминологии GDB), компилируешь её и заливаешь на целевое устройство (target). Далее запускаешь на целевом устройстве (target) отлаживаемый файл и gdbserver, а на хосте GDB и вперед.
+20
Вы неправильно пишете животных
5 min
382KЖивотные – это платформы с очень ограниченной памятью, вычислительными способностями и возможностями модификаций. Разработчикам энимал-сцены приходится выдавать практически гениальные низкоуровневые алгоритмы. Правда, большое количество хардкода вызывает характерные проблемы с отсутствием проверки в экзотических условиях. Та же фильтрация входных данных делается очень и очень криво.
Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти
Не знаю, кто писал большую часть птиц, но я хочу обратить внимание на особенность, позволяющую провести инъекцию произвольного яйца в гнездо. Дело в том, что птица проверяет только расположение и количество яиц, но не их хэши. В 20% случаев кукушка, эксплуатирующая этот баг, может внести яйцо с сохранением контрольной суммы, чего вполне достаточно для повышения прав в гнезде.
Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен.
Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти
Не знаю, кто писал большую часть птиц, но я хочу обратить внимание на особенность, позволяющую провести инъекцию произвольного яйца в гнездо. Дело в том, что птица проверяет только расположение и количество яиц, но не их хэши. В 20% случаев кукушка, эксплуатирующая этот баг, может внести яйцо с сохранением контрольной суммы, чего вполне достаточно для повышения прав в гнезде.
Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен.
+434
Как я умудрился за 1 день задолжать Amazon 12000$
5 min
176KЯ руководитель небольшой IT-компании из Зеленограда. Занимаемся интеграцией программ 1С и телефонии. В компании работает чуть менее 20 человек и так получилось, что за всю IT инфраструктуру отвечаю я сам.
В принципе, я люблю этим заниматься и знакомиться с различными новыми технологиями. Одной из таких технологий стала виртуализация и, в частности, такой интересный сервис, как Amazon AWS.
Часто бывает необходимо быстро развернуть несколько виртуальных машин с белыми IP адресами в лабораторных целях, попользоваться ими пару дней, и прибить без сожаления. В терминологии Amazon этот сервис называется EC2, и позволяет за считанные минуты выполнять такие манипуляции. Это очень удобно и стоит копейки, т.к. оплата происходит по часовому тарифу.
В принципе, я люблю этим заниматься и знакомиться с различными новыми технологиями. Одной из таких технологий стала виртуализация и, в частности, такой интересный сервис, как Amazon AWS.
Часто бывает необходимо быстро развернуть несколько виртуальных машин с белыми IP адресами в лабораторных целях, попользоваться ими пару дней, и прибить без сожаления. В терминологии Amazon этот сервис называется EC2, и позволяет за считанные минуты выполнять такие манипуляции. Это очень удобно и стоит копейки, т.к. оплата происходит по часовому тарифу.
+98
Что ж вы делаете, паразиты: распространённый микроб заподозрили в управлении поведением людей
3 min
37KПаразитическое одноклеточное toxoplasma gondii, принадлежащее к токсоплазмам, известно уже более 100 лет. К концу 20 века учёные более-менее изучили и способы размножения паразита, и то, как люди могут им заразиться. По разным оценкам, этот микроорганизм присутствует в организмах от 50% до 65% всех людей на планете.
Как ни странно, половое размножение у токсоплазм проходит исключительно внутри организмов животных из семейства кошачьих. Внутри всех остальных организмов, которые удаётся заразить, паразит размножается делением. При этом считается, что его присутствие практически не оказывает на организм никакого влияния. После того, как здоровая иммунная система за несколько дней справляется с новыми «гостями», микробы переходят в неактивное состояние. Опасность он представляет только для людей с нарушениями иммунной системы, а также для беременных женщин, которые заразились им впервые – в худшем случае токсиплазмы способны даже привести к летальному исходу у больных и у плода.
+31
Не учите фреймворки, учите архитектуру
5 min
199KНекоторое время назад у меня состоялся интересный разговор, коллега активно защищал Angular, говорил, что тот ускоряет веб-разработку. Я более десяти лет разрабатываю сложные web-сервисы, работал в Microsoft, в Spotware Systems на Кипре, сейчас создаю приложение для стартапа из Кремниевой долины, и в общем то слежу за трендами. Однако почувствовал себя динозавром, потому что не видел смысла использовать фронтэнд-фреймворки до того момента, а оказалось, что это уже мейнстрим. Шёл 2014-й год, я погрузился в мир Angular, Knockout и Backbone, что из этого вышло, почему я от них в итоге отказался и рекомендую коллегам сделать то же самое – под катом.
+114
Файловая система Linux полностью на tmpfs — скорость без компромиссов
4 min
122KПредыстория
Так сложилось, что уже пять лет мой раздел ntfs с операционной системой Windows располагается на рамдиске. Решено это не аппаратным, а чисто программным способом, доступным на любом ПК с достаточным количеством оперативной памяти: рамдиск создается средствами загрузчика grub4dos, а Windows распознаёт его при помощи драйвера firadisk.
Однако до недавнего времени мне не был известен способ, как реализовать подобное для Linux. Нет, безусловно, существует огромное количество линуксовых LiveCD, загружающихся в память при помощи опций ядра toram, copy2ram и т. д., однако это не совсем то. Во-первых, это сжатые файловые системы, обычно squashfs, поэтому любое чтение с них сопровождается накладными расходами на распаковку, что вредит производительности. Во-вторых, это достаточно сложная каскадная система монтирования (так как squashfs — рид-онли система, а для функционирования ОС нужна запись), а мне хотелось по возможности простого способа, которым можно «вот так взять и превратить» любой установленный на жесткий диск Linux в загружаемый целиком в RAM.
Ниже я опишу такой способ, который был с успехом опробован. Для опытов был взят самый заслуженный дистрибутив Linux — Debian.
+65
Крошечный Excel на чистом JavaScript (30 строк кода)
2 min
137KTranslation
Особенности:
- Около 30 строк обычного JavaScript
- Использованные библиотеки: отсутствуют
- Синтаксис как в Excel (формулы начинаются с "=")
- Поддерживаются произвольные выражения(=A1+B2*C3)
- Обнаруживаются циклические ссылки
- Автоматическое сохранение в localStorage
+226
СКАЛА — ЭВМ ЧАЭС, история создания
4 min
79KСегодня исполняется 28 лет со дня чернобыльской катастрофы. На эту тему написано очень много статей, выдвинуто немало теорий о причинах взрыва, сделано множество расследований и выводов. В этой статье я постараюсь не касаться самой темы взрыва и последующей катастрофы, а расскажу о истории создания компьютера, который регулировал работу станции — о системе СКАЛА. Кому интересно — добро пожаловать под кат.
+66
Рассекречена личность Сатоси Накамото
3 min
274KОпытной журналистке Newsweek удалось найти Сатоси Накамото, автора цифровой криптовалюты Bitcoin. Оказалось, что его на самом деле зовут… Сатоси Накамото и он скромно живёт со своей семьёй в Калифорнии, несмотря на 1 млн BTC, полученный при майнинге в первый год.
+169
Самая плохая вещь в работе в Microsoft
5 min
132KTranslation
* От переводчика. Хочу обратить внимание всех анонимных хейтеров, которые, увы, все еще есть на хабре, что эта статья — перевод. А посему я не являюсь автором и не несу ответственность за идеи и мысли, написанные здесь. И еще я не работаю в Microsoft.
Замечания и предложения пишите, пожалуйста, в личку. Спасибо за понимание.
У меня есть два различных ответа, но я бы хотел подробнее остановиться на одном из них, а второй будет как дополнение.
Да, все верно. Худшее в работе в Microsoft заключается не во внутренней культуре (это не совсем так, о чем далее). И дело не в циклах релизов или стремлении сделать все дела. Дело в том, что тебе приходится работать в компании, в которую люди не верят, несмотря на важнейшую роль, которую она играет в их жизнях.
Я могу спокойно утверждать, что большинство людей, читающих эту статью, не сильно уважают Microsoft. Если попросить их назвать самую инновационную компанию, они выберут Apple или Google. И сделают это с уверенным выражением лица, в то время как сами сидят на стуле, сделанном Microsoft.
Стоп! Microsoft делает стулья? Нет, не напрямую. Но как насчет части этого стула? Собранный на заводе, которые управляются ПО от… угадали, Microsoft. Перевезенный на грузовиках, сделанных с помощью программ Microsoft, по дорогам, построенным с помощью Microsoft. Если вы не предпочитаете быть сбитым автобусом, то подумайте о той роли, которую Microsoft играет, чтобы сделать вашего ребенка здоровым.
Замечания и предложения пишите, пожалуйста, в личку. Спасибо за понимание.
Какая самая плохая вещь в работе в Microsoft?
У меня есть два различных ответа, но я бы хотел подробнее остановиться на одном из них, а второй будет как дополнение.
Первая вещь — количество людей вне Microsoft, которые сомневаются в компании
Да, все верно. Худшее в работе в Microsoft заключается не во внутренней культуре (это не совсем так, о чем далее). И дело не в циклах релизов или стремлении сделать все дела. Дело в том, что тебе приходится работать в компании, в которую люди не верят, несмотря на важнейшую роль, которую она играет в их жизнях.
Я могу спокойно утверждать, что большинство людей, читающих эту статью, не сильно уважают Microsoft. Если попросить их назвать самую инновационную компанию, они выберут Apple или Google. И сделают это с уверенным выражением лица, в то время как сами сидят на стуле, сделанном Microsoft.
Стоп! Microsoft делает стулья? Нет, не напрямую. Но как насчет части этого стула? Собранный на заводе, которые управляются ПО от… угадали, Microsoft. Перевезенный на грузовиках, сделанных с помощью программ Microsoft, по дорогам, построенным с помощью Microsoft. Если вы не предпочитаете быть сбитым автобусом, то подумайте о той роли, которую Microsoft играет, чтобы сделать вашего ребенка здоровым.
+48
Впервые зубчатую передачу обнаружили у живого существа
1 min
194KБиологи из Кембриджского университета впервые в истории обнаружили зубчатую передачу в теле живого существа. Естественно, она там появилась задолго до того, как такую же конструкцию изобрели человеческие инженеры.
С помощью шестерёнок маленькое насекомое Issus осуществляет синхронизацию задних конечностей во время отталкивания перед прыжком.
+74
Смерть OS/2: убийство или самострел?
11 min
79KTranslation
Моя первая статья про OS/2 в основном состояла из извинений за личный вклад в провал OS/2. Но я не могу возложить всю вину на себя. Честно говоря, у провала OS/2 были тысячи причин, с подавляющим большинством которых я ничего не мог поделать. Вот некоторые из них.
Давным-давно IBM зарабатывала сумасшедшие деньги на большом железе — мейнфреймах настолько крупных, что один из немецких университетов обогревался системой охлаждения компьютера Синего Гиганта.
Даже «миникомпьютеры» нередко занимали целую комнату, что давало IBM полный контроль над покупателями. Организации просто принимали как данное тот факт, что обеспечение серьезных вычислительных мощностей требовало серьезого количества денег. IBM понимала, что может просить столько денег, сколько захочет — и делала это. Персональные компьютеры не вписывались в эту модель.
Эпоха IBM, в которую машины, принтеры, диски, люди, коты и собаки жили вместе.
Давным-давно IBM зарабатывала сумасшедшие деньги на большом железе — мейнфреймах настолько крупных, что один из немецких университетов обогревался системой охлаждения компьютера Синего Гиганта.
Даже «миникомпьютеры» нередко занимали целую комнату, что давало IBM полный контроль над покупателями. Организации просто принимали как данное тот факт, что обеспечение серьезных вычислительных мощностей требовало серьезого количества денег. IBM понимала, что может просить столько денег, сколько захочет — и делала это. Персональные компьютеры не вписывались в эту модель.
Эпоха IBM, в которую машины, принтеры, диски, люди, коты и собаки жили вместе.
+60
OS/2 четверть века спустя: почему IBM проиграла, а Microsoft выиграла
20 min
218KTranslation
Двадцать пять лет назад IBM представила генеральный план восстановления контроля над рынком PC. В ноябре 1987 года в магазины отправились первые дискеты с OS/2 версии 1.0. Microsoft разрабатывала ее вместе с IBM и в случае успешной реализации этих планов мир был бы совсем иным. И мир уже начал меняться.
Сейчас о OS/2 обычно вспоминают только в связи с той ролью, которую она сыграла в промышленной войне, окончившейся триумфальной победой Microsoft. На момент выпуска OS/2 в Microsoft работало 1800 человек, меньше, чем сейчас работает в ливерпульском телемагазине QVC. Microsoft даже не была крупнейшим производителем программ для PC. Но всего через несколько лет компания стала не только крупнейшим игроком отрасли, но и одной самых дорогих компаний в мире; один лишь слух о выходе Microsoft в новую нишу вызывал панику у существующих игроков.
Согласно традициям нашего издания я вернул старые программы к жизни и оценил OS/2 с современной точки зрения. Но гораздо интереснее вновь задать иной вопрос: могла ли IBM победить? Если именно OS/2 стала причиной поражения Синего Гиганта, то смогли бы они остановить Microsoft с помощью более хитрых планов? Давайте вернемся в те времена, когда мир еще не знал слов «платформа» и «экосистема» и вспомним, как выглядела отрасль информационных технологий в середине 1980-х.
Сейчас о OS/2 обычно вспоминают только в связи с той ролью, которую она сыграла в промышленной войне, окончившейся триумфальной победой Microsoft. На момент выпуска OS/2 в Microsoft работало 1800 человек, меньше, чем сейчас работает в ливерпульском телемагазине QVC. Microsoft даже не была крупнейшим производителем программ для PC. Но всего через несколько лет компания стала не только крупнейшим игроком отрасли, но и одной самых дорогих компаний в мире; один лишь слух о выходе Microsoft в новую нишу вызывал панику у существующих игроков.
Согласно традициям нашего издания я вернул старые программы к жизни и оценил OS/2 с современной точки зрения. Но гораздо интереснее вновь задать иной вопрос: могла ли IBM победить? Если именно OS/2 стала причиной поражения Синего Гиганта, то смогли бы они остановить Microsoft с помощью более хитрых планов? Давайте вернемся в те времена, когда мир еще не знал слов «платформа» и «экосистема» и вспомним, как выглядела отрасль информационных технологий в середине 1980-х.
+154
Красивая наука от «Электро-Л»
6 min
107KПолгода назад я написал про российский метеорологический спутник Электро-Л, который более двух лет успешно работает на геостационарной орбите. Материал Хабру понравился, и я предложил желающим следить за его деятельностью через группу Вконтакте. Тогда я обещал, что буду здесь делиться материалами, которые мы соберем. Думаю, пришло время выполнить обещание.
(Под катом гифки на 10 мб)
(Под катом гифки на 10 мб)
+176
Youtube
1 min
223KПриходится ждать загрузки видео >360p по несколько секунд, обрывы на середине просмотра стало уже обыденным делом и это с достаточно широким каналом.
Причина в занижении провайдерами скорости к серверам кеширующим видео, всё что нужно сделать это заблокировать доступ к ним.
Для того чтобы запрос шел мимо cdn серверов ютуба надо заблокировать диапазон ip адресов (в роутере или на компьютере).
173.194.55.0/24 и 206.111.0.0/16
Причина в занижении провайдерами скорости к серверам кеширующим видео, всё что нужно сделать это заблокировать доступ к ним.
Для того чтобы запрос шел мимо cdn серверов ютуба надо заблокировать диапазон ip адресов (в роутере или на компьютере).
173.194.55.0/24 и 206.111.0.0/16
+89
Бледно-голубая точка
1 min
22KВместе с гениальными учеными меня всегда восхищали ученые популяризаторы науки.
Pale Blue Dot или Бледно-голубая точка это знаменитая фотография Земли, сделанная зондом Вояджер-1 с растояния 5,9 миллиардов километров. Многие даже называют ее самой важной фотографией в истории человечества. Название и сама идея сделать такой снимок принадлежит Карлу Сагану, одному из самых известных популяризаторов науки.
В 1994 году вышла одноименная книга «Pale blue dot: a vision of the human future in space», а в 1996 году Карл Саган произносит свою вступительную речь. Именно ее я предлагаю вам послушать.
Оригинал (Голос Сагана на видео-хостингах положили на множество разных картинок, и похожих роликов много)
P.S. Это эссе хоть и (мне кажется) уже фигурировало на Хабре, и перевод на русский существует (хотя
+81
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity