
PoC for CVE-2022-0492
Современный шаблон Bash-скрипта с цветным форматированием вывода и вспомогательными функциями для создания профессиональных утилит командной строки.
chmod +x script.sh
./script.sh
#!/bin/bash
LIB="lib"
source $LIB/format.sh
section "Заголовок вашего раздела"
info "Информационное сообщение"
ok "Сообщение об успехе"
warn "Предупреждение"
error "Сообщение об ошибке"
info "сообщение" - Отображает информационные сообщения с префиксом [i] голубым цветомok "сообщение" - Отображает сообщения об успехе с префиксом [+] зелёным цветомwarn "сообщение" - Отображает предупреждения с префиксом [!] жёлтым цветомerror "сообщение" - Отображает сообщения об ошибках с префиксом [-] красным цветом (отправляется в stderr)prompt "вопрос" - Отображает запрос с префиксом [?] пурпурным цветом и ожидает ввод пользователяsection "заголовок" - Создаёт форматированный заголовок разделаbold "текст" - Отображает текст жирным шрифтомДля пользовательского форматирования доступны следующие цветовые константы:
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
MAGENTA='\033[0;35m'
CYAN='\033[0;36m'
WHITE='\033[1;37m'
BOLD='\033[1m'
UNDERLINE='\033[4m'
RESET='\033[0m'
При запуске примера скрипта вы увидите:
=== Start ===
[i] Running exploit setup...
[+] Everything is ready
[!] This might break your system
[-] Something failed
[?] Continue? [y/N]:
shell_template/
├── script.sh # Пример скрипта, демонстрирующий использование
├── lib/
│ └── format.sh # Основная библиотека форматирования
├── LICENSE # Лицензия MIT
└── README.md # Этот файл
Вы можете расширить библиотеку, добавив новые типы сообщений в lib/format.sh:
DEBUG="${BLUE}[D]${RESET}"
debug() { echo -e "${DEBUG} $*"; }
Определите собственные цветовые схемы, изменив цветовые константы или создав новые:
PURPLE='\033[0;35m'
CUSTOM_PREFIX="${PURPLE}[*]${RESET}"
custom() { echo -e "${CUSTOM_PREFIX} $*"; }
source $LIB/format.sh в начале ваших скриптовsection для организации вывода скриптаerror для сообщений об ошибках и перенаправляйте их в stderrchmod +x для ваших скриптовНе стесняйтесь сообщать об ошибках, форкать репозиторий и создавать pull-запросы с любыми улучшениями.
Этот проект лицензирован в соответствии с MIT License — подробности см. в файле LICENSE.
Создано Christoph Huy