This media is not supported in your browser
VIEW IN TELEGRAM
В репозитории собраны статьи, доклады, инструменты, стандарты, курсы и реальные практики внедрения безопасности в процесс разработки, от анализа кода до защиты контейнеров и облаков. Здесь можно найти материалы по SAST/DAST, безопасности Docker и Kubernetes, IaC-сканированию, compliance-подходам и другим важным аспектам современной инфраструктуры.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍9🔥7
Это подборка must-have инструментов с краткими описаниями. Охватывает сканирование, анализ, эксплуатацию, мониторинг и защиту — от сетей до malware.
Идеально для пентестера или админа, чтобы быстро выбрать инструмент под задачу.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤5👍3🤝1
Безопасность в интернете — всё. В России фиксируются странные атаки на популярные сервисы, а крупные СМИ делают вид, что ничего не происходит
Недавно легла одна из главных опор интернета — Cloudflare, после которой посыпались все сайты, и это лишь верхушка айсберга. У крупных сервисов тихо утекают базы, ломают криптокошельки и пользуются уязвимостями, а люди узнают об этом только когда их данные и деньги уже на теневых площадках
Так что, если не хотите однажды проснуться с пустыми счетами или украденными аккаунтами, советуем хотя бы раз в день читать живые кибер-сводки, а не вылизанные новостные каналы
Именно такие вещи без прикрас разбирают в канале heavyinternet: там ежедневно публикуются настоящие атаки, свежие утечки и предупреждения, которые вы не увидите в официальных новостях
Подпишись, позаботься о своих финансах и безопасности в интернете: https://t.me/+EZfVPgZGLppiNmVi
Недавно легла одна из главных опор интернета — Cloudflare, после которой посыпались все сайты, и это лишь верхушка айсберга. У крупных сервисов тихо утекают базы, ломают криптокошельки и пользуются уязвимостями, а люди узнают об этом только когда их данные и деньги уже на теневых площадках
Так что, если не хотите однажды проснуться с пустыми счетами или украденными аккаунтами, советуем хотя бы раз в день читать живые кибер-сводки, а не вылизанные новостные каналы
Именно такие вещи без прикрас разбирают в канале heavyinternet: там ежедневно публикуются настоящие атаки, свежие утечки и предупреждения, которые вы не увидите в официальных новостях
Подпишись, позаботься о своих финансах и безопасности в интернете: https://t.me/+EZfVPgZGLppiNmVi
👎9❤2👍1
Переменные окружения в Linux: управление поведением процессов!
Переменные окружения (environment variables) задают контекст выполнения программ. Через них настраиваются shell, компиляторы, интерпретаторы, библиотеки и большинство CLI-утилит. Это базовый механизм конфигурации в Unix-подобных системах.
Посмотреть все переменные окружения текущего процесса (shell):
или:
Обе команды выводят окружение текущего процесса (экспортированные переменные).
Посмотреть значение конкретной переменной:
Кавычки важны при подстановке переменных: они предотвращают нежелательное разбиение на слова и обработку спецсимволов (особенно если значение содержит пробелы или символы glob).
Временная переменная для одного запуска программы:
Переменная будет доступна только процессу
Экспорт переменной в текущей сессии shell:
После
Удаление переменной:
Удаляет переменную из текущего shell и его окружения.
Постоянные переменные пользователя - задаются в конфигурационных файлах shell и применяются при старте сессии. Для Bash обычно используют:
Конкретный файл зависит от способа запуска shell в системе.
Пример:
После изменения применить настройки можно:
или просто открыть новый терминал.
Глобальные переменные для всех пользователей - можно задать в файле:
Этот файл обычно обрабатывается при входе в систему через PAM. Он поддерживает только простые присваивания без shell-синтаксиса, экспорта и подстановок.
Пример:
Посмотреть окружение конкретного запущенного процесса:
Переменные хранятся в памяти процесса как строки, разделённые нулевым байтом. Обычно доступно только для своих процессов или с правами root (может ограничиваться настройками безопасности).
Порядок PATH критичен - поиск исполняемых файлов идёт слева направо:
Будет запущена первая найденная программа с совпадающим именем.
🔥 Переменные окружения передаются процессам через механизм fork/exec, существуют только в памяти процесса и наследуются его потомками. Они не изменяют систему глобально сами по себе и являются стандартным способом управления поведением программ в Linux.
🚪 Linux Ready | #практика
Переменные окружения (environment variables) задают контекст выполнения программ. Через них настраиваются shell, компиляторы, интерпретаторы, библиотеки и большинство CLI-утилит. Это базовый механизм конфигурации в Unix-подобных системах.
Посмотреть все переменные окружения текущего процесса (shell):
printenv
или:
env
Обе команды выводят окружение текущего процесса (экспортированные переменные).
env также часто используют для запуска команды с заданными переменными.Посмотреть значение конкретной переменной:
echo "$PATH"
Кавычки важны при подстановке переменных: они предотвращают нежелательное разбиение на слова и обработку спецсимволов (особенно если значение содержит пробелы или символы glob).
Временная переменная для одного запуска программы:
DEBUG=true ./app
Переменная будет доступна только процессу
./app и его дочерним процессам. В текущем shell она не сохранится.Экспорт переменной в текущей сессии shell:
export NODE_ENV=production
После
export переменная становится частью окружения текущего shell и наследуется всеми дочерними процессами, но не влияет на другие терминалы и будущие входы в систему.Удаление переменной:
unset NODE_ENV
Удаляет переменную из текущего shell и его окружения.
Постоянные переменные пользователя - задаются в конфигурационных файлах shell и применяются при старте сессии. Для Bash обычно используют:
~/.bashrc — интерактивные shell; ~/.profile или ~/.bash_profile — login-shellКонкретный файл зависит от способа запуска shell в системе.
Пример:
export EDITOR=vim
export PATH="$HOME/bin:$PATH"
После изменения применить настройки можно:
source ~/.bashrc
или просто открыть новый терминал.
Глобальные переменные для всех пользователей - можно задать в файле:
/etc/environment
Этот файл обычно обрабатывается при входе в систему через PAM. Он поддерживает только простые присваивания без shell-синтаксиса, экспорта и подстановок.
Пример:
JAVA_HOME=/usr/lib/jvm/java-17
Посмотреть окружение конкретного запущенного процесса:
cat /proc/<PID>/environ | tr '\0' '\n'
Переменные хранятся в памяти процесса как строки, разделённые нулевым байтом. Обычно доступно только для своих процессов или с правами root (может ограничиваться настройками безопасности).
Порядок PATH критичен - поиск исполняемых файлов идёт слева направо:
echo "$PATH"
Будет запущена первая найденная программа с совпадающим именем.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤7🔥5🤝3
This media is not supported in your browser
VIEW IN TELEGRAM
Репозиторий представляет собой подробный чек-лист по хардненингу системы: настройка безопасного SSH-доступа, файрвола, ограничение прав пользователей, аудит действий, антивирусная защита и другие меры повышения безопасности. Материал ориентирован на реальные сценарии эксплуатации серверов и может применяться как для домашних, так и для облачных систем.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🤝7❤6🔥2
Helm — это менеджер пакетов для Kubernetes, который превращает деплой сложных приложений в простую операцию. Эта шпора поможет быстро ориентироваться в командах управления жизненным циклом ваших чартов и эффективно работать с репозиториями.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤7🔥6
Знали, что DNS-запросы могут работать как скрытый канал связи?
Злоумышленники кодируют секретную информацию в поддомены или значения
Проверить
Выводит все
Если нужно автоматизировать мониторинг подозрительно длинных ответов, используйте фильтрацию:
Перехватывает и отображает
🔥 Для обнаружения скрытых каналов обращайте внимание на записи, содержащие
➡️ DevOps Ready | #совет
DNS-туннелирование и эксфильтрация данных через TXT-записи позволяют обходить брандмауэры, так как стандартный UDP-трафик на порт 53 редко блокируется.Злоумышленники кодируют секретную информацию в поддомены или значения
TXT-записей, незаметно отправляя её на подконтрольный сервер.Проверить
TXT-записи любого домена на наличие странных строк или кодированного текста можно одной командой:dig +short TXT target-domain.com
Выводит все
TXT-записи домена (часто там скрыты ключи или инструкции для малвари).Если нужно автоматизировать мониторинг подозрительно длинных ответов, используйте фильтрацию:
tcpdump -vvv -s 0 'udp port 53' | grep 'TXT?'
Перехватывает и отображает
DNS-запросы типа TXT в реальном времени для анализа аномалий.Base64 или имеющие аномальную длину (более 200 символов).Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👍6🔥5
Например, () запускает команды в subshell, {} выполняет их в текущем процессе, а [[ ]] даёт более гибкие проверки условий по сравнению с [ ].
На картинке — ключевые конструкции Bash, база для написания скриптов, автоматизации и DevOps-задач.
Сохрани, чтобы не забыть!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍11🔥7
ACL в Linux: расширенные права доступа (setfacl / getfacl)!
Стандартная модель прав
Просмотр ACL файла или каталога:
Показывает обычные права доступа и все дополнительные записи ACL, включая маску (mask), которая может ограничивать реальные (effective) права.
Выдать пользователю права чтения и записи:
Пользователь alice получит доступ независимо от основной группы файла. Если фактические права оказались меньше ожидаемых, проверьте маску ACL в выводе
Выдать группе права чтения:
Удобно для совместного доступа к файлам проекта. Для каталогов обычно требуется также право выполнения (x), иначе нельзя открыть каталог и работать с его содержимым.
Удалить ACL для конкретного пользователя:
Удаляет только дополнительную запись ACL, не затрагивая стандартные права владельца и группы.
Рекурсивно применить ACL к каталогу:
Права будут установлены для всех вложенных файлов и подкаталогов.
Используйте аккуратно: команда изменит доступ ко всему содержимому дерева.
Задать ACL по умолчанию для новых объектов в каталоге:
Такие права будут автоматически наследоваться новыми файлами и папками, создаваемыми внутри каталога. Уже существующие объекты не изменяются.
Удалить все расширенные ACL (вернуться к обычным правам):
Удаляет все дополнительные записи ACL и оставляет только стандартные
Удалить наследуемые (default) ACL у каталога:
Убирает правила наследования для новых объектов внутри каталога.
🔥 ACL — крутой инструмент тонкой настройки доступа в многопользовательских системах, когда стандартной модели прав недостаточно, а менять владельцев или группы нежелательно.
➡️ DevOps Ready | #практика
Стандартная модель прав
rwx учитывает только владельца файла, его группу и остальных пользователей, без возможности выдавать права точечно. ACL (Access Control Lists) позволяют выдавать точечные права отдельным пользователям и группам, не меняя владельца файла и не трогая основную группу. Просмотр ACL файла или каталога:
getfacl file.txt
Показывает обычные права доступа и все дополнительные записи ACL, включая маску (mask), которая может ограничивать реальные (effective) права.
Выдать пользователю права чтения и записи:
setfacl -m u:alice:rw file.txt
Пользователь alice получит доступ независимо от основной группы файла. Если фактические права оказались меньше ожидаемых, проверьте маску ACL в выводе
getfacl.Выдать группе права чтения:
setfacl -m g:devs:r file.txt
Удобно для совместного доступа к файлам проекта. Для каталогов обычно требуется также право выполнения (x), иначе нельзя открыть каталог и работать с его содержимым.
Удалить ACL для конкретного пользователя:
setfacl -x u:alice file.txt
Удаляет только дополнительную запись ACL, не затрагивая стандартные права владельца и группы.
Рекурсивно применить ACL к каталогу:
setfacl -R -m u:alice:rwx /shared/data
Права будут установлены для всех вложенных файлов и подкаталогов.
Используйте аккуратно: команда изменит доступ ко всему содержимому дерева.
Задать ACL по умолчанию для новых объектов в каталоге:
setfacl -d -m u:alice:rwx /shared/data
Такие права будут автоматически наследоваться новыми файлами и папками, создаваемыми внутри каталога. Уже существующие объекты не изменяются.
Удалить все расширенные ACL (вернуться к обычным правам):
setfacl -b file.txt
Удаляет все дополнительные записи ACL и оставляет только стандартные
rwx.Удалить наследуемые (default) ACL у каталога:
setfacl -k /shared/data
Убирает правила наследования для новых объектов внутри каталога.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍9❤7
This media is not supported in your browser
VIEW IN TELEGRAM
Репозиторий представляет собой структурированный гайд по командной строке и скриптингу на Bash. Собраны примеры основных команд Linux, операции с файлами и директориями, работа с переменными, функциями, условиями и др. Материал охватывает как базовые операции, так и практические приёмы написания скриптов.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥10🤝8❤1
В этом посте собраны утилиты для эффективной обработки текстовых файлов в командной строке. Рассмотрены сортировка строк, подсчёт повторений, устранение дубликатов, а также объединение данных построчно и по ключевым полям. Полезно для анализа логов, работы со списками и построения конвейеров обработки данных.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍9🔥9🤝2
This media is not supported in your browser
VIEW IN TELEGRAM
Сайт со статьями по информационной безопасности, где подробно разбираются киберугрозы, методы защиты, требования регуляторов и практические аспекты построения защищённых систем. Материалы охватывают широкий круг тем. Подойдёт всем, кто хочет глубже понять, как защищаются данные и информационные системы на практике.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9🤝8👍7
Как уменьшать лог-файлы без перезапуска сервиса!
В Linux файловый дескриптор привязан к
Поэтому лог корректно очищать без удаления файла:
Эта конструкция обнуляет содержимое, но сохраняет тот же
Если нужно урезать файл до конкретного размера, используется
Команда обрежет файл до 1MB. Она оставляет начало файла и удаляет хвост, то есть будут потеряны последние (самые новые) записи.
Если требуется сохранить последние записи, важно не менять
Корректный вариант, перезаписать содержимое в тот же файл:
🔥 Так сохраняются последние 1000 строк,
➡️ DevOps Ready | #совет
В Linux файловый дескриптор привязан к
inode, а не к имени файла. Если процесс уже открыл лог и пишет в него, удаление файла не освободит место сразу.Поэтому лог корректно очищать без удаления файла:
> application.log
Эта конструкция обнуляет содержимое, но сохраняет тот же
inode и открытый дескриптор.Если нужно урезать файл до конкретного размера, используется
truncate:truncate -s 1M application.log
Команда обрежет файл до 1MB. Она оставляет начало файла и удаляет хвост, то есть будут потеряны последние (самые новые) записи.
Если требуется сохранить последние записи, важно не менять
inode файла.Корректный вариант, перезаписать содержимое в тот же файл:
tail -n 1000 application.log > tmp.log && cat tmp.log > application.log && rm tmp.log
inode остаётся тем же, и сервис продолжит писать в текущий файл.Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥10🤝7