Wawancara dengan baghunter Artyom Moscow. Dia meretas Steam dan menerima penghargaan terbesar dalam sejarah Valve.



Artyom Moskovsky adalah seorang pemburu bagan, pentester dan petugas keamanan yang segera ingin mengajukan pertanyaan yang memalukan, “berapa banyak yang Anda hasilkan?” Tahun lalu, ia menerima hadiah terbesar dalam sejarah Valve - $ 20 ribu dan $ 25 ribu untuk dua kerentanan utama pada Steam dan $ 10 ribu lainnya untuk bug yang lebih kecil.

Kami berkorespondensi selama beberapa hari, dan Artem memberi tahu bagaimana ia mulai melakukan pekerjaannya sendiri, keterampilan apa yang dibutuhkan untuk ini, dan apakah ia menggambar dengan bakat seperti itu ke sisi gelap.



Pada tahun 2006, ketika saya berusia 9 tahun, saya memiliki PC pertama, dan saya tanpa sadar memutuskan bahwa saya akan berputar di bidang TI. Hingga kelas 10 ia berorientasi pada pemrograman. Setelah, ketika keberhasilan pertama muncul di sektor informasi, saya memutuskan bahwa keamanan lebih menarik.

Itu dimulai dengan banal: itu perlu untuk membuat situs untuk klan di permainan Jedi Academy. Kemudian pilihan jatuh pada uCoz tua yang baik, tetapi gagasan "membuat situs web keren" tetap ada. Saya melihat kursus "spesialis" PHP. Pada saat yang sama, itu tergantung pada antikristus dan forum tematik lainnya, membaca artikel tentang kerentanan khas. Itu hanya menarik.

Tahun-tahun berlalu, dan saya masih mencari diri sendiri dan ini membuat saya beriklan. Lalu saya menggunakan satu jaringan iklan besar untuk menengahi lalu lintas. Yah, ketika saya menggunakannya, saya sedih memperbarui statistik dan berkecil hati oleh kurangnya petunjuk. Seingat saya sekarang, mata saya tertuju pada parameter tanggal dalam permintaan statistik. Beberapa gerakan jari yang anggun, dan jendela modal muncul di jendela browser - itu adalah XSS. Saya menulis dukungan, dan setelah satu jam saldo saya di situs sudah menunjukkan $ 300. Kemudian di kelas 10, setelah mendapatkan uang "serius" pertama, saya pikir - ya, ini adalah topik saya. Atas tuduhan motivasi ini selama bulan depan, saya melakukan sepuluh kali lebih banyak, membantu situs-situs jaringan periklanan menjadi lebih aman.

Sekarang saya tinggal di Odessa, belajar di Universitas Politeknik Odessa, jurusan Ilmu Komputer. Tetapi aktivitas saya di Internet tidak harus dikaitkan dengan universitas. Dia tidak terlalu memengaruhi ini. Selama hampir tiga tahun saya telah bekerja sebagai pentester penuh waktu. Tetapi untuk kehidupan yang baik, mengayuh akan cukup.

- Maka Anda tidak merobek atap dari kesejukan Anda? Seperti bercinta, bekerja, aku akan melakukan ini.

- Itu tidak membuat frustrasi, tetapi pergeseran tertentu terjadi. Merasa independen dari sistem.

- Mengapa kamu pergi belajar dan bekerja? Ini adalah sistem, dan tidak terlalu efektif.

- Adalah satu hal untuk menjadi bagian dari sistem, hal lain untuk bergantung padanya. Universitas dan pekerjaan adalah cara mudah untuk menemukan orang dan teman yang berpikiran sama.

Penuh waktu saya bekerja empat hari seminggu. Saya mencari kerentanan hanya ketika ada suasana hati, oleh karena itu ternyata agak tidak stabil. Tetapi jika Anda menghitung selama satu tahun, maka bug yang keluar menghasilkan lebih banyak kali.

- Apakah Anda tertidur dengan penawaran setelah cerita Anda?

Ya, tawaran datang. Yang terakhir berada di perusahaan internasional yang baik untuk posisi Ahli Keamanan Aplikasi.
Pada 2018, Artem menemukan kerentanan pada Steam. Dia memutar injeksi SQL di database pada halaman untuk mitra dan menemukan kesempatan untuk mengunduh kunci untuk game apa pun.

Dia menulis secara rinci tentang proses di sini .

“File dihasilkan dengan 36.000 kunci ke game Portal 2. Wow.
Hanya dalam satu set adalah jumlah kunci ini. Dan semua set saat ini lebih dari 430.000. Dengan demikian, dengan mengurutkan nilai keyid, penyerang potensial dapat mengunduh semua kunci yang pernah dihasilkan oleh pengembang game Steam »

“Setelah 5 jam, kerentanan diperbaiki, tetapi status triaged (diterima) ditetapkan untuknya setelah 8 jam dan, sialnya, bagi saya itu sangat sulit 3 jam di mana otak saya berhasil melewati tahapan dari penolakan hingga penerimaan.

Karena kerentanan tidak ditetapkan diterima, saya percaya bahwa saluran belum mencapai laporan saya. Tetapi mereka memperbaiki bug, yang berarti mereka bisa mendaftarkannya sebelum saya.

Sekarang, jika Anda menghitung semua uang untuk kerentanan Valve, Anda akan mendapatkan 55 ribu. Saya pikir untuk berinvestasi dalam sesuatu, tetapi belum memutuskan.

"Apa hal yang tepat untuk menyebut pekerjaanmu?"

Baghanting. Masalah muncul ketika Anda mencoba menjelaskan kepada orang non-IT apa yang Anda lakukan. Kata hacker paling dekat dengan mereka. Saya tidak nyaman mengatakannya, karena, dalam pikiran saya, kata ini digunakan oleh anak sekolah yang mengancam akan memecahkan VK Anda atau menghitung dengan ip. Karena itu, jawaban saya yang biasa, "Yah, seperti seorang hacker," disertai dengan pandangan canggung di lantai.

- Keterampilan apa yang dibutuhkan untuk ini?

Memahami cara kerja. Hasil dari yang sebelumnya akan menjadi pemahaman tentang apa kerentanan mungkin dalam implementasinya. Saya suka di baghunting bahwa saya harus berurusan dengan teknologi yang berbeda. Ini benar-benar memperluas cakrawala Anda secara luas. Setelah beberapa saat, pengalaman, intuisi muncul, dan Anda sudah berada dalam ancaman model kepala Anda untuk aplikasi yang sedang dipelajari.

Hampir selalu saya menggunakan Python karena ringan dan indah. Tetapi jika Anda membutuhkan semacam output di web, maka saya menggunakan PHP. Sekarang, misalnya, saya mengotomatisasi beberapa tugas intelijen. Antarmuka web berjalan secara lokal dalam PHP - output dan manajemen tugas, dan tugas itu sendiri dikirim ke "agen" Python, yang di-host di beberapa VDSocs.

Kadang-kadang, ketika saya menulis sesuatu dengan tergesa-gesa dan tidak aman, maka saya dapat menyuntikkan "produk" ini, tetapi ini tidak lagi memanjakan.

- Apakah Anda memilih target untuk waktu yang lama?

Saya suka mencari kerentanan dalam apa yang saya gunakan sendiri. Beberapa jenis tantangan dirasakan, motivasi muncul. Kadang-kadang Anda bahkan tahu bahwa mereka tidak akan membayar Anda untuk itu, mungkin mereka bahkan tidak akan menjawab, tetapi itu hanya menarik.

Jika Anda memilih program publik di X1 yang telah membayar bug selama beberapa tahun, maka Anda tidak harus bergantung pada XSS di bidang pencarian. Entah masuk lebih dalam di mana mayoritas tidak mencapai, atau datang dengan vektor yang mayoritas tidak memikirkan.
Sebelum cerita Valve, Artem menggambarkan bagaimana ia menemukan kerentanan di salah satu kumpulan untuk penambangan bersama cryptocurrency - hanya pada saat semua orang menjadi gila pada blockchain dan pertumbuhan bitcoin.

Dia menemukan cara untuk memotong identifikasi dua faktor dan memiliki akun apa pun dalam aplikasi. Untuk laporannya, Artem diberi satu bitcoin - pada saat itu $ 18.000. Untuk memikirkan berapa biayanya bagi Artem sekarang mungkin lebih menyakitkan daripada kebanyakan dari kita.

Diperbarui: di sini ada paragraf dengan cerita tentang perusahaan besar dan mahal. Itu harus dihapus, karena tidak semua perusahaan besar dan mahal bersyukur ketika mereka menunjuk pada kerentanan.

- Apakah dips sulit diberikan?

Saya tidak akan menyebutnya kegagalan. Kegagalan adalah ketika Anda menetapkan tujuan: di sini saya pergi ke Uber dan menemukan RCE, mereka membayar Stomilien. Menurut pendapat saya, tujuan yang benar adalah untuk memahami infrastruktur perusahaan, memahami fungsionalitas aplikasi web, bagaimana bagian-bagiannya berinteraksi satu sama lain, dan untuk memeriksa berbagai kasus. Ini adalah tugas yang sepenuhnya layak, yang berada di zona pengaruh Anda. Kehadiran kerentanan sudah di luar zona ini, oleh karena itu, menetapkan tujuan seperti itu, pertama-tama, untuk mengejek diri sendiri.

Jika saya merasa tidak tahu ke mana harus melangkah lebih jauh, maka biasanya saya memberi diri saya beberapa hari untuk terganggu, santai. Dan kemudian kembali dengan ide-ide baru, atau pindah ke tujuan lain. Ngomong-ngomong, ada baiknya mencari bug hanya ketika ada suasana hati, memaksa diri Anda tidak efektif. Serta dalam segala hal lainnya.

- Menurut Anda cara apa yang lebih efektif, teknis, atau sosial?

Memperhatikan apa. Baghunter tidak dibayar untuk layanan sosial, bahkan mungkin dihukum. Dalam serangan nyata, keduanya digunakan.

- Seorang penjaga keamanan yang baik harus memiliki pengalaman meretas?

Nah, jika pengalaman seorang hacker bukan 2 tahun bersyarat, tetapi kemampuan untuk melepaskan suntikan dan menemukan XSS, maka ya. Bagus, saya pikir seharusnya begitu.

- Pekerjaan Anda adalah hal semacam itu, di mana ia bekerja atau tidak. Atau dapatkah hal itu dilakukan secara kualitatif dan buruk?

- Jika yang Anda maksud adalah yang paling indah, maka ya, Anda dapat melakukannya secara kualitatif, tetapi Anda tidak bisa. Kriteria tergantung pada situasi: dari desain laporan dan kelengkapan rekomendasi, hingga jumlah kerentanan dan kritikalitasnya.

- Apakah Anda menganggap keamanan sebagai musuh atau sebagai kolega?

- Seperti rekan kerja. Saya sendiri menganggap diri saya aman.

- Apakah Anda merasa lebih unggul dari pengembang konvensional?

Pengembang berbeda. Saya pasti merasa lebih unggul daripada mereka yang menggabungkan input pengguna dengan query SQL. Dan jika kita mengambil seluruh lingkup, sulit untuk mengatakan, karena saya adalah satu atau lain cara aktor di keduanya.

Dari waktu ke waktu, muncul pikiran di benak saya tentang membuat dan mengembangkan layanan dan alat saya sendiri yang menarik di bidang keamanan informasi. Karena itu, seringkali saya hanya dalam proses "menciptakan". Sejauh ini, semuanya untuk saya sendiri, tetapi mungkin dunia akan melihat kreasi saya.

Apa yang akan saya lakukan jika dunia cocok secara sempurna dan keamanan tidak lagi dibutuhkan? Saya akan memilih antara bekerja di Uber dan YandexTaxi.

Tetapi serius, keterampilan saya akan cukup untuk bekerja sebagai programmer rata-rata. Secara umum, saya tidak melihat kesulitan menemukan pekerjaan di TI, jika Anda sudah memiliki semacam cakrawala, Anda cukup memperdalam pengetahuan Anda dalam hal yang paling menarik.

- Jika Anda sekarang menulis program pelatihan peretas / hacker, mata pelajaran apa yang akan muncul?

Pemrograman Bahasa Inggris - semua informasi yang relevan dalam Bahasa Inggris. Sastra - membaca laporan dari X1. Anonimitas. Pendidikan jasmani - dalam kasus Pasien jika buruk dengan anonimitas. Benar - jika buruk dengan pendidikan jasmani.

- Saya melihat di komentar Anda ditanya mengapa Anda tidak pergi ke sisi gelap. Jika Anda tidak menertawakannya, maka sungguh - mengapa?

Tidur nyenyak dan harmoni batin lebih penting daripada uang apa pun.

"Jika kamu menyeberang, apakah kamu akan menjadi penjahat yang baik?"

Ya, saya akan mengambilnya dari orang kaya dan memberikannya kepada orang miskin. Jika saya pernah ketahuan, maka kemungkinan besar saya tidak berhasil dan tidak melaporkan bug ke perusahaan yang tidak memiliki bug resmi dan tidak merespons dengan baik untuk bantuan dari luar. Nah, jika saya seorang penjahat yang baik, maka Anda tidak akan tahu tentang itu.

Source: https://habr.com/ru/post/id436128/


All Articles