Рубрика «Разработка под Linux» - 27

Рассказ из первых рук о том, как создается, а потом готовится к сертификации для работы с данными под грифом «особой важности» защищенная ОС Astra Linux.

Как создается ОС, сертифицированная по I классу защиты - 1
Читать полностью »

Hello World — одна из первых программ, которые мы пишем на любом языке программирования.
Для C hello world выглядит просто и коротко:

#include <stdio.h>

void main() {
  printf("Hello World!n");
}

Поскольку программа такая короткая, должно быть элементарно объяснить, что происходит «под капотом».
Читать полностью »

Очень странно, но долгие годы подряд никто не переводил на русский «Free as in Freedom 2.0» — фундаментальную книгу про Ричарда Столлмана и его крестовый поход против проприетарного ПО, соглашений о неразглашении и других вещей, попирающих фундаментальные человеческие свободы в цифровую эпоху. Время это исправить!

Свободный как ветер и бесплатный как пиво перевод «Free as in Freedom» на русский язык под лицензией GNU FDL 1.3 - 1

Читать полностью »

В предустановленных на многих дистрибутивах Linux версиях Vim и NeoVim найдена критическая уязвимость, которая позволяет злоумышленнику получить контроль над компьютером жертвы, если она откроет заражённый текстовый файл. Проблема так же касается и последней версии macOS, хотя атака сработает только если была включена опция `modelines`.

Как пояснил Armin Razmjou — исследователь, открывший уязвимость, хотя режим `modelines` и должен запускать команды исключительно в песочнице, команда :source! полностью обходит это ограничение и, таким образом, способна исполнить произвольные команды, как если бы они были вводились вручную.

В качестве конкретного примера приводится текстовый файл, который сразу же после открытия запускает бекконнект шелл и перезаписывает своё содержимое, чтобы скрыть факт атаки:

В Vim и NeoVim найдена критическая уязвимость, пора обновляться - 1

Читать полностью »

Редактор Unity теперь официально поддерживает Linux - 1

Редактор популярного игрового движка Unity для Linux уже можно скачать с официального сайта. Он доступен в тестовом режиме с версии 2019.1 для всех типов лицензий: Personal, Plus и Pro. Полная поддержка начнётся с версии 2019.3, а пока разработчики просили не стесняться и оставлять отзывы на отдельном форуме.
Читать полностью »

MessageBox — useful window for different GUI frameworks, but you can't find it in AvaloniaUI. Let's try to do it.
MessageBox for AvaloniaUI - 1
Читать полностью »

Внимание: содержит системное программирование. Да, в сущности, ничего другого и не содержит.

Давайте представим, что вам дали задание написать фэнтезийно-фантастическую игру. Ну там про эльфов. И про виртуальную реальность. Вы с детства мечтали написать что-нибудь эдакое и, не раздумывая, соглашаетесь. Вскоре вы понимаете, что о мире эльфов вы знаете по большей части из анекдотов со старого башорга и прочих разрозненных источников. Упс, неувязочка. Ну, где наша не пропадала… Наученный богатым программистским опытом, вы отправляетесь в Гугл, вводите «Elf specification» и идёте по ссылкам. О! Вот эта ведёт на какую-то PDF-ку… так, что тут у нас… какой-то Elf32_Sword — эльфийские мечи — похоже, то что нужно. 32 — это, по-видимому, уровень персонажа, а две четвёрки в следующих столбцах — это урон, наверное. Точно то, что нужно, да к тому же как систематизировано!..

Читать полностью »

Как выясняется, далеко немногие знают о существовании режима оверлеев в ACPICA и их поддержки в ОС Linux. Я хочу восполнить этот пробел на примере добавления ведомых устройств I2C в систему без перекомпиляции.
Читать полностью »

Недавно на GoTo Chicago я читала лекцию на эту тему и подумала, что будет неплохо написать статью с выводами. Этот пост посвящён тому, почему прошивки с открытым исходным кодом важны для безопасности.

Уровни привилегий

В типичном стеке у вас различные уровни привилегий.

  • Кольцо 3. Приложения: минимальное привилегий, за исключением песочницы в пользовательском пространстве, которая ещё больше ограничена.
  • Кольцо 0. Ядро: ядро операционной системы, в случае ОС с открытым исходным кодом вы видите его код.
  • Кольцо −1. Гипервизор: мониторинг виртуальных машин (VMM), создаёт и запускает виртуальные машины. В гипервизорах с открытым исходным кодом, таких как Xen, KVM, bhyve и другие, вы видите код.
  • Кольцо −2. Режим управления системой (SMM), ядро UEFI: проприетарный код, подробнее об этом ниже.
  • Кольцо −3. Движок управления: проприетарный код, подробнее об этом ниже.

Отрицательные кольца указывают на уровни с привилегиями больше, чем у нулевого.
Читать полностью »

Контейнеры представляют собой облегченную версию пользовательского пространства операционной системы Linux – фактически, это «голый» минимум. Тем не менее, это все равно полноценная операционная система, и поэтому качество этого самого контейнера так же важно, как полновесной операционной системы. Именно поэтому долгое время мы предлагали образы Red Hat Enterprise Linux (RHEL), чтобы пользователи могли иметь сертифицированные, современные и актуальные контейнеры корпоративного уровня. Запуск образов контейнеров (container images) RHEL на хостах контейнеров (container hosts) RHEL обеспечивает совместимость и переносимость между средами, не говоря уже о том, что это – уже знакомые инструменты. Была, правда, одна проблема. Вы не могли просто передать такой образ кому-то еще, даже если речь шла о заказчике или партнере, использующем Red Hat Enterprise Linux.

Build, Share, Collaborate - 1

Но теперь все изменилось
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js