Rumah Jam keamanan Meretas hanya memecahkan satu teka-teki sekaligus

Meretas hanya memecahkan satu teka-teki sekaligus

Video: Pecahkan 6 Teka-teki untuk Membuktikan Kamu Bisa Berpikir Lebih Cepat Dibanding Sherlock (Oktober 2024)

Video: Pecahkan 6 Teka-teki untuk Membuktikan Kamu Bisa Berpikir Lebih Cepat Dibanding Sherlock (Oktober 2024)
Anonim

Dapatkan sekelompok peretas dan orang-orang yang berpikiran keamanan di tempat yang sama dan sedikit kompetisi yang baik hati dan peretasan tidak bisa dihindari.

KTT Analis Keamanan Kas Kaskyky Lab minggu lalu penuh sesak dengan sesi-sesi menarik dan dihadiri oleh beberapa pemikir terbaik dalam keamanan informasi, tetapi itu tidak semuanya. Para peserta juga dapat bersaing dalam "Crypto-challenge, " di mana mereka menggunakan keterampilan meretas mereka untuk memecahkan serangkaian teka-teki. Saya berada di antara segelintir orang yang menyelesaikan tantangan, dan sepanjang jalan belajar sedikit lebih banyak tentang kriptografi, kebingungan, dan rekayasa terbalik.

Yang terpenting, saya belajar bahwa meretas seperti memecahkan teka-teki; Anda terus berpikir, "Biarkan saya mencoba yang satu ini saja, " dan merasa sangat senang ketika Anda mendapatkannya.

Kriptografi Memegang Kunci

Pada intinya, kriptografi adalah tentang mengambil pesan dan menulisnya sedemikian rupa sehingga tampak seperti omong kosong bagi siapa pun yang tidak tahu rahasianya. Ini sedikit seperti Babi Latin. Jika Anda tidak tahu aturan bahasa, maka Anda tidak tahu apa arti "ellohay". Beberapa sandi sangat sederhana - seperti menukar surat dengan huruf berikutnya, jadi a menjadi b, b menjadi c, dan seterusnya, hingga "halo" menjadi "ifmmp." Yang lain jauh lebih rumit secara matematis dan digunakan untuk melindungi nomor kartu kredit dan kredensial kata sandi kami.

Setiap peserta konferensi, pada saat pendaftaran, menerima surat tentang tantangan kripto. Pada akhirnya adalah serangkaian huruf yang tidak masuk akal tetapi memiliki format yang akrab. Dimulai dengan "vhhd: //" dan diikuti oleh kelompok huruf yang dipisahkan oleh tanda titik (.), Itu jelas URL ke situs web. Setelah saya menyadari beberapa huruf pertama adalah "http: //" Saya tahu ini adalah ROT13, sebuah cipher populer (dan sangat lemah), yang menukar setiap huruf dengan yang datang 13 tempat kemudian dalam alfabet. Tidak perlu mengerjakan URL secara manual, karena ada banyak decoder ROT13 di Web.

Javascript yang dikaburkan, Oh My

Halaman yang dihasilkan, dengan gambar dan pesan sambutan, membosankan. Sumber halaman itu sama sekali tidak. Itu adalah baris dan baris dari lebih banyak omong kosong, terlampir dalam tag <script type = "text \ javascript">. Ah, Javascript yang dikaburkan.

Kebingungan adalah teknik yang umum digunakan di mana pembuat kode jahat menulis kode serangan sedemikian rupa sehingga manusia tidak dapat dengan mudah membaca kode tersebut. Ini berbeda dari kriptografi karena tidak bergantung pada rahasia tetapi lebih pada metode pemrograman yang berbelit-belit untuk menghasilkan kode yang sulit dibaca. Kode yang dihasilkan tidak terbaca oleh mata manusia, tetapi mesin tidak memiliki masalah dalam memahami dan menjalankannya.

Seperti halnya dengan ROT13, tidak perlu mencoba mem-parsing Javascript yang dikaburkan secara manual. Alih-alih, saya menggunakan inspektur DOM yang dibangun di browser web Chrome dan melangkah melalui setiap elemen halaman. Saya bisa melihat kode untuk menampilkan gambar dan pesan selamat datang yang tersembunyi di dalam omong kosong, serta baris kode yang berisi komentar berisi petunjuk selanjutnya.

Kebingungan tidak terbatas pada Javascript saja. Saya harus mengedit skrip Perl untuk mengetahui apa yang ingin dikatakan oleh kode yang jelek itu.

Membalikkan Teknik Seperti Bos

Pada satu titik, saya mengunduh file yang dapat dieksekusi (dipindai dengan Kaspersky Antivirus - tidak ada salahnya berhati-hati!) Yang mendorong saya untuk memasukkan nama pengguna dan kata sandi. Sudah waktunya untuk merekayasa balik yang dapat dieksekusi.

Mengerjakan laptop Linux membantu pada saat ini, karena saya bisa menggunakan string , alat Linux baris perintah yang mencetak konten file non-teks, dan gdb , debugger yang memungkinkan Anda melihat apa yang terjadi di dalam file saat dijalankan. string juga berguna kemudian dalam tantangan, ketika saya mengunduh file.d64. Saya bisa saja mengunduh emulator Commodore 64 - seperti yang dimaksudkan oleh penyelenggara tantangan - untuk menjalankan file, tetapi saya hanya menjalankan string untuk mencari tahu ke mana harus pergi berikutnya.

Saya telah mendengar tentang menanamkan pesan rahasia ke dalam gambar, tetapi ketika saya dihadapkan dengan gambar seperti itu, saya awalnya bingung. Kemudian saya ingat bahwa gambar memiliki lapisan, dan penyerang dapat menanamkan informasi ke dalam lapisan yang berbeda tanpa mengganggu lapisan yang terlihat. Saya bisa melihat setiap lapisan dalam GIMP, alat open-source yang mirip dengan Adobe Photoshop yang berjalan di Linux. Sebagai gantinya, saya menjalankan gambar melalui string , yang mengekstraksi semua teks yang tersembunyi di dalam gambar. Itu adalah satu perintah yang serbaguna dan praktis.

Catatan Tentang Kata Sandi

Beberapa langkah dalam tantangan meminta saya untuk kata sandi yang valid. Sementara "kata sandi" tidak pernah muncul, setidaknya ada satu kesempatan di mana saya hanya secara acak memasukkan kata-kata yang memiliki relevansi dengan konferensi dan permainan sampai saya menemukan yang benar. Dalam satu langkah, saya tersandung oleh huruf kecil / huruf besar, jadi saya hanya membuat daftar semua kombinasi yang mungkin dan bekerja dengan cara saya.

Seorang penyerang, dipersenjatai dengan beberapa informasi tentang korban dapat dengan mudah mencoba menebak kata sandi yang benar, atau hanya menjalankan daftar kata-kata yang mungkin. Aku terus bergumam, "Aku akan mengakali kamu, " dan ketika aku menemukan jawabannya, aku berpikir, "HA! Paham!"

Hanya memecahkan teka-teki

Dengan pengecualian string dan gdb, setiap elemen tantangan bergantung pada sesuatu yang cukup mudah, atau sesuatu yang bisa saya pelajari dengan pencarian Google. Meskipun tidak semua peretasan sesederhana ini, penting untuk dipahami bahwa keterampilan tersebut saling melengkapi. Untuk memulai, Anda hanya perlu sedikit rasa ingin tahu dan kemauan untuk bertahan.

Anda mendengar tentang orang yang mencoba masuk ke sistem atau meluncurkan kampanye online untuk bersenang-senang, atau hanya untuk membuktikan mereka bisa. Yang membuat hacker terus-menerus meretas adalah desakan adrenalin yang sulit dipahami yang datang dari memecahkan teka-teki yang menantang.

Meretas hanya memecahkan satu teka-teki sekaligus