Kaynak kodlarını açarken dosya sızıntılarına yol açan kod düzenleyicilere yönelik bir saldırının gösterilmesi

Özel olarak tasarlanmış bir kaynak kodunu editörde açarken mevcut kullanıcının hakları dahilinde rastgele dosyaların aktarılmasına izin veren VSCode kod düzenleyicisine saldırmanın bir yöntemi gösterilmiştir. Bu demoda, prosedürel bir makro kullanan Rust kodunu açarken, 127.0.0.1:8080 ana bilgisayarına bağlantı kurar ve "~/.ssh/id_rsa" dosyasının içeriğini kullanıcının SSH anahtarlarıyla gönderir.

Uzlaşmak için, projede başka herhangi bir işlem yapmadan dosyayı kodla açmanız yeterlidir. Örneğin çalışması için VSCode, pas analiz eklentisine (standart Rustc derleyicisinin üzerinde bir bağlantı) ve Rust dilindeki kodla çalışmak için sistemde araçların bulunmasına ihtiyaç duyar. Sorun, ilk kod analizi sırasında prosedürel makroların genişletilmesiyle ilgilidir. Benzer bir etki derleme zamanında "cargo build" komutu kullanılarak da elde edilebilir.

Sorunun diğer kod editörlerini ve programlama dillerini etkileyebileceği belirtiliyor. VSCode ve pas analizi yalnızca saldırı vektörünü göstermek için kullanılır. Teorik olarak, sözdizimi uzantıları oluşturmanıza ve derleme zamanında kod yürütmenize olanak tanıyan prosedürel makroları açığa çıkaran herhangi bir kod düzenleyici, soruna karşı hassastır. Araştırmacı başlangıçta kod derleme sırasında kötü niyetli eylemlerin meydana gelme olasılığını araştırdı ancak kaynak kod, kod düzenleyicilerde işlendiğinde prosedürel makroların genişletildiğini keşfetti. Saldırı muhtemelen diğer programlama dillerini de etkileyebilir; örneğin Java'da açıklama işleme benzer şekilde değiştirilebilir.

Oynat Video


Kaynak: opennet.ru
DDoS korumalı siteler, VPS VDS sunucuları için güvenilir hosting satın alın 🔥 DDoS korumalı, güvenilir VPS ve VDS sunucu barındırma hizmeti satın alın | ProHoster