Összefoglaló
Gyártó által készített frissítés teszi sérülékennyé a D-Link DSP-W110 eszközét.
Leírás
A v1.05b01 verziószámú firmware-ben átírt lighttpd függvény hibái SQL befecskendezésre, tetszőleges kódfuttatásra, tetszőleges fájlok feltöltésére, rendszerinformációk kinyerésére adnak lehetőséget a helyi hálózaton lévó felhasználók számára.
Tetszőleges kódfuttatás, SQL befecskendezés:
A hibát a kliens által küldött adatok nem megfelelő kezelése okozza.
Mivel a lighttpd hitelesítés nélkül ad hozzáférést a végpontokhoz, egy rosszindulatú felhasználó root jogosultsággal futtathat tetszőleges parancsokat egyszerű HTTP hívásokkal.
A probléma forrása, hogy a HTTP Cookie-t az sprintf() függvény kapja meg és formáz belőle SQL lekérést, kliensfolyamatok hitelesítésére. Helyesen formázott HTTP Cookie-val tetszőleges SQL kód futtatható a belső SQLite adatbázison.
A problémának itt nincs vége, mivel ezt az SQL kódot a popen() függvény kapja meg, hogy végezze el a lekérdezést. A popen() minden parancsot végrehajt ellenőrzés nélkül, így tehát tetszőleges kód futtatható az eszközön.
Tetszőleges fájlfeltöltés:
A feltöltésnél használt erőforrások ellenőrzését az sprintf() függvény hajtja végre, ami statikusan hozzáadja a dev argumentumhoz a /www értéket. Ha a HTTP kérést dev argumentum nélkül hajtunk végre, akkor az sprintf() nem kerül meghívásra, és egy teljes fájlelérési útvonal adható meg a path paraméterben (ezzel kikerülve a feltöltés korlátozásait).
Rendszerinformációk lekérése:
Hitelesítés nélkül futtatott lekérdezések eredménye lehetnek a következő adatok:
- WLAN SSID-k
- WLAN csatornák
- LAN és WAN MAC címek
- firmware információk
- hardware információk
Megoldás
IsmeretlenTámadás típusa
Authentication Issues (Hitelesítés)Information disclosure (Információ/adat szivárgás)
Input Validation
Input manipulation (Bemenet módosítás)
Manipulation of data
SQL Injection
execute arbitrary code
Hatás
Loss of confidentiality (Bizalmasság elvesztése)Loss of integrity (Sértetlenség elvesztése)
Szükséges hozzáférés
Local/Shell (Helyi/shell)Hivatkozások
Egyéb referencia: github.com