รับข้อมูลการตรวจสอบความถูกต้อง SSH หลังจากการตรวจสอบความถูกต้องที่สำคัญ


0

เป็นไปได้จากฝั่งเซิร์ฟเวอร์เพื่อดึงข้อมูลที่ใช้ในการรับรองความถูกต้องที่สำคัญหลังจากนี้เสร็จสมบูรณ์? ตัวอย่างเช่นจากโมดูล pam เพื่อรับคีย์สาธารณะที่ใช้ความท้าทายที่ใช้ (ถ้าสำเร็จ)

ใช้ openssh ใน Debian 9


นี่จะเป็นช่องโหว่ความปลอดภัยที่ร้ายแรงหากมีอยู่จริง
harrymc

ขออภัยฉันอธิบายตัวเองไม่ดี ฉันแก้ไขคำถาม ฉันหมายถึงการรับข้อมูลเหล่านั้นจากฝั่งเซิร์ฟเวอร์เช่นในโมดูล pam ที่เรียกว่าหลังจากการรับรองความถูกต้องของคีย์ที่ประสบความสำเร็จ
Federico Taschin

คำตอบ:


0

คุณจะพบบทความ Stack Exchange ที่น่าสนใจต่อไปนี้:
ฉันสามารถหาคีย์ ssh ที่ใช้ในการเข้าถึงบัญชีได้หรือไม่?

ความคิดที่มีคือการได้รับข้อมูลจากการบันทึกโดยการตั้งค่าใน /etc/ssh/sshd_configค่าของการLogLevelVERBOSE

คุณอาจพบว่ามีประโยชน์อย่างยิ่งสคริปต์ใน คำตอบโดย F. Hauri โดยที่สคริปต์ถูกสร้างขึ้นที่จะถูกเพิ่ม /etc/bash.bashrcหรือผู้ใช้.bashrcนั้นหลังจากเข้าสู่ระบบจาก SSH จะสร้างตัวแปรสภาพแวดล้อมต่อไปนี้:

set | grep ^SSH
SSH_CLIENT='192.168.1.31 43734 22'
SSH_CONNECTION='192.168.1.31 43734 192.168.1.2 22'
SSH_KEY_USER=user@mydesk
SSH_TTY=/dev/pts/2

สคริปต์ทำซ้ำด้านล่าง แต่ฉันขอแนะนำให้อ่านคำตอบดั้งเดิมสำหรับข้อมูลเพิ่มเติม:

ssh_oPwd=$OLDPWD
ssh_oUmask=$(umask)
umask 077
ssh_tempdir=$(mktemp -d /tmp/ssh-id-XXXXXXX)
cd $ssh_tempdir || exit 1

ssh_crtFp=$(
    sed -ne "/sshd.\($(($(ps ho ppid $PPID)))\|$PPID\).:.*\(Accepted publickey\|matching .SA key\)/{s/^.* //g;h};\${x;p}" /var/log/sshdusers.log
)
for ((ssh_i=1;ssh_i<=$(wc -l <$HOME/.ssh/authorized_keys);ssh_i++));do
    export ssh_line="$(sed -ne ${ssh_i}p <$HOME/.ssh/authorized_keys)"
    echo "$ssh_line" >tempKey
    export ssh_lFp=($(ssh-keygen -l -f tempKey))
    if [ "${ssh_lFp[1]}" == "$ssh_crtFp" ] ;then
        export SSH_KEY_USER=${ssh_line##* }
        break
      fi
  done

cd $OLDPWD
OLDPWD=$ssh_oPwd
rm -fR $ssh_tempdir
umask $ssh_oUmask
unset ssh_lFp ssh_line ssh_i ssh_crtFp ssh_tempdir ssh_oUmask ssh_oPwd
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.