kata pengantar
Pada tanggal 9 Mei 2022, waktu Beijing, Zhichuangyu Blockchain Security Lab mendeteksi bahwa Fortress Protocol, protokol peminjaman rantai BSC, diserang karena masalah oracle. Ini adalah insiden serangan oracle ketiga yang terdeteksi oleh laboratorium baru-baru ini. Kerugian tersebut termasuk 1.048 ETH dan 400.000 DAI , dengan total sekitar 300W USD Saat ini, AnySwap dan Celer telah digunakan untuk lintas rantai ke Ethereum dan menggunakan Tornado untuk pencampuran mata uang.
Ketahuilah bahwa Chuangyu Blockchain Security Lab melacak dan menganalisis insiden ini untuk pertama kalinya.
informasi dasar
Pengawas yang Diserang: 0x01bfa5c99326464b8a1e1d411bb4783bb91ea629
Alamat oracle yang diserang: 0xc11b687cd6061a6516e23769e4657b6efa25d78e
Alamat penyerang: 0xA6AF2872176320015f8ddB2ba013B38Cb35d22Ad
Kontrak serangan: 0xcD337b920678cF35143322Ab31ab8977C3463a45
tx: 0x13d19809b19ac512da6d110764caee75e2157ea62cb70937c8d9471afcb061bf
Analisis kerentanan
Proyek ini masih merupakan disk tiruan dari Compound, tetapi karena pihak proyek telah mencatat pemeriksaan asli di mesin oracle, tidak diperlukan daya yang cukup untuk mengutak-atik harga melalui 0xc11b687cd6061a6516e23769e4657b6efa25d78e#kirim;
Penyerang meminjam aset dari pool lain dengan mengubah harga FTS dalam perjanjian, pool pinjaman di pasar adalah sebagai berikut:
proses penyerangan
1. Penyerang membeli token FTS dan memilih untuk menambahkan FTS sebagai jaminan melalui proposal, dan ID proposal adalah 11;
2. Ubah harga FTS dengan memanggil fungsi kirim oracle;
3. Penyerang menggunakan 100 FTS sebagai jaminan untuk memanggil enterMarket untuk memasuki pasar;
4. Karena masalah perhitungan nilai FTS dengan harga pasar, penyerang menggunakan agunan untuk langsung memanggil pinjam meminjam;
Aset yang Dipinjam:
5. Karena 100 FTS tidak memiliki nilai dan tidak perlu diambil, penyerang masih akan menggunakan FTS lain yang digunakan pada langkah pertama untuk menguangkan sepenuhnya di bursa Pancake.
Meringkaskan
Alasan serangan ini adalah karena ada masalah dengan penggunaan disk imitasi Compound di oracle. Baru-baru ini, sejumlah besar proyek disk imitasi Compound telah diserang. Kami mendesak semua pihak proyek yang membuat Compound bercabang untuk mengambil inisiatif untuk melakukan pemeriksaan mandiri. Serangan yang diketahui saat ini terutama disebabkan oleh masalah berikut:
Tanggul seribu mil dihancurkan oleh sarang semut. Dapat dilihat dari panggilan internal bahwa penyerang menggunakan getAllMarkets untuk melintasi dan mendapatkan aset dasar dari semua pasar secara bergiliran dan mencairkan FTS sepenuhnya. Direkomendasikan bahwa pihak proyek harus memiliki pemahaman penuh dan audit keamanan pihak ketiga yang memadai untuk penerapan mereka sendiri yang berbeda. Kesalahan kecil dapat menyebabkan kerugian total proyek.