reload_flag=""
if [[ -n "${DEBUG}" ]]; then
reload_flag="--reload"
fi
if [[ -n "${WORKER_COUNT}" ]]; then
workers=${WORKER_COUNT}
else
workers=2
fi
gunicorn --workers ${workers} \
--bind 0.0.0.0:8000 \
${reload_flag} main.wsgi
Писали такие конструкции чтобы проверить наличие флага и сформировать команду правильно?
На самом деле можно сделать тоже самое проще. Для этого используются операторы условной подстановки, доступные в оболочках семейства POSIX.
:- для установки значений по умолчанию
${WORKER_COUNT:-2}
Если переменная не объявлена, то будет дефолтное значение 2.
:+ подставляет указанный текст, если переменная не пуста
${DEBUG:+--reload}
Если что-то есть в переменной то распечатается текст после символа +, в противном случае - ничего. Удобно для опциональных флагов, как в нашем примере.
Итого наш скрипт может выглядеть так:
gunicorn --workers ${WORKER_COUNT:-2} \
--bind 0.0.0.0:8000 \
${DEBUG:+--reload} main.wsgi
Есть еще два оператора.
:= не только подставить дефолтное значение, но и присвоить его переменной, если она пуста
# никаких переменных еще нет
VAL1=${VAL2:=hello}
# теперь доступны обе
echo $VAL1 $VAL2
# hello hello
:? остановить выполнение с ошибкой, если переменной нет.
echo ${MISS:?is required}
bash: MISS: is required
Код выхода будет 1.
#tricks#linux
Интересный сюжет о разработке кибероружия в США подкинул U.S. Department of Justice. 29 октября они опубликовали на своём сайте новость о судебном процессе. В ней фактически признаётся, что США занимаются целенаправленной разработкой кибероружия, т.е. средств эксплуатации 0day-уязвимостей. Вендорам уязвимых продуктов они об этом, естественно, ничего не сообщают. 😏
В создании таких средств участвуют компании "оборонные подрядчики" ("U.S. defense contractors"). Одна из таких компаний (Wired пишет, что это Trenchant) разрабатывала ПО, связанное с нацбезопасностью и "как минимум восемь чувствительных и защищённых компонентов кибер-эксплойтов". Хотя это ПО предназначалось только для правительства США и союзников, ТОП-менеджер этой компании продал его за $1.3 млн некоторому иностранному брокеру. 🤷♂️ Ущерб компании оценивается в $35 млн. Менеджер признал себя виновным в суде, ему грозит до 20 лет тюрьмы и штраф от $250 000 до 2x ущерба.
Такой вот кипеш из-за "простых уязвимостей". 😉
@avleonovrus#thoseamericans
13 ноября NIST NVD наконец признали очевидное: им не удалось разобрать бэклог по анализу CVE до конца фискального года (30 сентября). Что, в общем-то, видно в их же статистике. На текущий момент в бэклоге 19860 идентификаторов. За эту неделю новых CVE поступило 1136, а проанализировали они только 510. И это не какая-то аномальная неделя, это сейчас норма. Они не справляются с разбором нового, чего уже говорить о бэклоге. Кризис продолжается.
При этом в сообщении они почему-то пишут, что у них полная команда аналитиков, и они обрабатывают все входящие CVE по мере их загрузки в систему. Но почему тогда их статистика показывает обратное?
Они пишут, что теперь обрабатывают все уязвимости из CISA KEV. И это хорошо. Но в CISA KEV за 2024 год добавили пока только 162 CVE. Круто, что они осилили эти идентификаторы, но достижение, мягко говоря, не впечатляет.
Почему NVD не справляются с бэклогом?
Они пишут, что дело в формате данных от Authorized Data Providers (ADPs), видимо имея в виду под этим CISA Vulnrichment. NVD не могут эффективно импортировать и улучшать данные в этом формате. Чтобы это делать они разрабатывают какие-то "новые системы".
То есть мало того, что они расписались в неспособности анализировать уязвимости самостоятельно и готовы использовать чужие данные as is, они ещё и не могут парсеры-конвертеры писать за адекватное время. 🐾 Просто удивительные. 🤦♂️
И тут ещё прошла новость, что сенатор Рэнд Пол, новый председатель Senate Homeland Security Committee пообещал серьезно сократить полномочия CISA или полностью их ликвидировать. Наш слоняра! 😁🐘 Весь движ там из-за работы CISA "по противодействию дезинформации" перед американскими выборами. Но под это дело могут угробить единственного американского ИБ-регулятора, который делает хоть что-то полезное и в адекватные сроки. Молодцы, так держать. 👍
Ничего кроме дальнейшей деградации ждать не приходится.
@avleonovrus#NIST#NVD#CISA#Vulnrichment#thoseamericans