# Aplikasi Sudah Aman, Tetapi Bagaimana dengan Server yang Menjalankannya? (Ada Celah pada OS Ubuntu/Linux)

**CVE-2026-98432, kerentanan kernel Linux yang menjadi pengingat bahwa keamanan aplikasi tidak berhenti pada kode program.**

Kita sering menghabiskan banyak waktu memastikan aplikasi berjalan dengan baik.

Framework diperbarui, dependency menggunakan versi terbaru, database diamankan, environment variable disimpan dengan benar, dan firewall sudah dikonfigurasi.

Namun, ada satu hal yang terkadang luput dari perhatian: **sistem operasi dan kernel yang menjalankan seluruh aplikasi tersebut.**

Pada Oktober 2026, muncul sebuah kerentanan keamanan Linux dengan identitas CVE-2026-98432. Kerentanan ini memiliki skor CVSS 3.1 sebesar 9.8 (Critical), dan berkaitan dengan proses koneksi TCP melalui IPv4 pada kernel Linux.

Yang membuat kasus ini semakin menarik, Anthropic mengungkap bahwa model AI internal mereka berhasil menyusun exploit yang dapat mengeksekusi perintah sebagai root dari jarak jauh pada server dengan MPTCP listener, tanpa autentikasi maupun interaksi pengguna.

Ini bukan sekadar persoalan bug pada aplikasi. Ini adalah persoalan pada lapisan infrastruktur yang menjadi fondasi aplikasi kita.

## 1\. Memahami masalahnya: Race Condition dan Use-After-Free

CVE-2026-98432 berkaitan dengan dua konsep penting dalam pemrograman sistem:

- **Race Condition:** kondisi ketika beberapa proses atau thread mengakses sumber daya yang sama secara bersamaan dan urutan eksekusinya memengaruhi hasil.
- **Use-After-Free (UAF):** kondisi ketika program masih menggunakan alamat memori yang sebelumnya sudah dibebaskan.

Bayangkan ada dua proses yang sedang bekerja menggunakan informasi koneksi TCP yang sama.

Proses pertama membebaskan memori, sementara proses kedua masih mencoba membaca informasi tersebut.

Akibatnya, kernel dapat mengakses memori yang sudah tidak valid.

Inilah salah satu jenis bug yang sulit ditemukan hanya dengan melihat apakah aplikasi berhasil berjalan normal.

Kasus ini juga menunjukkan mengapa pengelolaan memori, concurrency, dan sinkronisasi sangat penting dalam pengembangan software tingkat sistem.

## 2\. Mengapa developer aplikasi web perlu peduli?

Mungkin muncul pertanyaan:

"Saya hanya menggunakan Laravel, PHP, Node.js, atau Hono. Mengapa harus memikirkan kernel Linux?"

Karena aplikasi tidak berjalan di ruang kosong.

Arsitektur sederhananya:

User → Internet → Network Stack → Linux Kernel → Web Server → Runtime → Aplikasi.

Setiap lapisan memiliki tanggung jawab keamanan masing-masing.

Misalnya, aplikasi Laravel dapat memiliki autentikasi yang baik, tetapi server tempat Laravel berjalan tetap bergantung pada keamanan kernel Linux.

Begitu pula dengan aplikasi Node.js, PostgreSQL, Redis, dan Nginx.

Memperbarui framework tidak otomatis memperbaiki kerentanan pada kernel.

**Keamanan aplikasi dan keamanan infrastruktur adalah dua hal yang saling melengkapi.**

## 3\. Menggunakan Docker bukan berarti bebas dari risiko kernel host

Ini salah satu hal yang perlu dipahami developer modern.

Docker menyediakan isolasi melalui beberapa mekanisme kernel Linux, seperti namespaces dan cgroups.

Namun, container biasa tidak membawa kernel Linux sendiri.

Beberapa container dapat menggunakan kernel yang sama dari host.

Contohnya:

- Container A menjalankan Laravel.
- Container B menjalankan Node.js.
- Container C menjalankan PostgreSQL.
- Container D menjalankan Redis.

Jika kernel host memiliki kerentanan, semua container tersebut perlu diperhitungkan dalam penilaian risiko.

Artinya, memperbarui Docker image saja tidak cukup untuk memperbaiki kerentanan kernel.

Administrator tetap harus memperbarui kernel pada host dan melakukan reboot agar kernel yang telah diperbaiki benar-benar digunakan.

## 4\. Hal menarik lainnya: AI mulai mampu menyusun exploit yang kompleks

Pada 27 Oktober 2026, Anthropic mempublikasikan penelitian tentang kemampuan model AI dalam menemukan dan mengeksploitasi kerentanan software.

Salah satu kasus yang dibahas adalah CVE-2026-98432.

Menurut publikasi tersebut, model internal mereka berhasil menyusun exploit melalui dua tahapan besar:

1. Memanfaatkan kerentanan untuk memperoleh informasi alamat memori kernel dan melewati perlindungan KASLR.
2. Memanfaatkan kembali kerentanan untuk mengubah alur eksekusi kernel sehingga perintah yang dikendalikan penyerang dijalankan sebagai root.

Skenario demonstrasi tersebut membutuhkan MPTCP listener.

Ada pelajaran penting di sini.

AI bukan hanya membantu developer menghasilkan kode lebih cepat. Kemampuan AI juga dapat digunakan untuk menganalisis sistem, menemukan kelemahan, dan menyusun serangan yang sebelumnya membutuhkan keahlian khusus serta waktu yang tidak sedikit.

Karena itu, kemampuan developer dalam melakukan audit, validasi, dan memahami sistem menjadi semakin penting.

## 5\. Apa yang sebaiknya dilakukan developer?

Tidak semua developer harus menjadi ahli kernel Linux. Namun, setiap developer yang mengelola aplikasi produksi sebaiknya memahami beberapa pemeriksaan dasar.

**A. Kenali sistem operasi dan kernel**

```bash
cat /etc/os-release
uname -r
```

Jangan hanya mengetahui versi PHP, Node.js, atau framework yang digunakan. Ketahui juga sistem operasi dan kernel server produksi.

**B. Periksa port yang terbuka**

```bash
sudo ss -tulpn
```

Pastikan hanya layanan yang memang diperlukan yang dapat diakses.

**C. Periksa konfigurasi TCP terkait**

```bash
sysctl net.ipv4.tcp_migrate_req
```

Nilai 0 menunjukkan fitur migrasi koneksi tersebut tidak aktif. Namun, ini bukan solusi menyeluruh untuk CVE ini.

**D. Perbarui sistem operasi**

```bash
sudo apt update
sudo apt upgrade
```

Periksa terlebih dahulu apakah paket kernel yang telah diperbaiki sudah tersedia untuk distribusi dan varian kernel yang digunakan.

**E. Jadwalkan reboot**

Pembaruan kernel tidak otomatis membuat kernel baru aktif pada sesi yang sedang berjalan. Server perlu di-reboot setelah pembaruan terpasang.

**F. Jangan lupa memeriksa host Docker**

Jangan hanya memeriksa image dan dependency aplikasi. Pastikan sistem operasi host juga mendapatkan pembaruan keamanan.

## 6\. Developer perlu memahami keamanan secara menyeluruh

Menurut saya, ada perubahan cara berpikir yang perlu dibangun dalam pengembangan software.

Developer tidak cukup hanya bertanya:

- Apakah aplikasi berjalan?
- Apakah fitur berfungsi?
- Apakah API mengembalikan respons yang benar?
- Apakah database sudah terkoneksi?

Kita juga perlu bertanya:

- Apakah sistem operasi masih mendapatkan pembaruan keamanan?
- Apakah port yang terbuka memang diperlukan?
- Apakah dependency memiliki kerentanan yang diketahui?
- Apakah container menggunakan host yang aman?
- Apakah error dan aktivitas sistem dapat dimonitor?
- Apakah kita memiliki prosedur backup dan pemulihan jika server mengalami gangguan?

Software yang baik bukan hanya software yang berfungsi, tetapi juga software yang dapat dipelihara, dipantau, dan dipertanggungjawabkan keamanannya.

## Penutup

CVE-2026-98432 memberikan satu pengingat penting: kerentanan tidak selalu berada di bagian kode yang sedang kita kerjakan.

Bisa saja aplikasi sudah dibangun dengan framework terbaru, tetapi fondasi yang menjalankannya masih memiliki celah keamanan.

Terlebih ketika AI semakin mampu membantu menemukan dan mengeksploitasi kelemahan software, developer perlu meningkatkan kemampuan memahami sistem, bukan hanya kemampuan menghasilkan kode.

**Jangan hanya menjadi developer yang bisa membangun aplikasi. Jadilah developer yang memahami bagaimana aplikasi bekerja, apa yang menjadi ketergantungannya, dan bagaimana menjaga sistem tersebut tetap aman.**

---

Referensi:

- Ubuntu Security: <https://ubuntu.com/security/CVE-2026-98432>
- Linux Kernel CVE Announcement: <https://lists.openwall.net/linux-cve-announce/2026/10/15/1>
- Anthropic – Discovering and exploiting vulnerabilities in critical, real-world software with Claude: <https://www.anthropic.com/research/discovering-vulnerabilities-with-claude>
