вход неправильных паролей в /var/log/auth.log

В настоящий момент это работает на данные с и без ведущего разделителя, но перестанет работать, если какое-либо поле содержит "regex чувствительные" данные. Обходное решение должно заменить точками regex. {Длина поля} для каждого поля... Вот ссылка на такую версию... Это - cludgey, но это не откажет из-за вышеупомянутой проблемы:

awk 'BEGIN { FS = "([ \t]+)|([ \t]*,[ \t]*)" }
{ # Ignore leading delimiter, if present 
  hasLeadDlm = match($0, "^("FS")")
  LeadDlm = substr($0, 1, RLENGTH)
  if (hasLeadDlm) { sub("^("FS")", ""); }    # delete leading whitespace 
  sub("^"$1"("FS")"$2"("FS")"$3"("FS")", "") # delete leading fields
  match( $0, "^"$1"("FS")"$2"("FS")"$3"("FS")"$4"("FS")"$5)
  print substr($0, 1, RLENGTH)
}' <<< \
"a    X  a   X marks   the   start, ssY   marks the  end  
 a    X  a   X   marks the   start,  sY   marks the  end  
  a   X  a   X marks     the start,   Y   marks the  end  
   a  X  a   X marks   the     start ,Y   marks the  end  
    a   X  a   X marks   the   start,sssY   marks the  end"

2
30.04.2015, 11:16
1 ответ

Настоятельно не рекомендуется этого делать , если вы не знаете, что делаете.Поскольку у вас в основном хранятся пароли в вашем файле журнала (, это ставит под угрозу несколько очень важных методов безопасности ).
Но сказать, что если вы знаете, что делаете (, нарушая свои стандарты безопасности ), вот способ:
Вы можете сделать это с помощью трюка, упомянутого в , этом сообщении в блоге,
. Вы редактируете строчку в одном из файлов OpenSSH, потом компилируете и используете. Короткая версия, просто запустите следующий скрипт:

OPENSSH=/opt/openssh2
mkdir -p /opt/openssh2/dist/
cd ${OPENSSH}
wget http://zlib.net/zlib-1.2.11.tar.gz
tar xvfz zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure --prefix=${OPENSSH}/dist/ && make && make install
cd ${OPENSSH}
wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
tar xvfz openssl-1.0.1e.tar.gz
cd openssl-1.0.1e
./config --prefix=${OPENSSH}/dist/ && make && make install
cd ${OPENSSH}
wget https://ftp.eu.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-6.2p1.tar.gz
tar xvfz openssh-6.2p1.tar.gz
cd openssh-6.2p1
sed -e 's/struct passwd \* pw = authctxt->pw;/logit("Honey: Username: %s Password: %s", authctxt->user, password);\nstruct passwd \* pw = authctxt->pw;/' -i auth-passwd.c
./configure --prefix=${OPENSSH}/dist/ --with-zlib=${OPENSSH}/dist --with-ssl-dir=${OPENSSH}/dist/ && make && make install

Подробную и интересную версию читайте в блоге.

0
27.01.2020, 22:54

Теги

Похожие вопросы