Katakanlah saya terhubung ke server melalui SCP dan menyalin beberapa file dari server jauh ke komputer di rumah saya. Dapatkah admin server memberi tahu bahwa saya telah menyalin sesuatu, melihat apa yang disalin, atau tahu siapa yang menyalinnya?
Katakanlah saya terhubung ke server melalui SCP dan menyalin beberapa file dari server jauh ke komputer di rumah saya. Dapatkah admin server memberi tahu bahwa saya telah menyalin sesuatu, melihat apa yang disalin, atau tahu siapa yang menyalinnya?
Jawaban:
Pertanyaan ServerFault hampir identik dengan ini. Semoga Anda memeriksa sebelum memposting pertanyaan Anda, tetapi pertanyaan Anda sedikit berbeda jadi saya akan jawab di sini.
Jawaban singkatnya adalah bahwa jika SIAPAPUN memiliki akses dan izin ke titik akhir (sistem yang Anda gunakan scp
atau scp
masuki), mereka dapat melihat apa yang terjadi. Jika mereka tidak memiliki akses ke titik akhir, mereka kemungkinan tidak akan memiliki akses ke atau dapat menguraikan apa yang Anda lakukan (terlepas dari kemungkinan mengetahui aplikasi dengan nomor protokol).
Jawabannya pada akhirnya sangat tergantung pada infrastruktur Anda. Kemungkinan besar, selama tidak ada pemantauan intensif dan SCP tidak dianggap sebagai ancaman di perusahaan (yang akan memunculkan tanda bahaya), lalu lintas Anda akan berlalu tanpa diketahui. Ini terutama berlaku untuk perusahaan kecil.
Seperti @SimonRichter sebutkan : jika seseorang dapat menjalankan perintah pada sistem Anda (mis. Admin atau yang lain), mereka dapat memeriksa daftar proses Anda dan melihat baris perintah scp -args /filepath/
. Namun ini mengharuskan mereka untuk mencatat semua aktivitas proses atau memeriksanya pada saat Anda mentransfer. Selain itu, jika Anda melakukannya dari sistem Anda sendiri di tempat kerja ke sistem lain (misalnya di rumah atau di tempat lain), mereka tidak akan selalu memiliki visibilitas itu.
Selain itu, seperti yang disebutkan @ alex.forencich: Dimungkinkan juga untuk mencatat semua panggilan sistem (termasuk panggilan file terbuka dan baca) sehingga meskipun program penyalinan Anda (scp, sftp, dll.) Tidak mencatat atau membocorkan apa pun (argumen baris perintah) ), masih mungkin untuk mencari tahu file apa yang dibaca atau ditulis. Lihat sistem audit linux. -
Bukan hanya admin.
Untuk pengujian, saya hanya menyalin /bin
dari server saya ke direktori sementara di laptop saya. ps
di server menunjukkan
$ ps 24096
PID TTY STAT TIME COMMAND
24096 ? Ss 0:00 scp -r -f /bin
Informasi ini umumnya dapat diakses oleh semua pengguna.
/proc
dengan opsi hidepid=2
menonaktifkan ini ..
scp
bekerja dengan bantuan kode yang berjalan di server ( sshd
, dan scp
itu sendiri). Sever code itu secara teori sepenuhnya berada dalam kendali admin server, dan versi scp
menjalankan di server untuk menulis file koneksi, terpisah dari versi scp
menjalankan pada mesin Anda untuk mengeluarkan permintaan.
Administrator server dapat, hanya sebagai contoh, mengganti scp
pada server dengan versi yang mencatat semua permintaan, lebih seperti server web yang dapat menulis log. Kemudian mereka dapat melihat dari log-log itu persis apa yang Anda salin.
Apakah mereka memiliki keahlian dan motivasi untuk benar-benar melakukan ini kurang pasti, tetapi jika mereka ingin pada prinsipnya tidak ada yang menghentikan mereka.
Saya pikir pertanyaan-pertanyaan ini adalah teman Anda: https://security.stackexchange.com/questions/14782/is-there-an-easy-way-to-see-a-log-of-scp-activity-on-a -server-ala-var-log-secu , https://askubuntu.com/questions/659896/where-would-you-find-scp-logs
Meskipun saya tidak tahu semua detailnya, sepertinya langsung keluar dari kotak scp
dansshd
tidak memiliki opsi untuk mencatat apa yang Anda tanyakan. Jadi mungkin lebih banyak diperlukan daripada konfigurasi sederhana, tetapi Anda tidak dapat melepaskan diri dari kenyataan bahwa admin mengendalikan server.
Apa pun yang melewati tidak terenkripsi melalui memori komputer dapat dibaca atau diubah oleh pengguna yang cukup istimewa di mesin itu.
Nama-nama proses yang berjalan dan baris perintah yang digunakan untuk memulainya dapat diakses oleh setiap pengguna yang masuk di Linux. (Ini tidak terjadi pada Windows, untuk yang penasaran.) Oleh karena itu, admin atau siapa pun yang kebetulan ada dapat melihat file mana yang Anda salin. Selain itu, sangat mungkin bagi administrator untuk mengatur semacam akses logging file, atau telah mengganti / jiggledscp
program di satu sisi untuk melakukan logging tambahan.
scp
hanya melindungi Anda dari sniffer jaringan. Jelas, kedua ujungnya harus mengetahui data yang didekripsi, jadi ada peluang bagi admin canggih di salah satu titik akhir untuk menyedot data dari scp
memori. Solusi lain, bahkan yang tidak melibatkan baris perintah, juga terbuka untuk itu: kedua ujung sftp
tahu apa yang terjadi, sehingga dimungkinkan untuk menentukan melalui inspeksi memori apa sftp
yang dipikirkan / ditransfer.
Aturan praktisnya adalah, seseorang dengan akses root dapat mengetahui segalanya (jika dia dapat repot untuk memeriksa). Mungkin satu-satunya hal yang terlarang adalah sistem file terenkripsi-sertifikat.
selama akting, scp
membuka proses di sisi remote, yang dapat dilihat oleh siapa saja hanya dengan memohon ps
. Jika Anda berhasil menyembunyikan baris perintah yang muncul di daftar proses, makalsof
(daftar file yang terbuka) dapat menunjukkan file mana yang sedang disentuh. Sangat mudah, saya benar-benar melakukan itu untuk mengamati seberapa jauh beberapa proses penyalinan yang saya mulai, jika saya memulai proses pada terminal saya tidak dapat melihat saat ini (di mana daftar file sedang di-output).
setelah bertindak, pemindaian cepat dengan find
dapat menemukan file terbaru (jika stempel waktu tidak disimpan selama penyalinan). Jika file diakses atau disentuh dengan cara apa pun melalui ssh
sesi, Anda.bash_history
menunjukkan apa yang Anda lakukan (tetapi Anda dapat menghapusnya jika Anda mau).
Jika keamanan dimaksudkan sangat ketat, Anda selalu dapat mengatur pemantauan tambahan: Anda dapat mendengarkan semua modifikasi file dengan daemon sederhana, dan mencatat segala sesuatu tentang transaksi sistem file, lokal dan jarak jauh, tidak masalah. Tidaklah mengejutkan untuk mencatat semua proses yang dibuat pengguna . Jika pencadangan sedang dilakukan, file mungkin masih disimpan di suatu tempat setelah Anda menghapusnya.
file
, maksud Anda find
?
Admin server dapat memantau lalu lintas apa pun yang bergerak masuk atau keluar dari server mereka, sehingga mereka dapat dengan mudah memantau lalu lintas SCP jika mereka mau, dan melihat bahwa Anda telah menyalin file dan file apa yang telah Anda salin.
sftp
. Mungkin login, tetapi tidak jelas terlihat sebagai judul prosesscp
.