TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #450 1.25K
Проверка слабых паролей пользователей

Важно понимать: мы не проверяем сами пароли и не подбираем их. Мы только выявляем пользователей, у кого высокий риск слабого пароля, анализируя политики и метаданные.

▪️ Что можно проверить

Возраст пароля, если пароль не меняли 500+ дней - тревожный знак;
Минимальный и максимальный срок действия (политики PASS_MAX_DAYS);
Пользователи с never expires, часто признак устаревших или слабозащищенных аккаунтов;
Аккаунты с неограниченным логином (chage -l).

🛠 Скрипт


#!/usr/bin/env bash

echo "user,last_change,max_days,warning,expires"

for user in $(cut -d: -f1 /etc/shadow); do
info=$(chage -l "$user" 2>/dev/null)

last_change=$(echo "$info" | grep "Last password change" | cut -d: -f2 | xargs)
max_days=$(echo "$info" | grep "Maximum" | awk '{print $4}')
warning=$(echo "$info" | grep "Warning" | awk '{print $4}')
expires=$(echo "$info" | grep "Password expires" | cut -d: -f2 | xargs)

echo "$user,$last_change,$max_days,$warning,$expires"
done


▪️ Чтение результатов

max_days = 99999 - это значит, что политика отсутствует, пароль вечный
expires = never означает, что аккаунт может быть заброшенным или небезопасным
last_change слишком старый - стоит пройтись по пользователям и потребовать смены

BashTex 📱 #bash
  • 👍 8
More from @bash_tex
  1. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  2. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  3. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
  4. Oct 5, 2026name_to_handle_at() - как получить файловый объект без обычного пути В Linux обычно обраща…
  5. Oct 2, 2026madvise() - как процесс подсказывает ядру, как он собирается использовать память Когда про…
  6. Oct 1, 2026flock vs fcntl - почему две блокировки одного файла могут вести себя совершенно по-разному…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →