Pull to refresh
0
0
Send message

Security Week 40: баг в systemd, 20 уязвимостей в роутере D-Link, взлом инсулиновых помп

Reading time5 min
Views11K
Сразу две популярные новости на этой неделе поднимают важную тему оценки серьезности уязвимостей в частности и определения безопасности софта или железа вообще. По порядку: 3 октября основатель сервиса SSLMate Эндрю Айер сообщил об уязвимости в демоне инициализации systemd (новость, оригинальный пост Айера). Уязвимость типа denial of service эксплуатируется только локально. Любой пользователь введя команду NOTIFY_SOCKET=/run/systemd/notify systemd-notify “” может подвесить систему. Баг, вызванный неправильной обработкой сообщения нулевой длины, и уже закрытый, просуществовал в systemd два года, начиная с версии 209.

Имея массу примеров для сравнения (Shellshock, например, или тот же Heartbleed), можно вполне уверенно утверждать, что это далеко не самый ужасный в мире баг. Тем не менее, срач обсуждение проблемы получилось масштабное. Причина в доступном описании бага: «можно подвесить систему сообщением, которое помещается в один твит». И в резкой реакции CTO компании Pantheon, активно поддерживающего systemd. Далее везде, вплоть до нового витка обсуждения личности создателя systemd (не буду его называть, а то и здесь начнется).

В общем, обсуждали все, что угодно, только не сам баг, который, действительно, не так уж ужасен, хотя и серьезен. Это действительно важная тема: по уязвимостям пытаются судить о качестве продукта. Типичный пример такого подхода — рейтинги софта с наибольшим количеством обнаруженных дыр. Попробую предложить свою трактовку: уязвимость — это в большинстве случаев просто уязвимость, и само по себе обнаружение проблемы никак не квалифицирует софт или железку. А чтобы обосновать это утверждение, нам понадобится обсудить роутер D-Link.
Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments5

Как я шел к Java-программированию и прошел мимо

Reading time5 min
Views100K

image alt text


Однажды вам приходит в голову настойчивая мысль "как меня все достало, хочу заниматься чем угодно, но только не этим". Если человек достаточно разумен и решителен – то возьмет и сделает именно так. А если не очень – будет годами тянуть волынку и ныть о том, как его все задрало. Я как раз из последней категории.

Но все же решил попробовать совершенно незнакомый путь программиста
Total votes 42: ↑33 and ↓9+24
Comments96

libsodium: Public-key authenticated encryption или как я расшифровал сообщение без закрытого ключа

Reading time6 min
Views18K
Эта статья является примером того, как недопонимание работы криптографических примитивов и излишняя самоуверенность могут привести к критическим ошибкам при реализации криптографической защиты. Надеюсь моя ошибка станет для кого-то полезным примером.
Читать дальше →
Total votes 55: ↑48 and ↓7+41
Comments15

Программирование&Музыка: ADSR-огибающая сигнала. Часть 2

Reading time19 min
Views14K

Всем привет!
Вы читаете вторую часть статьи про создание VST-синтезатора на С#. В первой части был рассмотрен SDK и библиотеки для создания VST плагинов, рассмотрено программирование осциллятора.
В этой части я расскажу про огибающие сигнала, их разновидности, применение в обработке звука. В статье будет рассмотрено программирование ADSR-огибающей для управления амплитудой сигнала, генерируемого осциллятором.
Огибающие есть в любом синтезаторе, применяются не только в синтезе, а повсеместно обработке звука.


Исходный код написанного мною синтезатора доступен на GitHub'е.



Читать дальше →
Total votes 23: ↑23 and ↓0+23
Comments10

Self-contained дистрибуция .NET Core приложений

Reading time3 min
Views30K

Если вы вдруг пропустили, то .NET теперь open source, а .NET Core это бесплатный, open source, кроссплатформенный фреймворк, который вы можете скачать и запустить за время <10 минут. Вы можете получить его на Mac, Windows и на пол-дюжине Unix-ов с сайта dot.net Попробуйте его вместе с бесплатной, кроссплатформенной Visual Studio Code и вы будете писать на C# и F# всегда и везде.
Читать дальше →
Total votes 44: ↑42 and ↓2+40
Comments19

Epic CTF-battle от QIWI и «Информзащиты» на ZeroNights 2016 – ₽250К победителям

Reading time2 min
Views3.7K
В рамках ZeroNights 2016 QIWI и системный интегратор «Информзащита» проведут CTF-баттл в формате Jeopardy.



Старт 17 ноября 2016 г. в 10:00 МСК. Призовой фонд за 1-3 места составит ₽150 тыс., ₽75 тыс. и ₽25 тыс. Для победы в турнире необходимо выполнить задания в категориях Reverse / PWN / Web / Crypto / Misc и набрать максимальное число баллов. Допускается решение заданий в произвольном порядке, стоимость решения зависит от сложности задачи. Приоритет – по времени выполнения. Возможен удаленный доступ к игровой сети[1], однако часть заданий реализована в офлайне и потребует присутствия участников в зоне QIWI на площадке ZeroNights.

«У QIWI есть успешный практический опыт участия в CTF и организации таких соревнований. Это очень удобный формат, и я уверен, что вместе с «Информзащитой» мы предложим интересную среду для обмена опытом и достойное вознаграждение победителям», — сказал CISO Группы QIWI Кирилл Ермаков isox.
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments4

«В пятницу и море по колено»: 5 навыков, которые не требуют наличия таланта

Reading time6 min
Views21K
Мало что может остановить талантливого человека от достижения поставленных целей. Однако исследователи установили, что успех зависит не только от таланта. Вернее, он почти совсем от него не зависит.

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



/ фото Shabai Liu CC
Читать дальше →
Total votes 29: ↑17 and ↓12+5
Comments11

История одного исследования в log4net и ускорение его более чем в 10 раз

Reading time7 min
Views8.3K

Начну с того, что данная оптимизация будет работать только, если вы используете значения взятые из Properties (например: NDC, MDC) и не используете UserName.

Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments9

Закат Stack Overflow

Reading time12 min
Views78K
Как тролли захватили ваш любимый сайт вопросов и ответов по программированию

Сайт Stack Overflow был создан в 2008 году Джеффом Этвудом и Джоэлем Спольским как более открытая альтернатива возникшим ранее аналогичным сайтам, таким как, например, Experts-Exchange. Название для сайта было выбрано голосованием в апреле 2008 года читателями популярного блога по программированию Coding Horror, который вёл Этвуд.

Многие годы сайт Stack Overflow был одним из самых популярных ресурсов для программистов, пытающихся решить какую-то проблему. Поскольку вопросы, размещавшиеся на Stack Overflow, часто оказывались среди первых, которые выдавал Google в каком-либо поиске, относившемся к программированию, то пользователи массово приходили на сайт и начинали задавать свои собственные вопросы.

На июль 2015 года у Stack Overflow было более 4 млн. зарегистрированных пользователей и почти 10 млн. вопросов (без учёта удалённых пользователей и вопросов). Однако в исследовании 2013 года было выявлено, что 77% пользователей задают только один вопрос, 65% отвечают только на один вопрос и лишь 8% пользователей дают ответы на более чем 5 вопросов. В настоящей статье я хотел бы рассмотреть возможные причины такого чрезвычайно низкого процента.
Читать дальше →
Total votes 109: ↑93 and ↓16+77
Comments386

.NET и CLR: Взгляд изнутри

Reading time12 min
Views20K


Что такое C#? Объектно-ориентированный эсперанто со сборщиком мусора, функциональными примочками и бесплатным массажем после обеда. Он позволяет писать Действительно Важные Вещи, скрывая от нас ненужные детали работы с памятью, процессором и прочее низкоуровневое программирование. Естественно, находятся люди с повышенным уровнем любопытства в крови, желающие знать как же .NET работает на самом деле (само собой, они изучают .NET исключительно ради повышения производительности разрабатываемого софта). Сегодня с нами разговаривают:
Читать дальше →
Total votes 37: ↑32 and ↓5+27
Comments18

Аутентификация и авторизация в микросервисных приложениях

Reading time11 min
Views218K

Автор: Вячеслав Михайлов, Solutions Architect

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

Мы разберемся с процессом аутентификации пользователя, работой технологии единого входа (Single sign-on/SSO), дадим общее представлении о технологии OAuth2 и принципах ее работы, не углубляясь в особенности конкретной технической реализации. В следующей статье в качестве примера удачной реализации мы рассмотрим библиотеку Thinktecture Identity Server v3, подробнее остановимся на ее функциональных возможностях, поговорим, как собрать минимальный набор компонент, необходимый для работы в микросервисной архитектуре и достойный использования в боевой системе. В третьей части мы покажем, как расширять эту библиотеку, подстраиваясь под нужды вашей системы, а завершит цикл статей разбор различных сценариев, встречавшихся в жизни многих разработчиков с рекомендациями для каждого случая.
Читать дальше →
Total votes 41: ↑40 and ↓1+39
Comments15

Новый релиз PostgreSQL 9.6: вклад Postgres Professional

Reading time5 min
Views21K
Сегодня, 29 сентября 2016 года, вышел новый релиз PostgreSQL, получивший номер 9.6. В нём содержится много весьма полезных фич, и нельзя не рассказать о них, тем более что вклад нашей компании в этот релиз существенен. Поэтому в этой статье мы расскажем о тех разработках Postgres Pro, которые вошли в сегодняшний релиз.
Читать дальше →
Total votes 61: ↑59 and ↓2+57
Comments16

Использование единого IoC Container'a в рамках HTTP-запроса между Web API и OWIN Middleware

Reading time6 min
Views9K
Целью данной статьи является поиск рабочего решение, которое позволяет иметь единый контейнер зависимостей (IoC контейнер) на протяжении всего жизненного цикла запроса, контролировать его создание и уничтожение.

image

Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments65

Сверхлегкая BDD: малая механизация автономных тестов

Reading time6 min
Views6.6K

Тема автономного тестирования давняя, почтенная, разобранная до косточек. Кажется, что после отличной книги Роя Ошероува и сказать особо нечего. Но на мой взгляд есть некоторая несбалансированность доступных инструментов. С одной стороны монстры вроде SpecFlow, с огромным оверхедом ради возможности писать тесты-спецификации на квази-естественном языке, с другой — челябинская суровость фреймворков старой школы вроде NUnit. Чего не хватает? Инструмента для лаконичной, выразительной, легко читаемой записи тестов, по удобству и ортогональности аналогичного библиотекам для создания подделок, таких как FakeItEasy, или проверки утверждений вроде FluentAssertion.


Их есть у меня
Total votes 11: ↑10 and ↓1+9
Comments12

ГИС ЖКХ: установка защищенного соединения и подписание сообщений с помощью WCF

Reading time5 min
Views24K
Сейчас активно дорабатывается государственная информационная система ЖКХ, а с 1 января 2017 года наступает ответственность для управляющих и ресурсоснабжающих организаций за непредоставление информации в системе.

Как показывает практика, разработчики, которые выполняют интеграцию своих информационных систем с ГИС ЖКХ, очень много времени тратят на установление защищенного соединения и подписание сообщений. Несмотря на то, что разработчиками ГИС ЖКХ предоставлено демонстрационное приложение по подписанию сообщений, я опишу как можно решить эту задачу с помощью WCF. Хочу отметить, что в этом случае дополнительное ПО (типа stunnel) для установки защищенного соединения не нужно.

Надеюсь, эта статья поможет разработчикам, которые в будущем будут интегрироваться с ГИС ЖКХ.
Читать дальше →
Total votes 22: ↑20 and ↓2+18
Comments11

Безопасность Android-приложений. Лекция в Яндексе

Reading time10 min
Views33K
Разработчик Дмитрий Лукьяненко, чью лекцию мы публикуем сегодня, не только является специалистом Яндекса, но и умеет проверять на прочность решения разработчиков других компаний. Это позволяет учиться на чужих ошибках — не исключая порой своих, конечно. В докладе Дмитрий поделится примерами Android-уязвимостей, в том числе найденных им собственноручно. Каждый пример сопровождается рекомендациями — как нужно и как не нужно писать приложения под Android.



Меня зовут Дмитрий, я работаю в компании Яндекс в минском офисе, занимаюсь разработкой аккаунт-менеджера. Это библиотека, которая отвечает за авторизацию пользователей. Поэтому мы поговорим о безопасности Android-приложений.
Total votes 68: ↑68 and ↓0+68
Comments14

Приложение на Elm за считанные секунды

Reading time2 min
Views14K

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


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



Читать дальше →
Total votes 33: ↑29 and ↓4+25
Comments6

PostgreSQL на русском всерьёз и надолго

Reading time5 min
Views43K

Свершилось!


PostgreSQL приходит в Россию

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

Перевод самого PostgreSQL на русский язык начался в далёком 2001 году, тогда вышла только версия postgresql 7.1, и в самом postgresql усилиями в том числе и наших разработчиков только появлялась возможность локализации сообщений (см. тут). Впервые перевод сообщений на русский был включён в версию 7.2, вместе с переводами на французский, немецкий, шведский, китайский и чешский.
Читать дальше →
Total votes 108: ↑106 and ↓2+104
Comments40

Information

Rating
Does not participate
Registered
Activity