Bertahun-tahun yang lalu saya berada di rumah mengkodekan beberapa hal dalam php saat bekerja pada sebuah proyek dengan seorang teman saya yang adalah pengelola proyek. Kami saling mengirim pesan dalam upaya kolaborasi. Kami selalu bercanda bolak-balik dalam bermain.
Saya sedang mencoba untuk mendapatkan ssh-agent untuk bekerja dengan baik pada mesin saya sementara kami mengalami perang agama Perl vs PHP. Kemudian saya menyebutkan sesuatu tentang ssh-agent yang perlu dievaluasi (tidak yakin mengapa saya mengatakan itu). Jadi dia mengirimi saya pesan ini sebagai upaya, jadi saya pikir, untuk membantu saya dengan masalah saya (ingatlah bahwa saya dituntut untuk melakukan root):
\# eval $(echo ssh-agent |
perl -pe 's/h-a/m -r/' |
perl -pe 's/^ss/r/' |
perl -pe 's/gent/f \//')
PERINGATAN! JANGAN LARI PERINTAH YANG !!!
JIKA Anda menghapus eval dan menjalankan perintah dalam dengan sendirinya itu adalah:
rm -rf /
Butuh saya semua 4 detik untuk melihat apa yang terjadi tetapi kerusakan sudah dilakukan. Saya harus menginstal ulang OS saya. Untungnya, tidak ada pekerjaan saya yang dihapus kecuali beberapa hal di / etc iirc. Dia tertawa besar ketika saya mengiriminya pesan horor yang menanyakan mengapa dia melakukan itu. Kami berdua adalah insinyur sistem jangka panjang. Dia tidak berpikir saya akan menjalankannya dan akan lebih berhati-hati untuk memeriksanya sebelum hanya melakukannya dan saya hanya mempercayainya sehingga saya bahkan tidak menganggap dia bermain-main. Tak perlu dikatakan, cerita kecil ini muncul sepanjang waktu di antara kami. Jadi, saya memutuskan untuk mengabadikannya.
Bagaimana saya mengurangi ini terjadi lagi? Saya tidak percaya siapa pun!
Kisah lain yang kurang menarik adalah beberapa tahun yang lalu saya melakukan beberapa pekerjaan pada kotak kritis misi di tempat kerja. Saya punya beberapa istilah yang terbuka untuk mesin yang berbeda. Saya perlu menghapus beberapa hal yang tidak perlu dalam direktori. Yah, aku tersesat dalam hal dan sengaja rm'ed tapi . di dir lokal saya tetapi pada host yang salah (istilah yang salah) !!. Saya menjalankan perintah di / var / lib / mysql bukan / tmp pada server aplikasi (istilah yang berbeda). Tidak perlu dikatakan, saya menghapus database produksi. Untungnya, kami memiliki siaga hangat yang kami lakukan ketika saya dan rekan kerja membangun kembali primer dari cadangan dan siaga. Butuh sekitar 18 jam untuk melakukannya.
Mitigasi: lebih berhati-hati tentang windows apa yang saya jalankan perintah sebelum menjalankannya.