Selasa, 23 September 2025 | 2 min read | Andhika R
Celah Fatal CoreDNS Ditemukan, Berpotensi Picu Serangan 'Cache Pinning' Skala Besar
Sebuah kerentanan signifikan telah ditemukan pada CoreDNS, perangkat lunak server DNS yang banyak digunakan di lingkungan Kubernetes. Celah ini berpotensi dimanfaatkan peretas untuk melancarkan serangan "cache pinning" yang dapat menyebabkan gangguan layanan berkepanjangan.
Kerentanan ini, yang terletak pada plugin etcd milik CoreDNS, berasal dari kesalahan logika fatal. Alih-alih menggunakan nilai Time-To-Live (TTL) yang benar, plugin tersebut salah menafsirkan ID lease (masa sewa) dari etcd sebagai nilai TTL untuk rekor DNS.
Celah ini berakar pada file plugin/etcd/etcd.go, di mana fungsi TTL() secara tidak sengaja mengubah ID lease 64-bit menjadi bilangan bulat 32-bit. Hasilnya, ID yang seharusnya hanya berfungsi sebagai pengenal unik malah digunakan sebagai nilai TTL.
ID lease adalah pengenal acak dan tidak ada hubungannya dengan durasi lease itu sendiri. Ketika ID yang besar dihasilkan, nilai yang terpotong ini dapat berubah menjadi TTL yang sangat lama, bahkan bisa mencapai puluhan tahun.
Ini memungkinkan serangan cache pinning. Ketika resolver DNS atau klien menerima rekor dengan TTL yang tidak normal, mereka akan menyimpannya dalam cache untuk durasi yang sangat lama. Akibatnya, rekor DNS yang usang atau berbahaya akan terus digunakan, dan pembaruan apa pun tidak akan sampai ke klien yang terdampak.
Baca Juga: Microsoft Rilis Pembaruan September 2025, Perbaiki 4 Kerentanan Windows Defender Firewall
Seorang peretas dengan akses tulis ke penyimpanan data etcd—misalnya melalui akun layanan yang diretas atau lingkungan yang salah konfigurasi—dapat mengeksploitasi kelemahan ini. Peretas hanya perlu membuat atau memperbarui rekor DNS dan melampirkan sebuah lease. CoreDNS kemudian akan menyajikan rekor tersebut dengan nilai TTL yang sangat besar.
Dampaknya sangat serius. Meskipun entri DNS berbahaya tersebut diperbaiki di etcd atau CoreDNS dihidupkan ulang, klien yang terpengaruh akan terus menggunakan alamat yang salah sampai cache lokal mereka kedaluwarsa, yang bisa memakan waktu sangat lama.
Hal ini dapat menyebabkan kegagalan dalam pembaruan layanan, rotasi alamat IP, atau prosedur failover yang kritis, mengakibatkan ketersediaan layanan (high availability) yang sangat terganggu.
Kerentanan ini pertama kali muncul pada CoreDNS versi 1.2.0 dan memengaruhi semua versi setelahnya yang menggunakan plugin etcd.
Solusi yang direkomendasikan adalah memperbarui fungsi TTL() agar dapat menggunakan API Lease etcd yang benar untuk menentukan sisa waktu pada lease, bukan menyalahgunakan ID lease sebagai nilai TTL. Selain itu, disarankan untuk mengimplementasikan batas minimum dan maksimum TTL yang dapat dikonfigurasi untuk mencegah nilai ekstrem.
Pengguna plugin CoreDNS etcd sangat dianjurkan untuk segera memperbarui versi mereka untuk mencegah potensi gangguan layanan.

Andhika RDigital Marketing at Fourtrezz
Artikel Terpopuler
Tags: Literasi Digital, Keamanan Siber, Komunitas Siber, Forum keamanan, Edukasi Digital
Baca SelengkapnyaBerita Teratas
Berlangganan Newsletter FOURTREZZ
Jadilah yang pertama tahu mengenai artikel baru, produk, event, dan promosi.