Нарушил карантин

В офисе медным тазом накрылся ИБП, на котором сидело четыре хоста ВМВари. Хошь не хошь, а пришлось ехать — вытаскивать тяжеленную дуру из рэка удалённо я пока не научился.

Пока ехал, видел бензин по рупь шисят, а кое-где и по рупь писят. Я таких цен уже лет пятнадцать не видел. Только кому этот бензин теперь на х. нужен.

Контора уходит на дно

Пораздавали всем сотрудникам лаптопы, научили всех пользоваться VPN и MSTSC. Эту неделю буду работать из дома, последующую буду работать уже из офиса, а там видно будет.

FIPS

Дальше всякое сисадминское.

FIPS это Федеральный Стандарт по Обработке Информации (Federal Information Processing Standard). Когда говорят FIPS, обычно подразумевают публикацию Национального Института Стандартов и Технологий (NIST) за нумером 140-2. В ней описываются всяческие стандарты безопасности, включая алгоритмы шифрования, генерации случайных чисел и т.д. В России тоже есть аналог этого документа, это ГОСТ 54583-2011.

В Винде режим совместимости с FIPS включается довольно просто — либо через групповые политики (если у нас домен) или же через локальные настройки безопасности: Local Policies -> Security Options -> Use FIPS Compliant algorithms for encryption, hashing, and signing. Это заставит все программы, выполняемые на компьютере, использовать только безопасные алгоритмы. Если же программа захочет использовать небезопасный алгоритм (например, алгоритм хеширования MD5), то она вывалится с ошибкой “не шмагла”, а в евентах останутся соответствующие матюги от SCHANNEL.

И вот заодно пнём Линукс. Вернее, не сколько сам Линукс, сколько восторженных линуксофанатов. Скажите мне, дарагие друзиа, как на вашей любимой платформе включается режим совместимости с FIPS? А? Чего молчите? Ну, тогда отвечу я: НИКАК. Чтобы получить FIPS-совместимый Линукс, надо менять ядро на FIPS-совместимое, а оно (кокой сурприз!!) — продаётся и обновляется строго за деньги. Просто вы, дарагие друзиа, ничего сложнее пишмашинки или стандартного LAMP-сервера в жизни не делали, поэтому продолжаете считать, что Линукс — он бесплатный.

Пойдём далее. Самая большая засада с включением FIPS в том, что весь софт, который не умеет в SHA, AES и прочие умные слова, перестаёт работать. И ладно там если перестаёт работать какое-то самописное изделие или ещё какой несерьёзный софт. А вот у меня вчера перестал работать SQL Server. Ага, вот так вот, мля, знай наших! Вернее, перестал работать не сам сервер баз данных, а сервис линкования серверов. Он же шпарит по шифрованому протоколу между сервантами. И вот видимо конкретно эта часть не является FIPS-совместимой, так как от сервера прилетает TCP RST сразу после попытки TLS-рукопожатия.

Будем сегодня разбираться, не то это DBA чего-то не так наконфигурял, либо надо писать телегу в Microsoft, чтобы FIPS-совместимый продукт стал, наконец, FIPS-совместимым.

Четвертые сутки пылают станицы

Всё же дал стране угля Микрософт с последним обновлением, закрывающим не просто дыру, а ДЫРУ с большой буквы в crypt32.dll ТАКИХ размеров, что филин залетает туда не складывая крыльев. Начальство потребовало, чтобы оно было установлено везде к концу недели, и у всех наших сисадминов задница в мыле.

Что интересно, кстати, что Микрософту про эту дыру рассказало АНБ США. Интересно, сколько лет они об этой дыре знали и сидели на этой информации, используя дыру в своих целях.

Ну чо, попатчимся?

Криптографические сопроцессоры (TPM) производства STM и Intel имеют уязвимость, используя которую можно вытащить из сопроцессора ключи шифрования. В том числе — и удалённо, по сети, т.к. криптографический сопроцессор используется в том числе при установлении TLS сессии. Потребуется, правда, быстрая сеть, т.к. возможность атаки сильно зависит от разницы во времени между посылками команд.

У меня сопроцессор производства Infineon, так что нужды патчиться у меня нет. Владельцы чипов Nuvoton тоже могут выдохнуть.

Просмотреть информацию о производителе cопроцессора на Винде можно при помощи утилиты tpm.msc. IFX — это Infineon. Про других не знаю.

https://www.zdnet.com/article/tpm-fail-vulnerabilities-impact-tpm-chips-in-desktops-laptops-servers/

Ну, а владельцы облачных серверов сегодня споют и спляшут — нас-то это не касается. За это мы и любим облачные технологии.

Отбивательство

Блин, последнюю неделю практически все мои разговоры на работе происходят так:

Тестеры: Вы добавили на фаерволл ексепшены?
Я: А вы мне прислали список ексепшенов как я потребовал две недели назад?
Тестеры: Вот прямо щас поглядим и пришлём!

Программисты: вы установили наш новый код на веб-приложение?
Я: А вы его скомпилировали и мне его дали, как я просил три недели назад?
Программисты: Дайте пять минут, пришлём!

Отдел документации: что-то мы до сих пор не видим новую базу данных, которую мы просили добавить
Я: А вы прислали мне схему БД которую я уже вторую неделю ежедневно прошу, чтобы я её добавил?
Отдел документации: Ну добавьте хоть чего!
Я: Чего добавлять-то? Тонну таблиц и толпу варчаров? А какой длины? Сколько? А индексы где будем делать? А проверки на уникальность? А первичный ключ надо? А кто к этому должен иметь доступ, и какой?
Отдел документации: Мы щас подумаем.

Начальник: Чего-то у нас нихера не работает!
Я: У меня все ходы записаны.
Начальник: Понятно. Щас я их смотивирую.

А завтра будет, японский бог, ровно то же самое.

Лучшие заработки — у женатых мужчин

О чём я уже неоднократно говорил.

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

LAMP-овое

Дано: сервант с PHP7 в режиме fcgi
Задача: отключить выполнение скриптов типа PHP в определённой директории.
Проблема: php_flag и прочие переменные РНР в .htaccess совать нельзя, ибо в рожу прилетает 500 (fcgi же)
Найденное решение: в нужной директории создать .user.ini, в котором сделать auto_prepend_file = stop.php, а внутри stop.php написать примерно вот так:

<?
echo “Пошёл нахер”;
exit();
?>

Но как-то это неизящно. engine = off внутри .user.ini не срабатывает почему-то, блин.

Есть что лучше?

Бегом патчиться

Дырка в OpenSSH позволяет крякеру подтвердить наличие или отсутствие пользователя в системе (пакет в ответ приходит немного разный):

https://www.bleepingcomputer.com/news/security/vulnerability-affects-all-openssh-versions-released-in-the-past-two-decades/

Не то, чтобы прям ШИБКО критично (ещё ведь надо знать пароль), но неприятно. Так как понятно, что у пользователя root пароль будет хрен догадаешься, а вот у пользователя misha — уже могут быть варианты.

Вчера файлы двигали-двигали…

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

Самая главная при этом эмоция — “ёлки-палки, сколько же вы, сволочи, храните у себя в пользовательских каталогах всякой ХЕРНИ!!”