Vulnerability di Solidity - Rian010/Journal GitHub Wiki

Daftar Lengkap Vulnerability di Solidity

Berikut adalah daftar lengkap vulnerability yang umum ditemukan dalam Solidity:

1. Integer Overflow dan Underflow:

  • Overflow: Terjadi ketika nilai integer bertambah melebihi batas maksimumnya.
  • Underflow: Terjadi ketika nilai integer berkurang melebihi batas minimumnya.

2. Reentrancy:

  • Situasi di mana attacker dapat mengeksekusi fungsi kontrak berulang kali sebelum state diubah.

3. Cross-function Attack:

  • Attacker memanfaatkan kerentanan di satu fungsi untuk mengeksploitasi fungsi lain dalam kontrak.

4. Denial-of-Service (DoS):

  • Attacker mencegah pengguna lain untuk menggunakan kontrak dengan menghabiskan gas atau sumber daya lainnya.

5. Front-running:

  • Attacker memanipulasi transaksi blockchain untuk mendapatkan keuntungan dari informasi yang belum dipublikasikan.

6. Backdoor:

  • Kode berbahaya yang sengaja dimasukkan ke dalam kontrak untuk memungkinkan akses yang tidak sah.

7. Time-of-check Time-of-use (TOCTOU) Attack:

  • Attacker memanfaatkan perbedaan waktu antara saat data diperiksa dan saat data digunakan.

8. Phishing:

  • Attacker menipu pengguna untuk memberikan informasi rahasia atau mengakses situs web palsu.

9. Social Engineering:

  • Attacker memanipulasi pengguna untuk melakukan tindakan yang tidak aman.

10. Smart Contract Bugs:

  • Kesalahan dalam kode kontrak yang dapat dieksploitasi oleh attacker.

11. Mutable Data:

  • Data yang dapat diubah setelah disimpan di blockchain, memungkinkan manipulasi data.

12. Lack of Access Control:

  • Kontrol akses yang tidak memadai memungkinkan attacker untuk mengakses dan memanipulasi data dan fungsi kontrak.

13. Improper Input Validation:

  • Validasi input yang tidak tepat memungkinkan attacker untuk memasukkan data berbahaya ke dalam kontrak.

14. Use of Unsafe Libraries:

  • Penggunaan library pihak ketiga yang tidak aman dapat membuat kontrak rentan terhadap exploit.

15. Unclear or Incorrect Documentation:

  • Dokumentasi yang tidak jelas atau tidak akurat dapat menyebabkan kebingungan dan kesalahan dalam pengembangan dan penggunaan kontrak.

Mitigasi Vulnerability:

  • Gunakan praktik terbaik pengkodean Solidity.
  • Lakukan audit kode kontrak secara menyeluruh.
  • Gunakan library dan framework yang aman dan teruji.
  • Perbarui kontrak secara berkala untuk mengatasi kerentanan baru.
  • Edukasi pengguna tentang keamanan blockchain dan cara menghindari penipuan.

Sumber Daya:

Catatan:

  • Daftar ini tidak lengkap dan vulnerability baru dapat ditemukan setiap saat.
  • Penting untuk mengikuti perkembangan terbaru dalam keamanan blockchain dan mengambil langkah-langkah untuk melindungi kontrak Anda.

Semoga informasi ini bermanfaat!