LINUX.ORG.RU

Избранные сообщения Infra_HDC

Логин, пробел, дефис, root. Баг в telnet позволяет захватить компьютер без пароля

 , ,

Группа Безопасность

Уязвимость в пакете GNU InetUtils затронула все версии с 1.9.3 по 2.7 включительно.

Казалось бы, telnet давно ушел в прошлое вместе с модемами и dial-up, но именно он внезапно стал источником серьезной уязвимости. В GNU InetUtils обнаружен баг, который позволяет удаленно войти в систему под root без пароля, просто отправив специально сформированное значение переменной окружения.

Проблема затрагивает telnetd сервер, входящий в состав GNU InetUtils. Он передает программе login значение переменной USER, полученной от клиента, без какой-либо проверки. Этим можно воспользоваться, если клиент отправит строку «-f root» в качестве USER и подключится с параметром telnet -a или –login. В результате login воспринимает это как служебный флаг, пропускает стандартную процедуру аутентификации и автоматически авторизует пользователя как root.

Уязвимость получила идентификатор CVE-2026-24061 и оценку по CVSS: 9.8. Под угрозой находятся все версии GNU InetUtils, начиная с 1.9.3 и заканчивая 2.7 включительно. Баг присутствует в проекте почти 11 лет, с мая 2015 года, но был выявлен только сейчас. По сути, это классический пример уязвимости старой школы, где опасная строка без фильтрации передается системной утилите с привилегиями root.

( читать дальше... )

>>> GNU InetUtils Security Advisory: remote authentication by-pass in telnetd (seclists.org)

demo13
()

arduino vs usbasp. то ли лыжи не едут

 , usbasp

Доброго времени суток

Взял народный программатор usbasp (скорее всего, китайский клон), чтобы извращаться с arduino более плотно. Там же два чипа, а через icsp можно по spi достучаться до них обоих напрямую. Будет весело (спойлер: было, но не так, как я представлял)

Линукс новую игрушку видит. Через udev добавил симлинк

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", MODE="0660", SYMLINK+="USBasp", OWNER="router"

пнул

udevadm control --reload-rules
udevadm trigger

пока все хорошо

итак,

  • atmega328p-pu, основной чип, разъём ICSP
  • atmega16u2-mu, вспомогательный чип, разъём ICSP1 (на плате маркировки нет. есть только в datasheet. в общем тот, что ближе к USB)

отлично, avrdude согласен работать с обоими чипами:

# когда подключаюсь к ICSP, т.е. к основному чипу
avrdude -p atmega328p -c usbasp -P /dev/USBasp -v -n
avrdude -p atmega328p -c usbasp -P /dev/USBasp -v -U flash:r:/tmp/program.hex:i


# когда подключаюсь к ICSP1, т.е. ко вспомогательному чипу
avrdude -p atmega16u2 -c usbasp -P /dev/USBasp -v -n
avrdude -p atmega16u2 -c usbasp -P /dev/USBasp -v -U flash:r:/tmp/program_16u2.hex:i

Теперь пора подружить ide с новым программатором usbasp

снова подключаю usbasp к основному чипу (atmega328p, ICSP)

пока в arduino пустая программа

void loop() {
  delay(1000);

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

void setup() {
  // put your setup code here, to run once:
  pinMode(13, OUTPUT);
}

void loop() {
  //delay(1000);

  // put your main code here, to run repeatedly:
  digitalWrite(13, HIGH);
  delay(100);
  digitalWrite(13, LOW);
  delay(1000);
}
  1. tools - programmer - usbasp (по дефолту было AVRISP mkii)
  2. upload . не работает. ок, тогда
  3. sketch - upload using programmer

upload using programmer проходит. начинает мигать лампочка

проблема

а вот дальше происходит что-то непонятное:

отключаю usbasp, подключаю к плате обычный usb кабель

и arduino отказывается делать upload

avrdude тоже отказывается работать:

router@calypso:~$ avrdude -p atmega328p -c arduino -P /dev/ttyACM0 -v -n

avrdude: Version 7.1
         Copyright the AVRDUDE authors;
         see https://github.com/avrdudes/avrdude/blob/main/AUTHORS

         System wide configuration file is /etc/avrdude.conf
         User configuration file is /home/router/.avrduderc
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/ttyACM0
         Using Programmer              : arduino
avrdude stk500_recv() error: programmer is not responding
avrdude stk500_getsync() warning: attempt 1 of 10: not in sync: resp=0x00
avrdude stk500_recv() error: programmer is not responding
avrdude stk500_getsync() warning: attempt 2 of 10: not in sync: resp=0x00
avrdude stk500_recv() error: programmer is not responding
avrdude stk500_getsync() warning: attempt 3 of 10: not in sync: resp=0x00
avrdude stk500_recv() error: programmer is not responding
avrdude stk500_getsync() warning: attempt 4 of 10: not in sync: resp=0x00

лампочка мигает, т.е. программа, которую я до этого залил через usbasp, выполняется

очень интересно. отключаю usb кабель, подключаю usbasp к основному чипу (atmega328p, ICSP)

через avrdude пробую прогнать verify (сравнить с дампом, который я сделал до изменения программы)

router@calypso:~$ avrdude -p atmega328p -c usbasp -P /dev/USBasp -v -U flash:v:/tmp/program.hex:i

[...]

Reading | ################################################## | 100% 8.18 s

avrdude avr_verify() warning: verification mismatch
        device 0xff != input 0x04 at addr 0x0254 (error)
        device 0xff != input 0x01 at addr 0x0255 (error)
        device 0xff != input 0x30 at addr 0x0256 (error)
        device 0xff != input 0x91 at addr 0x0257 (error)
        device 0xff != input 0x00 at addr 0x0258 (error)
        device 0xff != input 0x01 at addr 0x0259 (error)
        device 0xff != input 0x23 at addr 0x025a (error)
        device 0xff != input 0xe0 at addr 0x025b (error)
        device 0xff != input 0x23 at addr 0x025c (error)
        device 0xff != input 0x0f at addr 0x025d (error)
        suppressing further verification errors
avrdude do_op() error: verification mismatch

для очистки совести подключаюсь к второму чипу (atmega16u2, ICSP1), прогоняю верификацию и на нём - там всё в порядке

снова подключаюсь к основному чипу (atmega328p, ICSP) и через avrdude заливаю старый дамп

router@calypso:~$ avrdude -p atmega328p -c usbasp -P /dev/USBasp -v -U flash:w:/tmp/program.hex:i

[...]

avrdude: auto set sck period (because given equals null)
avrdude: AVR device initialized and ready to accept instructions
avrdude: device signature = 0x1e950f (probably m328p)
avrdude: Note: flash memory has been specified, an erase cycle will be performed.
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: reading input file /tmp/program.hex for flash
         with 32768 bytes in 1 section within [0, 0x7fff]
         using 256 pages and 0 pad bytes
avrdude: writing 32768 bytes flash ...

Writing | ################################################## | 100% 11.58 s

avrdude: 32768 bytes of flash written
avrdude: verifying flash memory against /tmp/program.hex

Reading | ################################################## | 100% 8.00 s

avrdude: 32768 bytes of flash verified

avrdude done.  Thank you.

отключаю usbasp, подключаю плату обычным usb кабелем. Теперь снова с ней работает и arduino ide, и avrdude

для очистки совести воспроизвожу проблему

  1. подключаю программатор usbasp к основному чипу (atmega328p, ICSP)
  2. через arduino ide залил новую программу. вижу, что она начала работать
  3. отключаю usbasp, подключаю плату обычным usb кабелем. программа выполняется
  4. проблема. arduino ide отказывается что-либо прошивать. avrdude отказывается работать с платой

  1. отключаю обычный usb, подключаю usbasp к основному чипу, заливаю старый дамп
  2. отключаю программатор usbasp, подключаю обычный usb
  3. все работает

WTF?

Я не менял ничего на вспомогательном чипе atmega16u2, который обеспечивает работу с usb, поддержку cdc acm, поддержку dfu. и прошивку основного чипа без дополнительных программаторов

Насколько я понимаю, я менял исключительно программу для основного чипа

Каким образом это могло привести к тому, что штатный программатор - вспомогательный чип atmega16u2 - отказывался работать с основным (до возвращения старого дампа)?

router
()

Debian Trixie без systemd

 , , , ,

Лет 10 назад Дебиан «перешёл на systemd», по каковому поводу в сообществе возникло много споров, которые не смолкают и поныне. Появившийся в те годы дистрибутив Devuan, который во всём похож на Дебиан, кроме того, что отвязан от systemd, продолжает обновляться следом за Дебианом.

Лет 5 назад Дебиан «перешёл на Wayland» — такая же история, с тем отличием, что поддержка X11 была сохранена и форка не возникло.

Никогда не видел смысла в использовании Wayland или systemd. X11 и sysvinit работали десятилетиями, претензии к ним сомнительны. Кажется, единственным заметным для пользователя преимуществом systemd является распараллеливание запуска служб, благодаря чему ускоряется загрузка, но это преимущество сходит на нет, когда загрузка происходит не чаще раза в неделю. В реализации X11 якобы накоплены какие-то костыли, но почему это должно заботить пользователя — решительно непонятно (с другой стороны, пользователя заботит отсутствие аналога ssh -X в Wayland, а также, по слухам, проблемы с трансляцией экрана и отваливание случайных функций случайных приложений.

( читать дальше... )

ringill
()

Telegram браузер по умолчанию

 

Всем доброе утро. Юзаю дебиан 12 xfce. Не могу понять, как настроить браузер по умолчанию для открытия ссылок в телеграмм. В «приложениях по умолчанию» стоит яндекс браузер, который мне и нужен. Телеграмм открывает в firefox по стандарту, если поставить хромиум, то он берет инициативу на себя. Телеграмм пробовал с оф репы и flatpak.

Перемещено hobbit из general

copentry
()

Почему squid может не отдавать полную цепочку сертификата?

 , ,

Собственно subj. Т.е. openssl s_client при коннекте не то чтобы не получает от сервера сертификат, он просто получает из всей цепочки только первый сертификат и не может проверить его подлинности. Ну и curl на него ругается

curl: (60) SSL certificate OpenSSL verify result: unable to get local issuer certificate (20)
More details here: https://curl.se/docs/sslcerts.html

Сервер - Ubuntu 24.04.3 LTS
OpenSSL - 3.0.13 30 Jan 2024 (Library: OpenSSL 3.0.13 30 Jan 2024)
Squid Cache: Version 6.13

Причём в самом файле сертификата лежит полная цепочка и тот же lighttpd на другом сервере цепочку отдаёт полностью.

UPD: поставил не тот пакет squid. Поставил squid-ssl и всё заработало.

WatchCat
()

Опубликован эмулятор архитектуры Эльбрус на основе QEMU

 , , ,

Группа Разработка

МЦСТ выпустила эмулятор QEMU для архитектуры E2K. Теперь программы для Эльбруса можно запускать на компьютерах с архитектурой x86‑64. Это откроет платформу для профессионалов, исследователей и энтузиастов, а также упростит разработчикам сборку и тестирование ПО.

Эмулятор qemu-e2k обеспечивает возможность, используя операционную систему семейства Linux запускать прикладные программы для операционных систем семейства Linux в машинных кодах Эльбрус (e2k) на компьютере архитектуры x86-64.

( читать дальше... )

>>> Исходные тексты QEMU от АО "МЦСТ" (openelbrus.ru)

IvGrad
()

Нашлась единственная уцелевшая копия ОС Unix v4

 , ,

Группа Open Source

В школе вычислительной техники при Университете Юты (США) нашли и восстановили магнитную ленту, на которой оказалась единственная из известных копий операционной системы Unix v4 — первой, чьё ядро, драйверы и основные утилиты были написаны на новомодном в те времена языке C.

Восстановленные данные заняли всего 40 Мбайт — они доступны для скачивания вместе с инструкцией по запуску ОС. Unix v4 работал на продвинутом по тем временам мини-компьютере DEC PDP-11, который эмулировали при помощи SimH. На момент выпуска система оставалась экспериментальным проектом.

>>> Анонс

>>> Исходные тексты (squoze.net)

anonymous
()

Обзор отечественного ноута на отечественной UNCOM OS

 , , ,

Вроде бы, по соотношению цена/качество ноут неплохой, но сам обзор эталонное КГ/АМ

AMD Ryzen 7, 16Гб ОЗУ, 512 ГБ SSD за 41 тыщу

Обои нескучные.

tiinn
()

Debusine — «PPA для Debian», теперь в реальности

 , debusine,

Группа Debian

Сообщество Debian радо объявить о запуске публичной бета-версии новой функции в рамках проекта Debusine — теперь разработчики могут создавать и поддерживать APT-совместимые репозитории дополнительных пакетов, по функционалу аналогичные PPA в Ubuntu. Это решение должно упростить тестирование, совместную разработку и распространение пакетов за пределами основного архива Debian.

( читать дальше... )

>>> Источник (debian.org)

Aurum
()

Microsoft заявила, что удалит весь С/С++ код к 2030му

 , , ,

…и заменить его на Rust

Компания ставит целью показатель «1 разработчик, 1 месяц, 1 рейх 1 000 000 строк кода».

Сорс: https://www.thurrott.com/dev/330980/microsoft-to-replace-all-c-c-code-with-rust-by-2030

PPP328
()

Проверка большого числа условий на си

 

Сейчас я пишу такой код:

	if( phonebookEntry->index < 0 && phonebookEntry->telNo && !phonebookEntry->name ){
		//только телефон
	}else if( phonebookEntry->index < 0 && phonebookEntry->telNo && phonebookEntry->name ){
		//телефон и имя
	}else if( phonebookEntry->index >= 0 && !phonebookEntry->telNo && !phonebookEntry->name ){
		//только индекс
	}else if( phonebookEntry->index >= 0 && phonebookEntry->telNo && !phonebookEntry->name ){
		//индекс и телефон
	}else if( phonebookEntry->index >= 0 && phonebookEntry->telNo && phonebookEntry->name ){
		//индекс, телефон и имя
	}else{
		//недопустимое сочетание
	}

И я заметил, что в каждом условном операторе сразу проверяется случая и подумал, а что если поступить вот так:

	unsigned int condition = 0;
	
	if( phonebookEntry->index >= 0 ) condition |= 1;
	if( phonebookEntry->telNo      ) condition |= 1 << 1;
	if( phonebookEntry->name       ) condition |= 1 << 2;

И дальше переменную condition запихнуть в switch или вообще использовать в качестве индекса в массиве указателей? Мой случай ещё пограничный, но если добавить ещё один параметр, то вариантов уже будет 16! Короче, степень двойки. Я один такой упоротый или такое где-нибудь применяется?

u5er
()

МСВСфера 10.1 с локальным ИИ-ассистентом «Василиса» стала доступна бесплатно

 

МСВСфера 10.1 с локальным ИИ-ассистентом «Василиса» стала доступна бесплатно
Группа Linux в России

В середине декабря 2025 года вышла российская операционная система «МСВСфера 10.1» на основе Red Hat Enterprise Linux с встроенным локальным ИИ-ассистентом «Василиса». Эта версия ОС доступна бесплатно пользователям для рабочих станций.

( читать дальше... )

>>> Подробности (Habr) (habr.com)

unclestephen
()

Книги про Rust

 , ,

Подскажите какую-нибудь литературу про rust. Для разнообразия. Есть rust-book https://doc.rust-lang.org/book/ - он мне показался хаотичным, с едва уловимой последовательностью(если она там вообще есть), написан видимо не для новичков (я новичек) и сразу показывает все возможности языка, ясность изложения под вопросом и вообще мне показался как сборник bad practices по программированию. Мне кажется на раст можно проще писать, не используя большую часть описанного в этой книге. Или они так специально повышают порог вхождения?(меня терзают смутные сомнения)

nionio35
()

iptables Не проходит добавление правил

 ,

Приветствую Вас гуру формовчане!!!

OS ubuntu 24.04

при попытке добавить именно вот это правило

iptables -A FORWARD -i eth0 -o tun0 -m state --state ESTABLISHED,RELATED -j A

1 раз выдало

Try `iptables -h' or 'iptables --help' for more information```

я попытался исправить командой

```update-alternatives --set iptables /usr/sbin/iptables-legacy```

Теперь стало выдавать

```iptables v1.8.10 (legacy): Couldn't load target `A':No such file or directory
Try `iptables -h' or 'iptables --help' for more information```

Вопрос где ошибка запряталась?
или так. что я не так сделал?
Сразу скажу просто подскажите решение, а не рассуждайте какой я тупой и тому подобное 

С уважением 
elavex
()

systemd 259

 

Группа Linux General

Новый systemd к нам мчится! Чем же порадует энтузиастов GNU/Linux самый распространённый системный менеджер в последнем релизе уходящего года?

  • расширение интерфейса Varlink IPC (догоняем D-Bus);
  • опция ExecReloadPost= для юнитов (стреляет после перечитывания конфигурации сервисом);
  • конфиги /etc/systemd/systemd-sysext.conf и /etc/systemd/systemd-confext.conf для соответствующих сервисов;
  • systemd-vmspawn научился пробрасывать системного пользователя внутрь виртуалки с помощью --bind-user=/--bind-user-shell=;
  • опцию --recovery-key= у homectl теперь можно использовать и при операции update, а не только при создании пользователя;
  • systemd-machined и systemd-importd теперь можно запускать отдельно для каждого пользователя;
  • run0 получил опцию --empower (использует соответствующую системную группу) для повышения привилегий через механизм capabilities без смены UID - меньше шансов создать файлы от рута или ещё как-то напортачить ненароком;
  • расширения конфиг файлов (которые в каталоге что-то.d/ ) с суффиксом .ignore теперь, ожидаемо, игнорируются;
  • множество не менее праздничных нововведений и улучшений.

Поддержка скриптов System V объявлена устаревшей и планируется к удалению – системы и пакеты, пребывающие в состоянии летаргии, нужно из него вывести.

>>> Release notes (github.com)

zabbal
()

КОМПАС-3D v24

 , , , ,

Группа Проприетарное ПО

Компания АСКОН объявляет о старте продаж нативной версии системы трехмерного проектирования КОМПАС-3D v24, разработанной специально для российских операционных систем на ядре Linux.

Ранее совместимость с ОС на Linux обеспечивалась через приложение WINE@Etersoft компании «Этерсофт». Теперь КОМПАС-3D работает непосредственно в операционной системе.

Linux-версия КОМПАС-3D v24 предлагает те же базовые возможности, что и Windows-версия. Обеспечено единство форматов документов, интерфейса и подходов к работе.

( читать дальше... )

avgust23
()

Новый малоизвестный Linux-бекдор GhostPenguin

 , ,

Группа Безопасность

Новый малоизвестный Linux-бекдор GhostPenguin вышел из тени благодаря автоматизированной охоте на угрозы, в которой Trend Research использовала ИИ для анализа тысяч недетектируемых образцов с VirusTotal. Специалисты обнаружили ранее не документированное вредоносное ПО, скрывавшееся более четырёх месяцев без единого срабатывания антивирусов, и детально разобрали его устройство, коммуникации и архитектуру. По сути, GhostPenguin — это многопоточный C++-имплант, который обеспечивает удалённый интерактивный shell, практически полный контроль над файловой системой и надёжный обмен данными через RC5-шифрованный канал по UDP на порту 53.

( читать дальше... )

>>> AI-Automated Threat Hunting Brings GhostPenguin Out of the Shadows (trendmicro.com)

demo13
()

CDE 2.5.3

 ,

Группа Open Source

25 ноября 2025 вышла версия Common Desktop Environment 2.5.3. В основном это релиз с исправлениями различных ошибок.

Common Desktop Environment — среда рабочего стола, основанная на Motif, в основном использовалась в проприетарных операционных системах UNIX, OpenVMS. CDE разработана в The Open Group совместно с Hewlett-Packard, IBM, Novell и Sun Microsystems и основана на Visual_User_Environment (VUE) от HP.

6 августа 2012 года исходный код CDE был опубликован на SourceForge.net под лицензией GNU LGPL, за последующие годы сообществом выпущен ряд новых версий.

( читать дальше... )

>>> Подробности (sourceforge.net)

vbcnthfkmnth123
()

Как решить конфликт ключей?

 

Ubuntu 24.04. Вот такая хрень

sudo apt update
E: Указаны конфликтующие значения параметра Signed-By из источника https://deb.opera.com/opera-stable/ stable: /usr/share/keyrings/opera-browser.gpg != 
E: Не удалось прочитать перечень источников.

Opera устанавливал через терминал (не snap) несколько дней назад

/etc/apt/keyrings пустая

ls /usr/share/keyrings
ubuntu-archive-keyring.gpg          ubuntu-pro-esm-apps.gpg
ubuntu-archive-removed-keys.gpg     ubuntu-pro-esm-apps-legacy.gpg
ubuntu-cloudimage-keyring.gpg       ubuntu-pro-esm-infra.gpg
ubuntu-cloudimage-removed-keys.gpg  ubuntu-pro-esm-infra-legacy.gpg
ubuntu-master-keyring.gpg           ubuntu-pro-fips.gpg
ubuntu-pro-anbox-cloud.gpg          ubuntu-pro-fips-preview.gpg
ubuntu-pro-cc-eal.gpg               ubuntu-pro-realtime-kernel.gpg
ubuntu-pro-cis.gpg                  ubuntu-pro-ros.gpg
ls /etc/apt/sources.list.d
oibaf-ubuntu-graphics-drivers-jammy.list
oibaf-ubuntu-graphics-drivers-jammy.list.distUpgrade
opera-archive.list
opera-stable.list
psi-plus-ubuntu-ppa-noble.sources
mark-v
()

А LOR оказывается в белых списках

 , ,

Сегодня обратил внимание. По ночам у нас постоянно сирена и желтый/красный уровень опасности. Так что по утрам интернет часов до 10-11 заглушен. Но LOR без проблем работает и на TELE2 и на Мегафоне. Opennet не работает. Кто это так подсуетился?

AleksK
()