다음 두 명령을 실행했습니다. 제가 발견한 계정 공격 중 일부는 다음과 같습니다. 내 홈 디렉토리에 test, teste, oracle 및 admin 계정이 없습니다. 시스템 계정이 있기 때문입니다. 유효한 계정과 비활성 계정을 확인하는 방법
lastb | awk '{print $1}' | sort | uniq -c | sort -rn | head -5
5898 root
196 test
164 oracle
154 teste
86 admin
[root@localhost ~]# awk 'gsub(".*sshd.*Failed password for (invalid user )?", "") {print $1}' /var/log/secure* | sort | uniq -c | sort -rn | head -5
13835 root
386 test
185 oracle
146 admin
131 nagios
답변1
이는 인터넷에 노출된 모든 시스템에서 흔히 발생하는 자동화된 봇 공격입니다. CentOS에서 사용 가능한 사용자 목록을 얻으려면 다음을 수행하십시오 getent
.
getent passwd | awk -F':' '{ print $1 }'
이것을 이미 가지고 있는 것과 함께 사용하세요:
while read -r count user; do
printf '%s %s ' "$user" "$count"
if getent passwd | grep -q "^$user:"; then
printf 'valid\n'
else
printf 'invalid\n'
fi
done < <(awk 'gsub(".*sshd.*Failed password for (invalid user )?", "") {print $1}' /var/log/secure* | sort | uniq -c | sort -rn | head -5)