Як знайти користувача з порожнім паролем в Linux?


13

Як знайти користувача з порожнім паролем в Linux?

Відповіді:


15

Це більш коротка та точна версія відповіді AndreKR:

sudo getent shadow | grep '^[^:]*:.\?:' | cut -d: -f1

Він має лише один дзвінок cutі знайде записи будь-якої із наведених нижче форм:

foo:!: ...
bar:*: ...
baz:: ...

Якщо ви хочете лише по-справжньому порожньо:

sudo getent shadow | grep '^[^:]*::' | cut -d: -f1

Якщо у вас є GNU grep, ви можете cutповністю усунути :

sudo getent shadow | grep -Po '^[^:]*(?=:.?:)'

або

sudo getent shadow | grep -Po '^[^:]*(?=::)'


3

Зашифрований пароль - це друге поле в / etc / shadow.

Якщо друге поле порожнє, то пароль порожній:

awk -F":" '($2 == "") {print $1}' /etc/shadow

!і *недійсний пароль (користувач не може ввійти):

awk -F":" '($2 == "!" || $2 == "*") {print $1}' /etc/shadow

2

Їхній запис /etc/shadow/не матиме пароля. Вам потрібно буде увійти як root, щоб мати можливість їх бачити.


0

Чи є у користувача " користувач " порожній пароль?

getent shadow | grep 'user:\$' | cut -d':' -f 2 | grep '\w' -c -m 1  

return 1 on fail - пароль не порожній,
return 0 - успіх - встановлено пароль

Сподіваюся, це точно

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.