• Черная метка – как OpenShift защищает от уязвимости контейнеров с помощью SELinux

      Бывало ли, что вы выполняли для блага общества непростую работу, а ваших усилий не замечали, потому что вы приносили пользу так долго, что все давно привыкли? Именно такую работу для вас совершают все участники сообщества SELinux.



      И вот 18 февраля этого года, во многом благодаря их работе, мир был спасен от опасной поражающей контейнеры уязвимости CVE-2019-5736.
      Читать дальше: OpenShift защищает от уязвимости контейнеров
    • Взлом цветного картриджа HP: превращаем его в ручной принтер

      • Перевод
      image

      Введение


      Ещё с юности, когда у нас был старый DeskJet, меня интересовали картриджи струйных принтеров. Эти картриджи казались очень интересными и как только в них заканчивались чернила, я сразу забирал их себе. В то время я не мог сделать с ними ничего, кроме как разобрать и пачкать руки… Хоть я и знал, что там внутри есть какая-то сложная электроника, но при касании контактов батарейкой не происходило ничего интересного, а моих знаний по электронике на большее не хватало.

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

      Недавно моя девушка занялась рисованием, поэтому это стало хорошим оправданием для возврата к струйным картриджам в надежде, что и мне удастся нарисовать что-то на холсте. На этот раз мне повезло: удалось найти способ привязки всех сопел к правильным сигналам. Кроме того, сегодня картриджи принтеров управляют бОльшим количеством сопел используя меньшее количество сигналов, что упрощает управление картриджем и увеличивает поверхность, которую можно покрыть за один проход.
      Читать дальше →
    • Как поссорились разработка с эксплуатацией — и как помирились

        image alt text


        С чего начинается любой проект по ИТ-инфраструктуре? Если вы подумали о чем-то вроде: админы собрались, обсудили и кто-то предложил решение, — то с высокой вероятностью попали в точку. Именно так обстоят дела с эксплуатацией в российских компаниях, и у нас до недавнего времени тоже.


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

        Читать дальше →
        • +20
        • 9,7k
        • 5
      • Незнание принципов ИБ не освобождает от ответственности



          Безграмотные сотрудники опасны для компании. Они могут наломать таких дров, что те придётся вывозить составами. Это справедливо для любой отрасли и должности и информационной безопасности это касается в полной мере: щелчок по вложению или принесённая из дома заражённая флешка — и всё, в сеть компании проникает шифровальщик-вымогатель, работа парализована, ИТ-отдел разыскивает актуальные резервные копии, чтобы восстановить зашифрованные вирусом диски компьютеров, а финдир подсчитывает убытки от простоя.
          Читать дальше →
        • Как взломать дорогую камеру, чтобы вас не убила жена

          • Перевод
          Дисклеймер: исследование началось в 2013 году, так что если считаете некоторые методы глупыми и опасными — вы правы, так и было. Тем не менее, я многому научился в процессе.

          Вступление
          Всё началось за несколько месяцев до рождения моего первого ребёнка. Мы с женой всегда хотели купить крутой фотоаппарат Leica и вдруг поняли, что если не купим сейчас, то уже долго не сможем это сделать. Поэтому мы заказали камеру M240 и… бум, нас поставили в очередь на полгода. Вскоре мне надоело ждать, и я начал изучать их сайт. Моё внимание сразу привлёк раздел с файлами. Ну, вы можете догадаться, почему… Прошивки!

          Я увидел незашифрованный и несжатый файл (m8-2_005.upd), который начинается с магии PWAD. Узнаёте? Да, всё правильно, это формат Doom Patch WAD. Кажется, ребята любят классику. Формат очень хорошо документирован, так что распарсить его оказалось совсем несложно.
          Читать дальше →
        • Для тех, кто познаёт ушами: подкасты для разработчиков



            Кто сказал, что разработчики могут учиться новому только через книги, видео и анализ чужого кода? Ведь у нас и другие каналы получения информации из окружающего мира. Конечно, речь не о том, чтобы попробовать знания на вкус, пощупать их или понюхать. А вот послушать — самое оно. Мы собрали для вас коллекцию действующих русскоязычных подкастов для разработчиков. Хороший способ дать глазам отдых или занять себя в пробках.
            Читать дальше →
          • Как взять сетевую инфраструктуру под свой контроль. Глава третья. Сетевая безопасность. Часть первая

              Эта статья является третьей в цикле статей «Как взять сетевую инфраструктуру под свой контроль». Содержание всех статей цикла и ссылки можно найти здесь.

              image

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

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

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

              Наша задача сейчас – выявить риски, связанные с защищенностью на уровне сети и снизить их до разумной величины.
              Читать дальше →
              • +15
              • 11,9k
              • 2
            • Новый aggregation framework в MongoDB 2.1

                В релизе 2.1 было заявлена реализация такой функциональности, как новый фреймворк агрегирования данных. Хотелось бы рассказать о первых впечатлениях от этой весьма интересной штуки. Данный функционал должен позволить в некоторых местах отказаться от Map/Reduce и написания кода на JavaScript в пользу достаточно простых конструкций, предназначенных для группировки полей почти как в SQL.

                Читать дальше →
              • Zabbix Review: как организовать code review для конфигурации мониторинга

                  Code review — инженерная практика в терминах гибкой методологии разработки. Это анализ (инспекция) кода с целью выявления ошибок, недочетов, расхождения в стиле написания кода и понимания, решает ли код поставленную задачу.



                  Сегодня расскажу о том, как мы организовали процесс review для конфигурации мониторинга в Zabbix. Статья будет полезна тем, кто работает с системой мониторинга Zabbix, как в большой команде, так в одиночку, даже если у вас «десять хостов, что там ревьюить».

                  Читать дальше →
                • Иди-ка ты сам на… или правила общения в команде

                    Пост-ответ на статью "Иди-ка ты на !@# со своей "токсичностью"".


                    Если бы я последовал советам из этой статьи, мне достаточно было бы проявить эмоцию и сказать автору "Иди-ка ты сам на ..., ты ничего не понимаешь!".


                    Однако это не помогло бы донести мою мысль. Поэтому давайте разберем поподробнее.

                    Читать дальше →
                  • Иди-ка ты на !@# со своей «токсичностью»

                      IT — не детский садик. Это место для взрослых, руководствующихся логикой и здравым смыслом. Их не надо опекать, не надо следить за словами, не надо переживать, что у них сформируются комплексы. Если человек некомпетентен, надо дать ему об этом явно понять, а не беречь его нежные чувства в ущерб всем остальным.

                      Так какого же чёрта моё прекрасное IT превращается в детский сад «Весёлый Програм-Мишка»?
                      Читать дальше →
                    • Корпоративный цейтнот

                        Атмосфера на тренинге после обеда всегда напоминала тюлений пляж. В обычной жизни, когда каждый сам регулировал объемы съеденного, такого обжорства не случалось. А здесь, когда тебе и первое, и второе, и компот подадут… И отказываться смысла нет – все оплачено.

                        Люди расположились на креслах и диванах, стоявших вдоль стен, кто-то клевал носом, кто-то ковырялся в телефоне, некоторые вели ленивую беседу, даже курильщики были здесь – лень тащиться на улицу. До конца обеда еще оставалось минут пятнадцать.

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

                        — Коллеги, беда! – запыхавшись, выпалил собственник. – Срочно все в зал!
                        Читать дальше →
                      • Наш путь к централизованному хранению логов

                          Приветствую всех! Я работаю системным инженером в компании «Онланта». На одном из наших проектов я занимался внедрением и сопровождением Elastic Stack. Мы прошли путь от сбора логов фактически вручную до централизованного, автоматизированного процесса. Вот уже два года мы практически не меняем архитектуру решения и планируем использовать удобный инструмент в других проектах. Нашей историей его внедрения, а также некоторыми сильными и слабыми сторонами делюсь с вами в этом посте.

                          Источник
                          Читать дальше →
                        • Контроль консистентности кода в Go


                            Если вы считаете консистентность важной составляющей качественного кода — эта статья для вас.


                            Вас ждут:


                            • Разные способы сделать одно и то же в Go (эквивалентные операции)
                            • Менее очевидные факторы, влияющие на однородность вашего кода
                            • Способы увеличения консистентности вашего проекта
                            Читать дальше →
                          • В Кремниевой Долине начинает формироваться мрачный консенсус по поводу детей и экранов

                            • Перевод

                            «Убеждена, что в наших телефонах живёт дьявол»




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

                            Медленно растущее беспокойство превращается в повсеместный консенсус: преимущества экранов в качестве устройства для обучения преувеличены, а риски привыкания и замедления развития велики. Сейчас в Кремниевой Долине спорят по поводу того, какое время использование телефонов считать нормальным.

                            «Полностью запретить доступ к телефону кажется почти более лёгким делом, чем ограничить его», — сказала Кристин Стечер, бывшая исследователь социальных вычислений, замужем за программистом из Facebook. «Если мои дети получают немного доступа, им хочется больше».
                            Читать дальше →
                          • Создание адаптивных изображений

                            • Перевод
                            В Интернете найдется немало статей, посвященных адаптивным логотипам. Наиболее популярным примером является сайт Responsive Logos, который показывает различные варианты известных логотипов для разных размеров экрана. Когда я впервые увидел это, я подумал, что это не более, чем просто ловкий трюк. В конце концов, это просто div для спрайта большого изображения в качестве фона. Так было до того момента, пока я не услышал доклад на Smashing Conference от MikeRiethmuller под названием «За пределами медиазапросов». Кроме того, я настоятельно рекомендую прочитать его же статью «Большой потенциал SVG».



                            Я узнал две вещи, которые меня потрясли:

                            1. При использовании SVG вы можете отказаться от атрибута viewBox и установить новую систему координат на вложенных элементах SVG путем применения нового viewBox. (Да, я знаю. Это звучит странно. Ниже я объясню все более подробно).
                            2. Когда вы используете медиазапросы внутри SVG-файлов, а затем вставляете изображение через тег img или в качестве фонового изображения CSS, медиазапросы привязаны к ширине изображения. Практически такое же поведение, как и при использовании контейнерных запросов.
                            Читать дальше →
                            • +17
                            • 8,7k
                            • 3
                          • Беспроводные метки NFC



                              Технический прогресс не стоит на месте, появляющиеся новые технологии со временем дешевеют и становятся доступны практически всем желающим. Как пример можно привести мобильные телефоны. Середина 80-ых — начало 90-ых были переносные таксофоны с ручками или кирпичи стоимостью несколько тысяч $, конец 90-ых — большого размера трубки, с торчащими антеннами со стоимостью от 100$ Такую же аналогию можно провести с NFC метками, используемыми в учетных целях.

                              • Уникальный идентификатор nfc метки можно занести в типовой регистр штрих кодов(или доп.свойств) и использовать со смартфона при заполнении, например, инвентаризации административно хозяйственного отдела.
                              • В более сложном варианте можно записывать uid номенклатуры и часть названия прямо в метку NFC, при таком варианте связь метки и номенклатуры можно хранить только в метках.
                              • Также в случае использования билетов, возможно дешифровать напечатанный номер на билете или же записывать номер заново на карту в открытом формате. Это позволит иметь механизм ручного ввода при повреждении метки, аналогично штрихкодам. Универсальное приложение чтения NFC читает и печатный номер билета и срок действия.

                              В идеальном варианте и оборудование и расходники (метки) могут ничего не стоить при условии, что у работника имеется смартфон с поддержкой NFC и сам работник не против его использования. Ну и, конечно же, удалось раздобыть необходимое количество использованных билетов. На Ali стоимость от 6 рублей с лишним за метку.
                              Читать дальше →
                            • Уходя — уходи? Ночной разговор об увольнениях

                                Нашло. Нет, накатило. 7 мест работы, 7 перемен, и ещё неизвестно, что впереди — увы, в мире корпораций нет такого, чтобы раз — и навсегда, одна запись в трудовой, одна любовь и полностью отданные душа и ум. Сейчас всё круто и завтра утром я с радостью выйду в офис, но who knows, who knows, не всё зависит от нас с вами. Так вот, увольнения бывают разные: плохие, хорошие, вынужденные, скандальные. А давайте обсудим, как оно бывает, как уйти красиво или не уйти вовсе.


                                Читать дальше →
                              • Новый выпуск GitLab 11.4 с рецензированием запросов слияния и флажками функций

                                • Перевод

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



                                Читать дальше →
                                • +19
                                • 6,7k
                                • 6
                              • Altium Designer: что делать если проект стал сложным?

                                • Tutorial
                                Приветствую! Думаю, любой инженер или просто радиолюбитель/DIYщик/мейкер, занимающийся разработкой электроники, старается развивать свои навыки, которые растут вместе со сложностью выполняемых проектов. В какой-то момент человек достигает уровня, когда ему кажется, что проекты стали очень сложными, займут много времени на разработку и надо что-то с этим делать — нужно оптимизировать свою работу. Сегодня я расскажу как в Altium Designer 18 (далее AD или AD18) повысить производительность своего интеллектуального труда и сэкономить время, нервы и деньги.


                                Читать дальше →