1 puan yazan GN⁺ 2024-09-22 | 1 yorum | WhatsApp'ta paylaş

MediaTek Wi‑Fi yonga setlerindeki ciddi açık: Zero-Click güvenlik açığı (CVE-2024-20017) router ve akıllı telefonları tehdit ediyor

Genel bakış
  • SonicWall Capture Labs tehdit araştırma ekibi, CVE-2024-20017 güvenlik açığını tespit etti, etkisini değerlendirdi ve azaltım önlemleri geliştirdi
  • CVE-2024-20017, CVSS 3.0 puanı 9.8 olan kritik bir zero-click güvenlik açığıdır ve MediaTek Wi‑Fi yonga seti MT7622/MT7915 ile RTxxxx SoftAP sürücü paketlerini etkiler
  • Ubiquiti, Xiaomi, Netgear gibi çeşitli üreticilerin ürünlerinde kullanılan MediaTek SDK sürüm 7.4.0.1 ve önceki sürümler ile OpenWrt 19.07 ve 21.02 etkilenmektedir
  • Bu açık, kullanıcı etkileşimi olmadan uzaktan kod çalıştırmaya izin verir ve MediaTek bunu azaltmak için yamalar yayımlamıştır
  • Açık mart ayında duyurulup yamalanmış olsa da, yakın zamanda yayımlanan PoC nedeniyle kötüye kullanılma olasılığı artmıştır
Teknik genel bakış
  • Açık, MediaTek MT7622/MT7915 SDK ve RTxxxx SoftAP sürücü paketinde yer alan ağ daemon'u wappd içinde bulunur
  • wappd, kablosuz arayüzleri ve erişim noktalarını yapılandırma ve yönetme görevini üstlenir; özellikle de Hotspot 2.0 teknolojisiyle ilişkilidir
  • wappd mimarisi; ağ hizmetinin kendisi, cihazın kablosuz arayüzleriyle etkileşen yerel hizmet kümesi ve Unix domain socket üzerinden bileşenler arası iletişim kanallarından oluşur
  • Açık, saldırganın kontrol ettiği paket verisinden doğrudan alınan bir uzunluk değerinin bellek kopyalama işleminde kullanılması sonucu oluşan bir buffer overflow nedeniyle meydana gelir
Açığın tetiklenmesi
  • Açık, IAPP_RcvHandlerSSB fonksiyonunda ortaya çıkar ve saldırganın kontrol ettiği uzunluk değeri IAPP_MEM_MOVE makrosuna aktarılır
  • Maksimum paket uzunluğu olan 1600 baytı aşmadığını doğrulamak dışında herhangi bir sınır kontrolü yapılmaz
  • Saldırgan, beklenen yapıyı saldırı yükünün önüne ekleyerek paketi göndermelidir
  • RT_IAPP_HEADER yapısının uzunluğu küçük olmalı ve RT_IAPP_HEADER.Command alanı 50 olmalıdır
İstismar
  • Yayımlanan exploit kodu, global address table overwrite tekniğiyle uzaktan kod çalıştırma elde etmek için bir ROP zinciri kullanır
  • system() çağrısından yararlanarak saldırgana reverse shell gönderen komutu çalıştırır
  • Reverse shell, Bash ve Netcat araçları kullanılarak kurulur
SonicWall koruması
  • SonicWall müşterilerinin bu açıktan kaynaklanan istismarlara karşı korunabilmesi için aşağıdaki imzalar dağıtılmıştır
    • IPS: 20322 MediaTek MT7915 wlan Service OOB Write 1
    • IPS: 20323 MediaTek MT7915 wlan Service OOB Write 2
Azaltım önerileri
  • Exploit kodu yayımlandığı için, kullanıcıların ilgili yonga setleri için en güncel firmware sürümüne yükseltme yapması önemle tavsiye edilmektedir
İlgili bağlantılar

GN⁺ özeti

  • Bu yazı, MediaTek Wi‑Fi yonga setlerindeki kritik bir zero-click güvenlik açığını ele alıyor; bu açık kullanıcı etkileşimi olmadan uzaktan kod çalıştırmaya izin veriyor
  • SonicWall araştırma ekibi bu açığı tespit edip azaltım önlemleri geliştirdi ve kullanıcılara en güncel firmware sürümüne yükseltme yapmalarını önerdi
  • Açık, çeşitli üreticilerin router ve akıllı telefonlarını etkiliyor; yakın zamanda yayımlanan PoC nedeniyle kötüye kullanılma riski yükselmiş durumda
  • Benzer işlevlere sahip ürünler arasında Qualcomm’un Wi‑Fi yonga setleri de bulunuyor; güvenlik güncellemelerini düzenli olarak kontrol etmek önem taşıyor

1 yorum

 
GN⁺ 2024-09-22
Hacker News yorumları
  • MediaTek’in tedarikçi SDK sürücü kaynak kodunu mt76 ile karşılaştırmış biri olarak bu pek şaşırtıcı değil. En iyi ihtimalle bile dağınık
    Ne yazık ki mt76’dan biraz daha fazla aktarım hızı verdiği için, tedarikçi sürücüsünü içeren bazı üçüncü taraf firmware derlemeleri de ortalıkta dolaşıyor
    Neyse ki MediaTek ve WiSoC bölümünde özgür/açık kaynak yazılım topluluğuyla aktif iletişim kuran birkaç mühendis var ve mt76 tabanlı küçük bir OpenWrt fork’unu da bizzat sürdürüyorlar: https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk...

    • Bu tür donanım/firmware neden böyle kavram kanıtlama kodu üretim ortamına dağıtılmış gibi hissettiriyor, anlamıyorum. İşini bilen birilerini işe alamıyorlar mı?
    • O programın hedefleri ya da ilgili feed’in ne kadarının üst projeye birleştirildiği gibi bir basın bülteni veya bilgi var mı merak ediyorum
  • Başlıktaki ifade biraz yanıltıcı. Evde mt76 Wi-Fi içeren birkaç router olduğu için firmware ya da silikon hatası sanıp bağlantıya tıkladım; meğer tedarikçinin SDK’sındaki ıvır zıvır kod hatasıymış, rahatladım
    Ana hat kernel ve hostapd’de mt76 desteği gayet iyi olmasına rağmen birinin bunu kullanmaya çalışmış olmasını anlamıyorum

    • “Tedarikçinin SDK’sındaki ıvır zıvır kod hatasıymış, rahatladım” demek için endişelenilmesi gereken birden fazla tedarikçi var
      “Ubiquiti, Xiaomi, Netgear vb. dahil olmak üzere çeşitli üreticilerin ürünlerinde kullanılan sürücü paketi” deniyor
      Ancak Ubiquiti gibi gerçek ürünlerde bunu kullanmadığını açıklayan tedarikçiler de var: https://community.ui.com/questions/CVE-2024-20017/b3f1a425-d...
    • OpenWRT 21.02.x serisinin ana hat kernel 5.4 tabanlı olmasına rağmen etkilendiği söyleniyor. Bu taraftakiler Linux kablosuz ağ işlerinden iyi anlar; bildiğim kadarıyla ana hat kernel’deki mt76 sürücüsünü de bir OpenWRT geliştiricisi sürdürüyor
  • Orijinal blog: https://blog.coffinsec.com/0day/2024/08/30/exploiting-CVE-20...

    • wappd servisi çoğunlukla Hotspot 2.0 ve ilgili teknolojileri kullanarak kablosuz arayüzleri ve erişim noktası davranışını yapılandırmak ve koordine etmek için kullanılıyor
      Uygulama mimarisi biraz karmaşık olsa da özünde bir ağ servisi, cihazın kablosuz arayüzleriyle etkileşen yerel servisler ve bileşenler arası iletişim için Unix domain socket kullanan bir kanaldan oluşuyor
      En azından teselli sayılabilecek nokta, bunun temel bant firmware’inin içinde bir hata olmaktan ziyade, kablosuz ağ kartının kendi çalışması için şart olmayan “katma değerli” bir servis tarafındaki bir sorun gibi görünmesi
      Bazı cihazların sürücü paketleri aklıma geliyor: asıl sürücü küçük ve sessiz, ama kullanıcıların %99’unun ihtiyaç duymadığı ve istemediği özellikler için birkaç basamak daha büyük bundleware de birlikte kuruluyor. Yazıcılar ve GPU’lar özellikle fena
  • MediaTek’in adlandırma kurallarında nasıl bir mantık var, yoksa tüm cihazlar sadece MTxxxx olup x artan değer ya da rastgele sayı mı, merak ediyorum
    mt6631 Wi-Fi çipi olan bir cihazım var; etkilenenler listesinde olmadığı için muhtemelen sorun yok diyebilirim ama ürün ailesinde nereye denk geldiğini anlamak zor

  • OpenWrt 19.07 ve 21.02’nin etkilendiği söyleniyor, ama görünüşe göre resmi OpenWrt derlemeleri Mediatek SDK’sını değil yalnızca mt76 sürücüsünü kullanıyor

  • AMD CPU’lu bir laptop alınca neden yanında hep MediaTek RZ616 Wi-Fi kartı geliyor, anlamıyorum
    Hepsini Intel Wi-Fi kartlarıyla değiştirdim ve şimdi geleceğin mikroplastiğine dönüşecek bir RZ616 kart yığınım var

    • Intel Wi-Fi kartlarını iki tür satıyor. Sonu 1 ile biten modeller CNVI protokolünü kullanıyor ve yalnızca Intel çiplerinde çalışıyor; OEM’lere çok ucuza satılıyor
      Sonu 0 ile biten modeller standart PCIe kullanıyor ve OEM’lere yaklaşık 10 dolar daha pahalıya satılıyor
      AMD de OEM’lere Intel’in xx1 çipleriyle aynı fiyat bandında satılacak bir şey oluşturmak için MediaTek MT7921 ve MT7922’yi sırasıyla RZ608 ve RZ616 olarak yeniden markaladı
    • Lenovo da MediaTek’ten memnun kalmayıp AMD platformlarında WLAN için Qualcomm çipleri lehimlemeye başladı, ama bu kez Linux’ta firmware ve sürücü etkileşim hatası yüzünden yine sıkıntı yaşadı. Lenovo’nun Linux’u resmi olarak satıp desteklemesine rağmen böyle oldu
      Qualcomm tarafında, yonga seti nesli artık en yeni olmaktan çıktığında ana hat kernel desteği epey zayıflıyor. Günümüzde Qualcomm’u harekete geçirmek için çok büyük tedarikçi baskısı gerekiyor
    • iwlwifi’nin de kendi sorunları var; en büyüğü 5GHz AP modu olmaması. Intel firmware lisansı da MediaTek’inkinden daha kısıtlayıcı ve fullmac olduğu için firmware çok daha fazla işi üstleniyor
      Şahsen softmac’i daha çok tercih ediyorum. Bugünlerde iyi seçenek pek yok; ath9k’nin altın çağı geride kaldı
    • Sadece “MediaTek’e güvenmiyorum” demekten öte, gerçekten kullanıp kullanmadığını merak ediyorum
      İş için sırayla Intel ThinkPad ve AMD ThinkPad kullandım; AMD tarafındaki MediaTek yonga setli Wi-Fi, Intel tarafındaki Intel yonga setinden çok daha iyiydi
      Intel tarafında ağ bağlantısı saatte birkaç kez kopuyor, 5GHz’de bile ssh kullanırken hemen hissedilecek kadar berbat gecikme yaşanıyordu. Şu an kullandığım MT7921 cihaz Linux’ta son 2-3 yıldır çok kararlı
      Sonuçta yonga seti ve laptop kombinasyonuna göre epey değişiyor gibi
  • Telefonumun da MediaTek yonga seti kullandığını hatırlıyorum. Ayrıca üreticinin sonradan MediaTek’ten uzaklaşma nedeninin bu ürünlerin, şey, kalitesi olduğunu belli belirsiz hatırlıyorum
    Telefonda Wi-Fi’nin nasıl yapılandırıldığını bilmiyorum. Bu telefonun etkilenip etkilenmediğini kontrol etmenin bir yolu var mı? Sınırsız hücresel verim ve iyi kapsama alanım olduğu için Wi-Fi’yi pek kullanmıyorum ama yine de bilmek iyi olur

    • termux’ta "sudo su" çalıştırıp ardından ls /sys/module komutuna bakmak yeterli
      Çıktı lsmod’a benzer görünür
  • İnsanların bulabildikleri her silikonu satın aldığı şu dönemde bile, böyle C sınıfı tedarikçilerin PC stratejisini izleyip firmware’i tamamen açarak açık kaynak topluluğuna bırakmamasını hâlâ anlayamıyorum

    • İzin verilen bantların dışına yayın yapmayı zorlaştırmak zorunda bırakan FCC düzenlemeleri genelde böyle durumlara yol açıyor
  • “Etkilenen sürümler arasında MediaTek SDK 7.4.0.1 ve altı ile OpenWrt 19.07, 21.02 bulunuyor”, “Açık, MediaTek MT7622/MT7915 SDK ve RTxxxx SoftAP sürücü paketinde yer alan ağ daemon’u wappd’de” deniyor; ama aslında OpenWRT wappd kullanmıyor gibi

    • Bir OpenWrt katkıcısı olarak insanların neden OpenWrt ile kapalı tedarikçi SDK’sını ayırt etmediğini merak ediyorum. Nobara’da bir hata olsaydı Fedora’dan bahsedilmezdi
    • Ev ağımda birkaç Netgear AP üzerinde OpenWRT çalıştırdığım için aynı şeyi merak ettim. Bu açıklamaya göre ben güvende miyim?
  • Bu yüzden özgür firmware gerekli. Broadcom ve Ralink’ten artık bıktım