Sangat menarik: bagaimana kita menciptakan haniot yang tidak bisa diekspos

gambar
, - - — , « » . , : , . , , , . , , «Caught in the Act: Running a Realistic Factory Honeypot to Capture Real Threats». — .

: -


Tugas utama dalam menciptakan perangkap super kami adalah untuk mencegah kami dari terungkap oleh peretas yang menunjukkan minat di dalamnya. Untuk melakukan ini, saya harus melakukan banyak pekerjaan:

  1. Buat legenda realistis tentang perusahaan, termasuk nama dan foto karyawan, nomor telepon, dan email.
  2. Untuk menciptakan dan menerapkan model infrastruktur industri yang sesuai dengan legenda perusahaan kami.
  3. Putuskan layanan jaringan mana yang akan tersedia di luar, tetapi tidak terlibat dalam membuka port yang rentan sehingga tidak terlihat seperti perangkap untuk boot.
  4. Atur tampilan kebocoran informasi tentang sistem yang rentan dan sebarkan informasi ini di antara penyerang potensial.
  5. Melaksanakan pengawasan rahasia terhadap peretas dalam infrastruktur perangkap.

Dan sekarang, hal pertama yang pertama.

Menciptakan legenda


Penjahat dunia maya sudah terbiasa dengan fakta bahwa mereka bertemu banyak Hanipot, sehingga bagian paling maju dari mereka melakukan studi mendalam tentang setiap sistem yang rentan untuk memastikan bahwa ini bukan jebakan. Untuk alasan yang sama, kami berusaha keras untuk mencapai tidak hanya realisme hanipot dalam hal desain dan aspek teknis, tetapi juga untuk menciptakan penampilan perusahaan yang nyata.

Menempatkan diri sebagai pengganti kulhaker hipotetis, kami mengembangkan algoritma verifikasi yang akan membedakan sistem nyata dari jebakan. Itu termasuk mencari alamat IP perusahaan dalam sistem reputasi, membalikkan riset sejarah alamat IP, mencari nama dan kata kunci yang terkait dengan perusahaan, serta rekanannya dan banyak hal lainnya. Hasilnya, legenda itu ternyata cukup meyakinkan dan menarik.

Kami memutuskan untuk menempatkan pabrik perangkap sebagai butik prototipe industri kecil, yang bekerja untuk klien anonim yang sangat besar dari segmen militer dan penerbangan. Ini menghilangkan kesulitan hukum yang terkait dengan penggunaan merek yang ada.

Selanjutnya, kami harus datang dengan visi, misi dan nama organisasi. Kami memutuskan bahwa perusahaan kami akan menjadi startup dengan sejumlah kecil karyawan, yang masing-masing adalah pendiri. Ini menambah kredibilitas pada legenda spesialisasi bisnis kami, yang memungkinkannya bekerja dengan proyek-proyek rumit untuk pelanggan besar dan penting. Kami ingin perusahaan kami terlihat lemah dalam hal keamanan siber, tetapi pada saat yang sama jelas bahwa kami bekerja dengan aset penting dalam sistem target.

gambar
Cuplikan layar situs MeTech Hanipot. Sumber: Trend Micro.

Kami memilih kata MeTech sebagai nama perusahaan. Situs ini dibuat berdasarkan templat gratis. Gambar diambil dari bank foto, menggunakan yang paling tidak populer dan disempurnakan agar kurang dikenali.

Kami ingin perusahaan terlihat nyata, jadi kami harus menambah karyawan dengan keterampilan profesional yang sesuai dengan profil bisnis. Kami datang dengan nama dan kepribadian untuk mereka, dan kemudian mencoba memilih gambar dari bank foto sesuai dengan etnis mereka.

gambar
Cuplikan layar situs MeTech Hanipot. Sumber: Trend Micro

Agar tidak mengungkapkan kami, kami sedang mencari foto grup berkualitas baik dari mana kami dapat memilih wajah yang kami butuhkan. Namun, kami mengabaikan opsi ini, karena cracker yang potensial dapat menggunakan pencarian gambar terbalik dan menemukan bahwa "karyawan" kami hanya tinggal di bank foto. Pada akhirnya, kami mengambil keuntungan dari foto-foto orang tidak ada yang dibuat menggunakan jaringan saraf.

Profil karyawan yang dipublikasikan di situs berisi informasi penting tentang keterampilan teknis mereka, tetapi kami menghindari instruksi dari lembaga pendidikan dan kota tertentu.
Untuk membuat kotak surat, kami menggunakan server penyedia hosting, dan kemudian menyewa beberapa nomor telepon di AS dan menggabungkannya ke dalam pertukaran telepon virtual dengan menu suara dan mesin penjawab.

Infrastruktur Hanipot


Untuk menghindari terekspos, kami memutuskan untuk menggunakan kombinasi peralatan industri nyata, komputer fisik, dan mesin virtual aman. Ke depan, kami mengatakan bahwa kami memeriksa hasil upaya kami menggunakan mesin pencari Shodan, dan dia menunjukkan bahwa hanipot terlihat seperti sistem industri nyata.

gambar
Hasil pemindaian hanipot menggunakan Shodan. Sumber: Trend Micro.

Kami menggunakan empat PLC sebagai perangkat keras untuk perangkap kami:

  • Siemens S7-1200,
  • dua AllenBradley MicroLogix 1100,
  • Omron CP1L.

PLC ini dipilih karena popularitasnya di pasar global untuk sistem kontrol. Dan masing-masing pengendali ini menggunakan protokolnya sendiri, yang memungkinkan kita untuk memeriksa PLC mana yang akan menyerang lebih sering dan apakah mereka akan menarik minat siapa pun secara prinsip.

gambar
Peralatan perangkap "pabrik" kami. Sumber: Trend Micro

Kami tidak hanya menaruh besi dan menghubungkannya ke Internet. Kami memprogram setiap pengontrol untuk melakukan tugas, di antaranya

  • percampuran
  • kontrol burner dan conveyor belt,
  • palletizing menggunakan lengan robot.

Dan untuk membuat proses produksi realistis, kami memprogram logika untuk mengubah parameter umpan balik secara acak, mensimulasikan mesin mulai dan berhenti, menyalakan dan mematikan burner.

Pabrik kami memiliki tiga komputer virtual dan satu fisik. Mesin virtual digunakan untuk mengendalikan pabrik, robot paletisasi, dan sebagai tempat kerja otomatis dari insinyur perangkat lunak PLC. Komputer fisik berfungsi sebagai server file.

Selain memantau serangan pada PLC, kami ingin memantau status program yang diunduh ke perangkat kami. Untuk melakukan ini, kami membuat antarmuka yang memungkinkan kami untuk dengan cepat menentukan bagaimana keadaan aktuator dan instalasi virtual kami diubah. Sudah pada tahap perencanaan, kami menemukan bahwa jauh lebih mudah untuk mengimplementasikan ini dengan bantuan program kontrol daripada melalui pemrograman langsung dari logika pengontrol. Kami membuka akses ke antarmuka manajemen perangkat hanipot kami melalui VNC tanpa kata sandi.

Robot industri adalah komponen kunci dari manufaktur pintar modern. Dalam hal ini, kami memutuskan untuk menambahkan robot dan AWP untuk mengendalikannya di peralatan perangkap pabrik kami. Untuk membuat "pabrik" lebih realistis, kami memasang perangkat lunak nyata pada kontrol AWP, yang digunakan para insinyur untuk memprogram grafis logika robot. Yah, karena robot industri biasanya terletak di jaringan internal yang terisolasi, kami memutuskan untuk meninggalkan akses VNC yang tidak terlindungi hanya ke manajemen workstation.

gambar
Lingkungan RobotStudio dengan model 3D dari robot kami. Sumber: Trend Micro

Pada mesin virtual dengan workstation kontrol robot, kami menginstal lingkungan pemrograman RobotStudio dari ABB Robotics. Setelah mengatur RobotStudio, kami membuka di dalamnya file simulasi dengan robot kami sehingga gambar 3D-nya terlihat di layar. Akibatnya, Shodan dan mesin pencari lainnya, setelah menemukan server VNC yang tidak terlindungi, akan menerima gambar ini dari layar dan menunjukkannya kepada mereka yang mencari robot industri dengan akses terbuka untuk mengontrol.

Makna dari perhatian terhadap detail adalah untuk menciptakan tujuan yang menarik dan paling realistis bagi penyerang yang, setelah menemukannya, akan kembali ke sana lagi dan lagi.

Insinyur AWP


Untuk memprogram logika PLC, kami menambahkan komputer teknik ke infrastruktur. Perangkat lunak industri untuk pemrograman PLC dipasang di dalamnya:

  • TIA Portal untuk Siemens,
  • MicroLogix untuk pengontrol Allen-Bradley,
  • CX-One untuk Omron.

Kami memutuskan bahwa stasiun kerja teknik tidak akan dapat diakses di luar jaringan. Sebagai gantinya, kami menetapkan kata sandi yang sama untuk akun administrator di atasnya seperti pada workstation kontrol robot dan workstation dari pabrik yang dapat diakses dari Internet. Konfigurasi ini cukup umum di banyak perusahaan.
Sayangnya, terlepas dari semua upaya kami, tidak ada satu pun penyerang yang mencapai AWP sang insinyur.

Server file


Kami membutuhkannya sebagai umpan bagi penyusup dan sebagai alat untuk mendukung "pekerjaan" kami sendiri di pabrik perangkap. Ini memungkinkan kami untuk berbagi file dengan perangkat kami menggunakan perangkat USB, tanpa meninggalkan jejak dalam perangkap jaringan. Sebagai OS untuk server file, kami menginstal Windows 7 Pro, di mana kami membuat folder bersama yang dapat diakses untuk membaca dan menulis kepada siapa pun.

Pada awalnya, kami tidak membuat hierarki folder dan dokumen apa pun di server file. Namun, kemudian penyerang secara aktif mempelajari folder ini, jadi kami memutuskan untuk mengisinya dengan berbagai file. Untuk melakukan ini, kami menulis skrip python yang membuat file ukuran acak dengan salah satu ekstensi yang ditentukan, membentuk nama berdasarkan kamus.

gambar
Sebuah skrip untuk menghasilkan nama file yang menarik. Sumber: Trend Micro

Setelah menjalankan skrip, kami mendapatkan hasil yang diinginkan dalam bentuk folder yang diisi dengan file dengan nama yang sangat menarik.

gambar
Hasil skrip. Sumber: Trend Micro

Lingkungan pemantauan


Setelah menghabiskan begitu banyak upaya untuk menciptakan perusahaan yang realistis, kami tidak mampu menyuntikkan diri ke lingkungan untuk memantau "pengunjung" kami. Kami harus mendapatkan semua data secara real time sehingga penyerang tidak memperhatikan bahwa mereka sedang diawasi.

Kami menerapkan ini menggunakan empat USB-Ethernet adapter, empat SharkTap Ethernet-coupler, Raspberry Pi 3 dan drive eksternal yang besar. Skema jaringan kami terlihat seperti ini:

gambar
Skema jaringan Hanipot dengan peralatan pemantauan. Sumber: Trend Micro

Kami mengatur tiga ketukan SharkTap untuk memantau semua lalu lintas eksternal ke PLC yang hanya dapat diakses dari jaringan internal. SharkTap keempat melacak lalu lintas tamu dari mesin virtual yang rentan.

gambar
Coupler SharkTap Ethernet dan Router Sierra Wireless AirLink RV50. Sumber: Trend Micro

Raspberry Pi melakukan penangkapan lalu lintas harian. Kami membuat koneksi Internet menggunakan router seluler Sierra Wireless AirLink RV50, yang sering digunakan di perusahaan industri.

Sayangnya, router ini tidak mengizinkan pemblokiran serangan selektif yang tidak memenuhi rencana kami, jadi kami menambahkan firewall Cisco ASA 5505 dalam mode transparan ke jaringan untuk melakukan pemblokiran dengan dampak minimal pada jaringan.

Analisis lalu lintas


Tshark dan tcpdump sesuai untuk menyelesaikan masalah saat ini dengan cepat, tetapi dalam kasus kami kemampuan mereka tidak cukup, karena kami memiliki banyak lalu lintas gigabyte, yang dianalisis oleh beberapa orang. Kami menggunakan penganalisa sumber terbuka Moloch yang dikembangkan oleh AOL. Dalam hal fungsionalitas, ini sebanding dengan Wireshark, tetapi memiliki lebih banyak fitur untuk kolaborasi, deskripsi dan penandaan paket, ekspor dan tugas-tugas lainnya.

Karena kami tidak ingin memproses data yang dikumpulkan pada komputer Hanipot, dump PCAP diekspor ke AWS setiap hari, dari tempat kami sudah mengimpornya ke mesin dengan Moloch.

Rekaman layar


Untuk mendokumentasikan tindakan cracker di hanipot kami, kami menulis sebuah skrip yang mengambil screenshot dari mesin virtual pada interval tertentu dan, membandingkan dengan screenshot sebelumnya, menentukan apakah ada sesuatu yang terjadi di sana atau tidak. Ketika aktivitas terdeteksi, skrip menyertakan rekaman layar. Pendekatan ini terbukti paling efektif. Kami juga mencoba menganalisis lalu lintas VNC dari dump PCAP untuk memahami perubahan apa yang terjadi pada sistem, tetapi pada akhirnya, perekaman layar yang kami implementasikan ternyata lebih sederhana dan lebih visual.

Memantau Sesi VNC


Untuk ini, kami menggunakan Chaosreader dan VNCLogger. Kedua utilitas mengekstrak penekanan tombol dari dump PCAP, tetapi VNCLogger menangani kunci seperti Backspace, Enter, Ctrl lebih tepat.

VNCLogger memiliki dua kelemahan. Pertama: ia hanya dapat mengekstrak kunci dengan "mendengarkan" lalu lintas pada antarmuka, jadi kami harus mensimulasikan sesi VNC untuk itu menggunakan tcpreplay. Kelemahan kedua VNCLogger adalah umum terjadi pada Chaosreader: keduanya tidak menunjukkan isi clipboard. Untuk melakukan ini, saya harus menggunakan Wireshark.

Lure peretas


Kami menciptakan hanipot untuk diserang. Untuk mencapai hal ini, kami mengadakan kebocoran informasi yang dirancang untuk menarik perhatian calon cracker. Port-port berikut dibuka pada hanipot:

gambar

Port RDP harus ditutup segera setelah dimulainya pekerjaan, karena karena sejumlah besar lalu lintas pemindaian di jaringan kami, ada masalah kinerja.
Terminal-VNC pertama-tama bekerja dalam mode "hanya lihat" tanpa kata sandi, dan kemudian kami "keliru" mengalihkannya ke mode akses penuh.

Untuk menarik para penyerang, kami memposting dua posting dengan informasi yang bocor tentang sistem industri yang tersedia di PasteBin.

gambar
Salah satu posting yang diposting di PasteBin untuk menarik serangan. Sumber: Trend Micro

Serangan


Hanipot hidup online selama sekitar tujuh bulan. Serangan pertama terjadi sebulan setelah rilis Hanipot online.

Pemindai

Ada banyak lalu lintas dari pemindai dari perusahaan terkenal - ip-ip, Rapid, Shadow Server, Shodan, ZoomEye, dan lainnya. Ada begitu banyak dari mereka sehingga kami harus mengecualikan alamat IP mereka dari analisis: 610 dari 9452 atau 6,45% dari semua alamat IP unik milik pemindai yang sepenuhnya sah.

Penipu

Salah satu risiko terbesar yang harus kami hadapi adalah penggunaan sistem kami untuk tujuan kriminal: untuk membeli smartphone melalui akun pelanggan, menguangkan mil maskapai penerbangan dengan kartu hadiah dan jenis penipuan

Penambang lainnya

Salah satu pengunjung pertama ke sistem kami ternyata adalah penambang. Dia mengunggah perangkat lunak penambangan Monero ke dalamnya. Dia tidak akan dapat menghasilkan banyak pada sistem khusus kami karena produktivitas yang rendah. Namun, jika kita menggabungkan upaya beberapa puluhan atau bahkan ratusan sistem seperti itu, itu bisa berubah dengan cukup baik.

Pemeras

Selama pengoperasian hanipot, kami dua kali menjumpai virus ransomware asli. Dalam kasus pertama, itu Crysis. Operator-operatornya masuk ke sistem melalui VNC, tetapi kemudian menginstal TeamViewer dan sudah melakukan tindakan lebih lanjut dengannya. Setelah menunggu pesan ransomware yang menuntut tebusan $ 10 ribu dalam BTC, kami melakukan korespondensi dengan para penjahat, meminta mereka untuk mendekripsi salah satu file untuk kami. Mereka memenuhi permintaan itu dan mengulangi permintaan tebusan. Kami berhasil menawar hingga 6 ribu dolar, setelah itu kami hanya memuat ulang sistem pada mesin virtual, karena kami mendapatkan semua informasi yang diperlukan.

Ransomware kedua adalah Phobos. Peretas yang menginstalnya selama satu jam melihat melalui sistem file hanipot dan memindai jaringan, dan kemudian masih menginstal ransomware.
Serangan ransomware ketiga ternyata palsu. "Peretas" yang tidak dikenal mengunduh file haha.bat ke sistem kami, setelah itu kami menonton selama beberapa waktu bagaimana ia mencoba membuatnya bekerja. Salah satu upaya adalah mengubah nama haha.bat menjadi haha.rnsmwr.

gambar
"Hacker" meningkatkan bahaya file bat, mengubah ekstensinya menjadi .rnsmwr. Sumber: Trend Micro

Ketika file batch akhirnya mulai berjalan, peretas mengeditnya, menambah tebusan dari $ 200 menjadi $ 750. Setelah itu, ia "mengenkripsi" semua file, meninggalkan pesan ransomware di desktop dan menghilang, mengubah kata sandi pada VNC kami.

Setelah beberapa hari, peretas kembali dan untuk mengingatkan dirinya sendiri, ia meluncurkan file batch, yang membuka banyak jendela dengan situs porno. Rupanya, dengan cara ini ia berusaha menarik perhatian pada permintaannya.

Ringkasan


Selama penelitian, ternyata segera setelah informasi tentang kerentanan diterbitkan, hanipot menarik perhatian, dan aktivitasnya bertambah hari demi hari. Agar jebakan menarik perhatian, kami harus mengakui banyak pelanggaran keamanan dari perusahaan fiksi kami. Sayangnya, situasi ini jauh dari langka di antara banyak perusahaan nyata yang tidak memiliki personil TI dan keamanan informasi penuh waktu.

Dalam kasus umum, organisasi harus menggunakan prinsip privilege paling rendah, sementara kami telah menerapkan kebalikannya untuk menarik pengganggu. Dan semakin lama kita menyaksikan serangan itu, semakin canggih mereka dibandingkan dengan metode pengujian penetrasi standar.

Dan yang paling penting: semua serangan ini akan gagal jika langkah-langkah keamanan yang memadai diterapkan ketika membuat jaringan. Organisasi harus memastikan bahwa peralatan dan komponen infrastruktur industri mereka tidak dapat diakses dari Internet, seperti yang secara khusus kami lakukan dalam perangkap kami.

Meskipun kami tidak merekam serangan tunggal pada stasiun kerja insinyur, meskipun menggunakan kata sandi administrator lokal yang sama di semua komputer, kami harus menghindari praktik ini untuk meminimalkan kemungkinan penyusup. Memang, keamanan yang buruk berfungsi sebagai undangan tambahan untuk menyerang sistem industri yang telah lama menarik bagi penjahat cyber.

All Articles