• Эксперт обнаружил критическую уязвимость в Windows 10. Однострочная команда повреждает NTFS на диске



      По информации Bleeping Computer, эксперт Джонас Л. предупредил о серьезной уязвимости в драйвере Windows NTFS во всех версиях Windows 10, начиная с 1803 и выше, включая 20H2.

      Уязвимость можно активировать однострочной командой. Она мгновенно производит повреждение файловой системы NTFS на жестком диске. Сразу после ее отработки Windows 10 предлагает пользователю перезагрузить ПК, чтобы восстановить поврежденные записи и исправить индексацию на диске.

      Данная уязвимость доступна не только из под администратора, ее может использовать любой пользователь Windows 10 с низкими привилегиями в системе. Уязвимость можно активировать удаленно, а также встраивать в HTML. В некоторых системах после ее отработки повреждается MFT.
      Читать дальше →
    • Systemd для продолжающих. Part 1 — Запуск юнитов по временным событиям

      • Tutorial

      Всем привет! В последнее время я вплотную занимаюсь исследованием возможностей systemd и решил поделиться результатом исследований с сообществом, в виде небольшого (или большого, как пойдёт ;-) цикла статей. Итак первым номером нашей программы будет запуск юнитов по различным событиям происходящим во время работы ОС. В качестве исследовательской платформы будет выступать Manjaro Linux c systemd v247.2. И... да. Некоторые события, вынудили меня написать внеочередную статью, которая «взлетела на вершину хит-парада», а опрос показал, что тема актуальна и вызывает интерес, так что погнали!

      Нырнуть в кроличью нору!
    • Почему хабражители предпочитают велосипеды, вместо готовых решений? Или о systemd, part 0

      • Tutorial

      С Новым Годом Хабр!
      Первого января все нормальные люди занимаются прокрастинацией, уничтожением стратегического запаса оливье и прочими, не связанными с физической или интеллектуальной нагрузкой вещами. Вот и я планировал присоединиться к этой новогодней армии, но не тут-то было!

      Во всём виноват Хабр!
    • Решаем мини-игру про взлом протокола в Cyberpunk 2077 за 50 строк на Python

      • Translation
      image

      Если вы хотя бы отдалённо интересуетесь играми и не прожили последнюю пару лет в тайге, то, вероятно, слышали что-нибудь о Cyberpunk 2077. После долгого ожидания она наконец вышла! И в ней есть мини-игра про взлом! И чем больше получишь в ней очков, тем ценнее приз! Может ли магия Python дать нам преимущество в этом жестоком Нете? Разумеется.

      Краткое описание мини-игры: игроку даётся квадратная матрица и одна или несколько последовательностей шестнадцатеричных чисел, а также буфер определённой длины. Цель игрока — завершить наибольшее количество последовательностей, выбирая столько узлов, сколько позволяет буфер. Каждая последовательность заполняется значением, если выбранный узел является следующим узлом последовательности. В начале игры можно выбрать любое из значений в первой строке матрицы. После этого в каждом ходе можно попеременно выбирать N-ный столбец/строку, где N — индекс последнего выбранного значения. Если это ужасное описание вам не помогло, то более подробное можно прочитать здесь.
      Читать дальше →
    • Реверсим и улучшаем SATA контроллер

        Вы когда-нибудь задумывались, как много вокруг умной электроники? Куда ни глянь, натыкаешься на устройство, в котором есть микроконтроллер с собственной прошивкой. Фотоаппарат, микроволновка, фонарик... Да даже некоторые USB Type C кабели имеют прошивку! И всё это в теории можно перепрограммировать, переделать, доработать. Вот только как это сделать без документации и исходников? Конечно же реверс-инжинирингом! А давайте-ка подробно разберём этот самый процесс реверса, от самой идеи до конечного результата, на каком-нибудь небольшом, но интересном примере!

        Читать далее
      • Ультимативный гайд по поиску утечек памяти в Python

        • Tutorial

        Практика показывает, что в современном мире Docker-контейнеров и оркестраторов (Kubernetes, Nomad, etc) проблема с утечкой памяти может быть обнаружена не при локальной разработке, а в ходе нагрузочного тестирования, или даже в production-среде. В этой статье рассмотрим причины появления утечек в Python-приложениях, доступные инструменты для отладки и мониторинга работающего приложения, а также общую методику поиска утечек памяти.

        Читать далее
        • +61
        • 7.7k
        • 4
      • Устройство пакетной системы OpenWrt

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



          OpenWrt использует opkg в качестве пакетного менеджера, точнее, собственный форк. Дебианщикам он во многом покажется знакомым: похожие команды, похожий формат репозитория и пакетов.

          Мне захотелось запатчить LUCI (этого в статье не будет), но адекватного быстрого введения я не нашёл, пришлось самостоятельно собирать отрывки сведений из разрозненной документации, статей и примеров, поглядывая в код и на результаты работы. Бонусом собрал примитивный (но бесполезный на практике) пакет, которого ещё нет в репозитории. Собранным ликбезом делюсь ниже.
          Читать дальше →
          • +47
          • 7.8k
          • 7
        • Itertools в Python

          • Translation

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

          Модуль itertools находится в стандартной библиотеке Python.

          Модуль представляет следующие типы итераторов: 

          - Бесконечные итераторы;

          - Конечные итераторы;

          - Комбинаторные генераторы.

          Читать далее
          • +13
          • 5.2k
          • 1
        • Собираем логи с Loki


            Мы в Badoo постоянно мониторим свежие технологии и оцениваем, стоит ли использовать их в нашей системе. Одним из таких исследований и хотим поделиться с сообществом. Оно посвящено Loki — системе агрегирования логов.


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

            Читать дальше →
          • Пишем «Змейку» для клавиатуры с подсветкой

            • Translation


            Введение


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

            Разумеется, жизнь большинства клавиатур не вечна. (Хотя я сильно подозреваю, что моя домашняя IBM Model M практически бессмертна.) Однажды я заметил, что клавиша Shift моей рабочей клавиатуры начала отказывать. Из-за этого мои электронные письма начали выглядеть более ленивыми, а в коде воцарился хаос, поэтому мне понадобилась новая клавиатура. Старая клавиатура была вполне неплохой, но в целом довольно стандартным устройством с резиновыми прокладками переключателей, поэтому у меня появилась неплохая возможность взять что-нибудь получше, например, механическую клавиатуру.

            Я вышел в Интернет и поискал хорошую клавиатуру. Я хотел что-нибудь с механическими переключателями Cherry Brown, потому что, скорее всего, никого бы не обрадовал громкими Cherry Blue. Довольно полезным было бы отсутствие лишних десяти клавиш (цифровой клавиатуры справа), потому что я всё равно ими не пользуюсь и это уменьшило бы расстояние, на которое нужно перемещаться моей руке к трекболу.

            Самой дешёвой клавиатурой, удовлетворяющей всем этим требованиям, оказалось устройство с довольно длинным названием: Coolermaster Quickfire Rapid-I.
            Читать дальше →
            • +46
            • 10.5k
            • 6
          • Почему песок мягкий?

            • Translation

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


            Какой песок в мире самый мягкий? Почему одни виды песка мягче других?
            — спрашивает Питер С. из Бруклина

            Мы не знаем. Никто не понимает, как работает песок.

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



            Допустим, вы решили сделать песочные часы и заполнить их гранулами песка, размер и форма которых известны. Вы не найдёте формулы, способной точно предсказать, сколько времени песок будет перетекать из одной части часов в другую, и будет ли он перетекать вообще. Вам останется только провести эксперимент.
            Читать дальше →
          • Как получить 9В/12В от зарядного с Quick Charge (на примере STM32)

            Чем может быть полезна быстрая зарядка


            С увеличением ёмкости аккумуляторов телефонов потребовалось увеличить и мощность зарядных устройств, чтобы достичь маленького времени зарядки, для чего и нужно было увеличивать выходную мощность: напряжение, ток. Таким образом зарядные с Quick Charge 3.0 кроме 5 В могут выдавать 9В/12В/20В +возможность регулировки с шагом 0.2 В (до 12 В).


            image

            Ввиду распространенности ЗУ с этой технологией появляется интерес использовать их для получения повышенного напряжения без дополнительных преобразователей.

            Читать дальше →
          • Разбираемся с модулем ШИМ на tms320

            Добрый день. Какое-то время назад я прочёл, что какому-то человеку захотелось изучить поглубже вопрос про ePWM модуль на мк tms320f28xxx, поэтому я решил, почему бы и мне не написать статью на эту тему, в которой я постараюсь подробно разжевать этот модуль на примере tms320f28335.
            Читать дальше →
            • +14
            • 2.3k
            • 6
          • Электронная книжка в качестве дисплея

            • Tutorial
            Нетрадиционное применение распространённых вещей — это то, что всегда нам интересно! Ведь так хочется порой похачить очередное устройство. Понять как оно работает и внести какие-то свои коррективы в его работу, добавив новых функций.


            Выводим свои картинки

            Я расскажу, как можно старенькую читалку Sony PRS-505 превратить в удобный дисплейчик. И также расскажу, как можно писать свои программы для этой книжечки

            Погнали
          • Про установку и использование LineageOS 16, F-Droid

              Предлагаю вашему вниманию инструкцию как оптимально (по моему мнению) перейти на свободное программное обеспечение при использовании смартфона на примере операционной системы LineageOS (далее сокращённо LOS) и приложений из F-Droid.

              Я думаю, что это статья будет вам интересна, даже если вы не можете установить себе LOS, так как в данной статье также рассмотрены стандартные настройки Android, настройки и методика использования полезных приложений, магазин приложений F-Droid, разрешения Android, которые нельзя ограничить и другие, возможно полезные для вас нюансы.
              Читать дальше →
            • Python и теория множеств

              Python и теория множеств


              В Python есть очень полезный тип данных для работы с множествами – это set. Об этом типе данных, примерах использования, и небольшой выдержке из теории множеств пойдёт речь далее.


              Читать дальше →
            • Обзор возможностей Qt Creator 4.13 и QBS 1.17 для программирования микроконтроллеров

                Здравствуйте, товарищи программисты «железячники» и все кто им сочувствует. Я хотел бы продолжить обзор возможностей IDE Qt Creator в связке с системой сборки QBS в части программирования микроконтроллеров.

                Ранее я уже писал про улучшения в предыдущих версиях:


                Кому эта тема интересна, добро пожаловать по кат.
                Читать дальше →
              • Три редко используемых возможности Python 3, о которых каждый должен знать

                • Translation

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

                Данная статья является переводом 3 Neglected Features in Python 3 That Everyone Should Be Using.
                Читать дальше →
              • Памятка для пострадавшего от слезоточивого газа/перцового баллона

                • Tutorial
                Началась эта история еще в докоронавирусное время, еще тогда когда в моем LAB66 была всего пара тысяч подписчиков и работал бот-автоответчик. И вот в этот бот как-то постучался русскоговорящий парень из Чили и задал вопрос про слезоточивый газ. Про то, как жить вообще, когда по улицам ездят автомобили и распыляют «просроченный слезоточивый газ из Бразилии». Тогда я клятвенно пообещал вопросом этим заняться. Прошло… а прошло всего лишь полгода (хотя из-за обилия событий в 2020 кажется, что прошло 20 лет :) и я решил наконец написать парню ответ. Извини за задержку, Sergio из Чили, я был занят коронавирусом… Читай ответ под катом!


                Всякое в жизни бывает, а вдруг да и пригодится...
              • Как мы в Dropbox перешли с Nginx на Envoy

                • Translation

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


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