Lihatlah output dari last
perintah dan apa pun dengan alamat IP atau nama host alih-alih ruang kosong masuk melalui jaringan. Jika sshd
satu-satunya cara untuk melakukan itu pada sistem ini, maka begitulah.
Atau (jika ini adalah Linux), Anda dapat memeriksa /var/log/secure
(pada distro berbasis RH) atau /var/log/auth.log
(pada distro berbasis Debian) di mana sshd
biasanya akan melacak koneksi yang dibuat bahkan jika mereka tidak menghasilkan login yang berhasil (yang hits utmp
/ wtmp
, yang adalah apa yang last
akan dibaca). Contoh:
Apr 3 16:21:01 xxxxxxvlp05 sshd[6266]: Connection closed by xxx.xxx.13.76
...
Apr 3 09:09:49 xxxxxxvlp05 sshd[26275]: Failed password for invalid user __super from xxx.xxx.13.76 port 45229 ssh2
IIRC Solaris sshd
(yang mungkin bukan OpenSSH sshd
) akan mencatat informasi ini/var/adm/messages
EDIT:
@derobert membuat poin yang bagus. Penting untuk diingat bahwa pada sistem apa pun, jika akun pengguna super Anda dikompromikan, maka semua taruhan dimatikan karena file log seperti /var/log/wtmp
atau /var/adm/messages
dapat dimodifikasi oleh penyerang. Ini dapat dikurangi jika Anda mendorong log off-server ke lokasi yang aman.
Misalnya, di satu toko tempat saya dulu bekerja, kami memiliki mesin "Audit Vault" yang diamankan sehingga hanya menerima file log audit dari berbagai server di pusat data. Saya akan merekomendasikan memiliki pengaturan yang sama di masa depan (karena "Saya punya mesin uji" terdengar seperti Anda beroperasi di toko besar-ish)
Ini akan memberi Anda daftar:
Kemudian Anda dapat menggunakan
geoiplookup
darigeoip-bin
paket untuk pergi dari nama host atau alamat IP ke negara.sumber
sed
keterampilan saya bukan dewa itu. Untuk melakukan sesuatu yang lebih kompleks, gunakan Python atau parser log khusus. Tetapi Anda dapat mencoba ini:zgrep sshd /var/log/auth.log* -h |grep -F 'Failed password'
Yah, seperti yang diharapkan, dan seperti yang dikatakan @Joel Davis, semua log dihapus, tetapi ada satu file yang @Ramesh sebutkan yang memiliki beberapa upaya untuk mengakses pengguna root tetapi gagal memasukkan kata sandi yang benar beberapa kali, kemudian memutuskan sambungan untuk terlalu banyak percobaan ulang.
Saya menjalankan traceroute pada tiga alamat dan dua dari Cina dan yang lainnya dari Pakistan; ini adalah IP:
Info selengkapnya tentang botnet yang disuntikkan ke server setelah kompromi:
Hacker mengedit crontab untuk mengeksekusi 7 executable yang akan, setiap x jumlah waktu, menggunakan semua CPU, max output jaringan server, kemudian mati. Mereka juga menambahkan readme ke crontab 100 kali untuk menyembunyikan baris yang ditambahkan, jadi ketika Anda melakukannya,
crontab -l
Anda akan dihantam oleh readme dengan garis tersembunyi. Untuk menghindari ini, saya menggunakancrontab -l | grep -v '^#'
dan di sini adalah output dari perintah itu:Seperti yang Anda lihat, semua file log dihapus, ini sebabnya saya tidak dapat mengambil banyak informasi.
Ini meruntuhkan seluruh server (semua VM) menyebabkan timeout di situs dan proxmox. Berikut ini adalah grafik (duri menunjukkan botnet aktif DDoS'ing dan perhatikan jaringan keluar):
Sebagai hasilnya saya akan menambahkan seluruh jajaran alamat IP Cina ke firewall untuk memblokir semua koneksi (Saya tidak punya pengguna China jadi saya tidak peduli), saya juga akan melarang login root jarak jauh dan menggunakan kompleks panjang kata sandi. Saya juga kemungkinan besar akan mengubah port ssh dan menggunakan kunci ssh pribadi juga.
sumber
Dari jawaban ini , saya melihat informasi di bawah ini.
Berbicara tentang server SSH, saya akan memberikan Anda solusi command line.
Lacak login dan keluar pengguna . Itu mudah, file
/var/log/auth.log
harus memiliki informasi ini.Lacak aktivitas para pengguna itu : Jika mereka agak tidak bersalah, Anda dapat memeriksa file
.bash_history
di direktori home mereka. Anda akan melihat daftar perintah yang dieksekusi. Masalahnya tentu saja mereka dapat menghapus atau mengedit file ini.Mencegah pengguna menghapus log : Pengguna seharusnya tidak dapat menyentuh
auth.log
. Untuk menghentikan mereka bermain denganbash_history
Anda perlu melakukan beberapa trik.Bagaimana jika pengguna berhasil mendapatkan akses root? : Anda kacau. Kecuali jika dia melakukan kesalahan dia akan bisa menyembunyikan semua langkahnya.
Juga, dari jawaban ini , kita dapat melihat alamat IP klien menggunakan
SSH_CLIENT
variabel.Juga dari jawaban ini , saya melihat bahwa sejarah ssh dapat disimpan dalam file-file ini.
Selain
/var/log/lastlog
, ada 3 file dalam/var/run
dan/var/log
:utmp
,wtmp
danbtmp
, yang memegang info tentang login saat ini (dan info tambahan), sejarah dan login gagal. Lihat wiki untuk deskripsi terperinci. Anda tidak dapat mengedit file dengan editor normal, tetapi dapat menghapusnya.sumber
Perintah paling sederhana untuk mendapatkan 10 pengguna terakhir yang masuk ke mesin adalah
last|head
.Untuk mendapatkan semua pengguna cukup gunakan
last
perintahsumber
Mesin ini telah dikompromikan. Ini berarti setiap data di dalamnya, historis atau saat ini, tidak lagi dapat dipercaya.
Singkatnya, jawabannya adalah tidak. Anda tidak dapat memastikan Anda telah menemukan alamat asal dari file log apa pun yang direkam pada mesin ini.
Usap dan instal ulang. Dan tambalan.
sumber
Untuk hanya melihat upaya login yang berhasil dengan kata sandi:
sumber
untuk debian pencarian tes worded sedikit berbeda
sumber