BashMaster
7.95K subscribers
664 photos
14 videos
1 file
687 links
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов.

Реклама: @Kone4noVasya

Канал на бирже: https://telega.in/c/bash_help
Download Telegram
⚙️ Automated Hardening Framework for Ubuntu

✔️Набор bash-скриптов, который предназначен для автоматического усиления безопасности серверов Ubuntu.

▶️Цель проекта — минимизировать уязвимости системы, следуя лучшим практикам безопасности.

➡️ Скрипты выполняют различные действия, например:
💠отключают ненужные сервисы и порты;
💠настраивают файрволы для ограничения входящего и исходящего трафика;
💠применяют обновления и патчи для программного обеспечения;
💠защищают учётные записи пользователей, ограничивают доступ к чувствительным данным;
💠настраивают системы обнаружения вторжений.

➡️ Некоторые особенности скриптов:
💠Автоматическое развёртывание инструментов безопасности. Например, установка Fail2Ban для защиты от атак грубой силы, Auditd для мониторинга изменений в критических системных файлах.
💠Интеграция OpenSCAP. Скрипты автоматизируют процесс сканирования системы по руководству SCAP Security Guide, чтобы оценить соответствие стандартам безопасности.
💠Генерация отчётов. После выполнения скриптов создаются подробные отчёты о соответствии системы стандартам и уязвимостях.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Подборка популярных каналов по информационной безопасности и этичному хакингу:

🔐 infosec — ламповое сообщество, которое публикует редкую литературу, курсы и полезный контент для ИБ специалистов любого уровня и направления.

🤯 Social Engineering — самый крупный ресурс в Telegram, посвященный этичному Хакингу, OSINT и социальной инженерии.

💬 Вакансии в ИБ — актуальные предложения от самых крупных работодателей и лидеров рынка в сфере информационной безопасности.
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ "AM" Application Manager

✔️Bash-скрипт, который позволяет устанавливать, обновлять и удалять отдельные AppImage-программы в GNU/Linux.

➡️ Некоторые возможности:
💠интеграция портативных программ и AppImages на уровне системы (по умолчанию) или локально (с использованием флага --user);
💠обновление и управление программами из командной строки;
💠интеграция программ в меню приложений;
💠возможность сборки программ на лету.

▶️Может использоваться на всех архитектурах, поддерживаемых ядром Linux, и работает со всеми дистрибутивами GNU/Linux.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Подборка 4 курсов по IT — бесплатно

👉 Забирайте курсы по ссылке, пока они открыты: https://epic.st/-Y_NP?erid=2Vtzqxksj17
⚙️ Риски безопасности переменных без кавычек в Bash и POSIX

✔️В этом руководстве мы рассмотрим, почему кавычки переменных в скриптах Bash имеют решающее значение, и какие риски для безопасности несет их отсутствие.

➡️ Важность цитирования переменных
▶️Мы можем рассматривать переменные как контейнеры, в которых хранится информация для последующего использования.

▶️При разработке скриптов Bash/POSIX пренебрежение кавычками переменной приводит к тому, что shell-скрипты расширяют переменную, что впоследствии интерпретируется как несколько аргументов. Давайте напишем скрипт example.sh, в котором переменная хранит сообщение без кавычек:
#!/bin/bash
message=$1
echo $message

▶️Когда мы выполняем следующую команду в Bash, мы можем ожидать, что она выведет «Hello World» в терминале в той же строке, однако этого не происходит:
$ ./example.sh “Hello World”
Hello
World

▶️В примере мы видим, что скрипт использует команду echo дважды: один раз для «Hello» и второй раз для «World». Следовательно, он рассматривает переменную как два отдельных ввода вместо одного.

▶️Если заключить переменную message в строке echo в кавычки, например echo «$message», скрипт будет интерпретировать все, что находится внутри кавычек, как один аргумент, независимо от его содержания.

➡️ Риски безопасности и стратегия их снижения
▶️Невозможность заключить переменные в кавычки может привести к различным рискам безопасности. Рассмотрим, как это может привести к таким проблемам, как раскрытие информации и выполнение произвольного кода.

▶️Злоумышленник может использовать переменные без кавычек для перечисления каталогов или доступа к конфиденциальным файлам, что может привести к раскрытию конфиденциальной информации.

▶️Рассмотрим сценарий Bash с именем read_file.sh, в котором используются переменные без кавычек, что приводит к раскрытию информации:
#!/bin/bash
if [ "${1##*.}" != "txt" ]; then
echo "Only text files allowed"
exit 1
fi
filename=$1
contents=$(cat $filename)
echo "$contents"

▶️В представленном коде ${1##*.} извлекает расширение файла из его имени. Затем проверяется, имеет ли имя файла расширение txt; если нет, то скрипт завершает работу. Скрипт ожидает аргумент «имя файла» из командной строки. При получении имени файла с расширением txt он выводит его содержимое с помощью команды echo:
$. /read_file.sh itsecforu.txt
---Baeldung.txt---
You are currently viewing itsecforu file.
---End of itsecforu.txt---

▶️Как показано выше, он выводит содержимое файла. Однако передача неверных аргументов вызывает сообщение об отказе:
$ ./read_file.sh secret
Only text files allowed

▶️В предыдущем примере мы не смогли получить прямой доступ к секретному файлу. Однако, передав аргумент с пробелом, скрипт позволил разделить аргумент:
$ ./read_file.sh ‘secret itsecforu.txt’
***Disclaimer: You are accessing secret. Please be sure you are authorized***
Hey! this is a sensitive file.
***End of Secret***
---Baeldung.txt---
You are currently viewing itsecforufile.
---End of itsecforu.txt---

▶️Как показано выше, мы успешно загрузили секретный файл. Наличие файла itsecforu.txt с правильным расширением txt удовлетворяет требованиям скрипта. Более того, пробел в ‘secret itsecforu.txt’ приводит к тому, что сценарий интерпретирует его как два отдельных аргумента, что позволяет нам получить доступ к секретному файлу.

🖼️ Дочитать статью

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Всё, трансляция GetNet пошла — успевайте подключиться, пока не начали обсуждать “как всё сломалось”.

https://live.getnet.pro/

Сети, эксплуатация, мониторинг — чужие грабли, которые звучат гораздо приятнее, чем свои.
А если повезёт, можно будет потом сказать: “О, это у меня тоже было — но в пятницу”.

Так что готовьте кофе, и слушайте, как у других не всегда получается с первого раза, а главное, как с этим бороться
⚙️ gah

✔️Установщик приложений из GitHub Releases, который не требует прав sudo.

▶️Это простой bash-скрипт, который загружает последнюю версию бинарного файла приложения с GitHub и устанавливает его в директорию ~/.local/bin.

➡️ Основные функции
💠Загрузка версии приложения с GitHub. Можно указать последнюю или конкретную версию.
💠Автоматический выбор подходящего бинарника для текущей платформы.
💠Поддержка ОС: Linux и MacOS, архитектур x64 и ARM64.
💠Обработка нескольких приложений в одном релизе GitHub.
💠Поддержка архивированных (zip, tar.gz, tar.bz2, tar.xz) и одиночных бинарных релизов.
💠Предопределённые псевдонимы для репозиториев GitHub.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Как запустить собственный пет-проект и зарабатывать на нём как senior-разработчик? 💲

А что, если перевернуть игру, и вместо работы в IT на дядю запустить собственный пет-проект, который будет приносить деньги?

Александр Рогачев запустил телеграм-канал Indie Hackers, где рассказывает про пет-проекты, которые приносят неплохой стабильный доход своим создателям. Без венчурных инвестиций, без бизнес-планов и команды. Разве такое возможно? Да!

Несколько примеров:
Агрегатор вакансий c доходом в 4000$ / месяц
Плагин для Chrome с доходом 20000₽ / месяц

Вдохновляйтесь свежими идеями, которые могут обеспечить стабильный пассивных доход, на канале Indie Hackers. Уверен, что там вы найдёте то самое, что зажжёт огонь в вашем сердце! ❤️‍🔥

➡️ Ссылка для входа
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Скрытие пользовательского ввода в скриптах bash

✔️Это может быть полезно, когда вы просите пользователей ввести пароли, API-токены или что-то еще, что вы не хотите выводить на экран.

▶️Мы рассмотрим два решения.
Одно работает с любой оболочкой Bash или Bash-подобной оболочкой, а другое соответствует POSIX, если вам нужна максимальная совместимость.
Скрипт ниже включает в себя оба решения.

▶️Это пример, который вы можете запустить, но в нем есть только 1-3 строки кода в середине, которые сосредоточены на скрытии пользовательского ввода.
Вы можете раскомментировать вариант 1 или 2 в зависимости от вашего случая использования.

#!/usr/bin/env bash

set -o errexit
set -o nounset

while true; do
printf "Please input your API key and hit enter: "

# ВАРИАНТ 1: ТРЕБУЕТСЯ ОБОЛОЧКА BASH ИЛИ BASH-ПОДОБНАЯ ОБОЛОЧКА (BASH, ZSH, ASH И Т. Д.)
read -sr key

# ВАРИАНТ 2: ДЛЯ МАКСИМАЛЬНОЙ СОВМЕСТИМОСТИ С ОБОЛОЧКАМИ (SH, DASH И Т. Д.)
# stty -echo
# read -r key
# stty echo

if [ -z "${key}" ]; then
printf "\n\nPlease input your API key or hit CTRL+c to halt this script\n\n"
else
# TODO: Вставьте свою пользовательскую логику, которая использует этот ключ.
printf "\n\nFor demo purposes, your API key is: %s\n" "${key}"
break
fi
done

▶️Основное отличие заключается в том, что флаг -s из read недоступен в sh и других минимальных оболочках.
Флаг -s не позволяет передавать ввод пользователя через echo.

▶️Чтобы обойти это ограничение, мы можем использовать stty, чтобы отключить эхо, возвращающее наш чувствительный текст, записать этот ввод в переменную, а затем снова включить echo.

🖼️ Ссылка на источник

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
IT-челлендж Слёрма — проверь свой скилл!

5 дней — 5 тем для IT-инженеров уровня Middle:

▪️ Bash / Linux / DevOps
▪️ Сети
▪️ CI/CD, Docker, Jenkins
▪️ SQL и базы данных
▪️ Информационная безопасность

🔺Короткие, но умные задания в Google Формах
🔺Удобный Telegram-бот ведёт по шагам
🔺Занимает не больше 15–20 минут в день

Подарки победителям:

Подписка на курсы Слёрма
Курс «Администрирование Linux»
Курс «Ansible: Infrastructure as Code»

🎫 30% скидка всем, кто дойдёт до конца

📅 Челлендж с 16 по 20 июня

📍 Регистрация в боте до 15 июня
⚙️ localdiskmount

✔️Скрипт на языке Bash, предназначенный для автоматического монтирования локального диска (например, USB-накопителя).

➡️ Основные функции
💠Проверка существования диска и точки монтирования. Перед монтированием скрипт проверяет, не примонтирован ли диск, и создаёт точку монтирования, если это необходимо.
💠Указание параметров монтирования. В конфигурации скрипта определяются переменные:
DRIVE_TO_MOUNT — путь к локальному диску, который нужно смонтировать (например, /dev/sda1).
PATH_WHERE_MOUNT — абсолютный путь к точке монтирования.
MOUNT_TYPE — тип файловой системы, который будет использоваться в опции -t команды mount.

▶️Скрипт можно использовать через crontab.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
😒 ZeroDay — всё, что нужно хакеру

— Пентесты Wi-Fi, камер, сайтов
— OSINT и социальная инженерия
— Техники анонимности и обход слежки
— Сливы и разборы реальных утечек
— Инструменты: Metasploit, Nmap, Kali Linux

https://t.me/+jBip_a1-JM9jNjFi
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ PastebinSearch

✔️Bash-скрипт, который позволяет искать термины на сервисе Pastebin с использованием различных поисковых систем.

➡️ Функции и возможности
💠Поддержка нескольких поисковых систем. Скрипт использует Google, Bing, DuckDuckGo и Yahoo.
💠Настраиваемый браузер. Можно указать предпочитаемый браузер (например, Firefox, Google Chrome).
💠Автоматическое URL-кодирование. Пробелы в поисковых терминах заменяются на «+» для правильного URL-кодирования.
💠Обработка ошибок. Выдаются чёткие сообщения об ошибках, если браузер не открывается или не найден.
💠Поддержка таймаута. Скрипт не зависает, если открытие браузера занимает слишком много времени

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Linux - администрирование - Bash: кладовая полезных знаний

✔️В этом курсе вас ожидает неформальное путешествие в мир системного администрирования на базе GNU/Linux. Основным нашим инструментом станет Bash — мы не просто освоим его возможности, но и подружимся с ним на практике. Вместе разберём ключевые задачи, стоящие перед системными и сетевыми администраторами, а также погрузимся в теоретические аспекты устройства систем, сетей и основ кибербезопасности.

➡️ Чему вы научитесь
💠Разбираться в дистрибутивах операционных систем на базе Linux
💠Устанавливать, настраивать и диагностировать систему
💠Уверенно пользоваться командной строкой
💠Писать скрипты на Bash
💠Проводить харденинг (укрепление/улучшение безопасности) системы

▶️Этот курс создан для тех, кто делает первые шаги в мире компьютерных технологий или хочет лучше понимать «внутренности» систем:
💠Начинающие исследователи техники
💠Системные администраторы и инженеры
💠Сетевые специалисты
💠Разработчики ПО
💠DevOps, SysOps, SecOps и все, кто стремится к глубокому пониманию IT-инфраструктуры

🖼️ Ссылка на курс

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM