from_string
menerima parameter yang tidak lolos, sehingga penyerang dapat menyuntikkan kode ke dalam template.
Harus melarikan diri apa pun berlalu.
https://github.com/JameelNabbo/Jinja2-Code-execution
https://www.exploit-db.com/exploits/46386
Pengguna yang membuat repo dan CVE itu tidak tahu apa yang mereka bicarakan, dan sayangnya sekarang kita harus terus menanganinya karena mereka secara tidak bertanggung jawab memberi tahu sekelompok orang tentang non-masalah dengan cara yang terdengar resmi. . Lihat https://github.com/JameelNabbo/Jinja2-Code-execution/issues/1 untuk tanggapannya. Saya telah mengirimkan permintaan ke MITRE agar CVE tidak valid.
Mengatakan Jina memiliki kerentanan karena from_string
ada seperti mengatakan setiap bahasa dinamis rentan karena eval
ada, atau setiap pustaka SQL rentan karena mereka mengevaluasi string SQL. Masalahnya bukan pada perpustakaan itu, yang semuanya menyediakan alat yang tepat untuk menangani input pengguna. Pustaka SQL tidak memiliki kerentanan injeksi, proyek yang menggunakan pustaka SQL tidak memiliki kerentanan.
SandboxedEnvironment
harus digunakan jika Anda masih ingin mengambil risiko mengompilasi template yang tidak tepercaya, dan autoescape
harus digunakan saat merender variabel yang tidak tepercaya.
Komentar yang paling membantu
Pengguna yang membuat repo dan CVE itu tidak tahu apa yang mereka bicarakan, dan sayangnya sekarang kita harus terus menanganinya karena mereka secara tidak bertanggung jawab memberi tahu sekelompok orang tentang non-masalah dengan cara yang terdengar resmi. . Lihat https://github.com/JameelNabbo/Jinja2-Code-execution/issues/1 untuk tanggapannya. Saya telah mengirimkan permintaan ke MITRE agar CVE tidak valid.
Mengatakan Jina memiliki kerentanan karena
from_string
ada seperti mengatakan setiap bahasa dinamis rentan karenaeval
ada, atau setiap pustaka SQL rentan karena mereka mengevaluasi string SQL. Masalahnya bukan pada perpustakaan itu, yang semuanya menyediakan alat yang tepat untuk menangani input pengguna. Pustaka SQL tidak memiliki kerentanan injeksi, proyek yang menggunakan pustaka SQL tidak memiliki kerentanan.SandboxedEnvironment
harus digunakan jika Anda masih ingin mengambil risiko mengompilasi template yang tidak tepercaya, danautoescape
harus digunakan saat merender variabel yang tidak tepercaya.