AWS RDS Kena Bobol, Ini yang sebenarnya terjadi!

Peneliti keamanan mengatakan mereka menyita kredensial untuk layanan AWS internal dengan mengeksploitasi kerentanan pembacaan file lokal pada instance Relational Database Service (RDS) EC2.

Kredit untuk penemuan diberikan kepada Gafnit Amiga, direktur penelitian keamanan di perusahaan keamanan cloud Israel Lightspin, yang mengatakan kepada The Daily Swig bahwa penelitian itu patut diperhatikan “karena muatan terakhir adalah semua perintah SQL”. layanan, tetapi hal itu memberi tahu Amiga bahwa penyalahgunaan apa pun tidak akan membahayakan data pelanggan.

Sementara mengakui daya tarik layanan AWS, temuan tersebut menunjukkan bahwa “membungkus layanan pihak ketiga seperti PostgreSQL dan mencoba menyediakan fitur-fitur canggih kepada pengguna terkadang menjadi masalah ganda. -pedang bermata”, kata Amiga.

AWS telah menangani kerentanan secara komprehensif dan mengatakan telah tidak menemukan bukti eksploitasi yang tidak bersahabat, menurut peneliti.

Kronologi
Amiga memulai penelitian dengan memutar instans RDS menggunakan mesin Amazon Aurora PostgreSQL dan menghubungkan ke database menggunakan psql, menurut entri blog yang mendokumentasikan proses.

Dia mengatur keluar untuk mengakses mesin yang menjalankan PostgreSQL, “jadi saya mencari sesuatu yang memungkinkan saya untuk menjalankan perintah OS, mengirim permintaan jaringan atau membaca file lokal,” peneliti menjelaskan.

“Setelah mencoba semua teknik sederhana yang diketahui, saya memutuskan untuk pergi atas ekstensi.”

RDS mendukung banyak ekstensi untuk PostgreSQL, “tetapi saya merasa bahwa kemungkinan mereka akan kehilangan sesuatu di sana lebih tinggi karena tidak sesederhana itu untuk melakukan integrasi aman ke kode pihak ketiga”, lanjutnya.

Peneliti memeriksa fungsionalitas 8-10 ekstensi tersebut dan objek yang mereka buat di dalam Postgres sebelum mendarat di salah satu yang menghasilkan terobosan potensial: log_fdw.

Celah Keamanan Baru

Menggunakan ekstensi log_fdw, Amiga mencoba traversal jalur saat membuat tabel asing, tetapi ini meminta pengecualian yang mengatakan “jalur file log yang ditentukan tidak valid”.

Setelah menguji jalur relatif lain, dia mengidentifikasi sumber kesalahan sebagai validasi function.

AWS membuat pembungkus data asing kustom – yang dapat memperoleh data dari file eksternal – untuk log_fdw dengan fungsi handler dan validator.

A terobosan potensial muncul ketika diketahui bahwa fungsi validator adalah opsional untuk data asing.

Amiga berpotensi memiliki izin untuk memperbarui fungsi validator menggunakan peran rds_superuser. “Saya hanya berharap mereka memvalidasi jalur hanya dalam fungsi validasi,” katanya.

Harapan ini terpenuhi ketika peneliti menjatuhkan fungsi validator dan jalur traversal berhasil.

Dia kemudian menemukan identitas sementara dan kredensial manajemen akses (IAM) di csd -grover-credentials.json, terdiri dari publicKey dan privateKey, yang ternyata terhubung ke peran internal dengan nama csd-grover-role.

Amiga kemudian dapat menemukan dan mengakses layanan `Grover` internal yang sesuai.

Kerentanan dilaporkan ke AWS pada 9 Desember. AWS menerapkan patch awal untuk versi terbaru mesin RDS dan Aurora PostgreSQL pada 14 Desember, kemudian mengonfirmasi pada 22 Maret bahwa semua versi yang didukung saat ini telah diperbaiki dan bahwa pelanggan yang berpotensi terpengaruh telah diberikan instruksi mitigasi .

Referensi PortSwigger.com