Quals: Keamanan Cyber โ€‹โ€‹Nasional Saudi dan Oman CTF 2019. WriteUp

Hai, Habr.

Pada 7-9 Februari 2019, tahap kualifikasi kompetisi berlangsung di situs cybertalents, tujuannya adalah untuk mencari bakat cyber untuk Oman dan Arab Saudi. Orang-orang dari negara lain, sesuai dengan aturan acara, berpartisipasi di luar kompetisi. Di bawah cat - analisis tugas tertentu.



Kompetisi terdiri dari 9 tugas, empat di antaranya dari tingkat kesulitan "mudah", empat di antaranya "sedang", satu adalah "keras". Untuk setiap tugas, masing-masing 50, 100 dan 200 poin diberikan. Tugas juga dikategorikan. Di bawah ini adalah solusi untuk beberapa masalah.

Kembali ke dasar


Mudah, Analisis Web
tidak banyak pilihan. Tidak perlu membuka tautan dari browser, selalu ada cara yang berbeda
Diberi tautan seperti example.com/somepage. Ketika Anda mengkliknya, kami diarahkan (301 Dipindahkan Secara Permanen) ke halaman yang sama dengan garis miring di bagian akhir, dan dia, pada gilirannya, mengalihkan ke google.com:



Mari kita coba permintaan POST ke halaman kedua:



var _0x7f88=["","join","reverse","split","log","ceab068d9522dc567177de8009f323b2"];function reverse(_0xa6e5x2){flag= _0xa6e5x2[_0x7f88[3]](_0x7f88[0])[_0x7f88[2]]()[_0x7f88[1]](_0x7f88[0])}console[_0x7f88[4]]= reverse;console[_0x7f88[4]](_0x7f88[5]) 

Masukkan kode dengan lembut melalui JS beautify:

 function reverse(_0xa6e5x2) { flag = _0xa6e5x2['split']('')['reverse']()['join']('') } console['log'] = reverse; console['log']('ceab068d9522dc567177de8009f323b2') 

Bendera: 2b323f9008ed771765cd2259d860baec

Saya suka gambar


Mudah, Forensik Digital
Seorang hacker meninggalkan kami sesuatu yang memungkinkan kami untuk melacaknya di gambar ini, dapatkah Anda menemukannya?
Gambar terlampir pada tugas:


Tautan gambar

Solusi
Buka di hex editor. Perhatikan bahwa format png memiliki trailer "IEND" (49 45 4E 44). Kami melihat akhirnya:

Diamati bahwa informasi tambahan ditambahkan ke akhir file. Asumsi pertama adalah base32, karena semua huruf dalam satu kasus. Dekripsi:
FLAG{Not_Only_Base64}

Saya suka pria ini


Sedang, Rekayasa Reverse Malware
Bisakah Anda menemukan kata sandi untuk mendapatkan bendera?
Dan file

Solusi
Lewati file melalui Detect It Easy:



Buka DNSpy x86

File ini sangat kecil dan terdiri dari satu acara pengguna - Button_Click:

 string value = new string(new char[] { this.Letters[5], this.Letters[14], this.Letters[13], this.Letters[25], this.Letters[24] }); if (this.TextBox1.Text.Equals(value)) { MessageBox.Show(new string(new char[] { this.Letters[5], this.Letters[11], this.Letters[0], this.Letters[6], this.Letters[26], this.Letters[8], this.Letters[28], this.Letters[11], this.Letters[14], this.Letters[21], this.Letters[4], this.Letters[28], this.Letters[5], this.Letters[14], this.Letters[13], this.Letters[25], this.Letters[24], this.Letters[27] })); } 

Juga, string dideklarasikan di kelas saat ini:
 public char[] Letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ{}_".ToCharArray(); 

Ada dua solusi - dalam statika dan dinamika. Pertama, kita selesaikan dengan metode statis:

 # text -   >>> for i in range(len(letters)): text = text.replace(f"this.Letters[{i}]", letters[i]) >>> print(text) string value = new string(new char[] { F, O, N, Z, Y }); if (this.TextBox1.Text.Equals(value)) { MessageBox.Show(new string(new char[] { F, L, A, G, {, I, _, L, O, V, E, _, F, O, N, Z, Y, } })); } 

Ketika kami memastikan bahwa program tersebut tidak berbahaya, kami dapat men-debugnya secara dinamis. Kami menempatkan breakpoint (breakpoint, breakpoint) di awal metode, lihat dalam variabel lokal, dapatkan nilai variabel, setelah itu kami akan mendapatkan pesan dengan bendera.

Tandai: FLAG{I_LOVE_FONZY}

Hanya konferensi lain


Mudah, Informasi Umum
konferensi Cybersecurity yang terkenal dijalankan oleh OWASP di lokasi yang berbeda
Bendera
Appsec

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


All Articles