Laporan kabut tebal, ether.fi diserang, mengalami kerugian sekitar 15,45 ETH; sebelum pengumuman dirilis, kabut tebal menyatakan telah menghubungi timnya secara pribadi untuk responsible disclosure.
Masalahnya berasal dari fungsi solve() pada kontrak AtomicQueue: kontrak tidak memeriksa apakah solver sama dengan msg.sender, serta tidak ada verifikasi tanda tangan, registrasi, atau otorisasi. Penyerang terlebih dahulu menggunakan updateAtomicRequest() untuk membuat permintaan berbahaya, lalu memaksa alamat korban bertindak sebagai solver. Setelah itu, kontrak memanggil finishSolve dan menjalankan want.transferFrom(solver, users[i], assetsToUser), sehingga dana ditarik menggunakan batas otorisasi ERC-20 yang sebelumnya diberikan oleh korban.
Peristiwa ini kembali mengingatkan: otorisasi token yang tidak terbatas atau tidak dibersihkan dalam jangka waktu lama sering kali berubah menjadi saluran penarikan langsung ketika kontrak memiliki kekurangan kontrol akses. Setelah berpartisipasi dalam DeFi, sebaiknya periksa dan cabut otorisasi yang tidak lagi digunakan secara berkala.
#DeFi安全 #etherfi #Keamanan Web3
Masalahnya berasal dari fungsi solve() pada kontrak AtomicQueue: kontrak tidak memeriksa apakah solver sama dengan msg.sender, serta tidak ada verifikasi tanda tangan, registrasi, atau otorisasi. Penyerang terlebih dahulu menggunakan updateAtomicRequest() untuk membuat permintaan berbahaya, lalu memaksa alamat korban bertindak sebagai solver. Setelah itu, kontrak memanggil finishSolve dan menjalankan want.transferFrom(solver, users[i], assetsToUser), sehingga dana ditarik menggunakan batas otorisasi ERC-20 yang sebelumnya diberikan oleh korban.
Peristiwa ini kembali mengingatkan: otorisasi token yang tidak terbatas atau tidak dibersihkan dalam jangka waktu lama sering kali berubah menjadi saluran penarikan langsung ketika kontrak memiliki kekurangan kontrol akses. Setelah berpartisipasi dalam DeFi, sebaiknya periksa dan cabut otorisasi yang tidak lagi digunakan secara berkala.
#DeFi安全 #etherfi #Keamanan Web3