Xiaomin omassa tietoturvasovelluksessa oli Tietoturvayhtiö Check Point Software on löytänyt vakavan haavoittuvuuden maailman neljänneksen suurimman älypuhelinvalmistaja Xiaomin omista sovelluksista. Kyse on vieläpä laitteisiin valmiiksi asennettavasta Guard Provider -työkalusta.
Guard Provider-sovellus oli Check Pointin tutkijoiden havaintojen mukaan sillä tavoin rakennettu, että samaa wifi-verkkoa käyttävä hakkeri pystyi tekemään väliintulohyökkäyksen (Manin-the-Middle) ja asentamaan laitteelle haluamansa haittaohjelman, kuten kiristysohjelman, jäljittäjän tai salasanakaapparin. Käyttäjä ei pysty poistamaan Guard Provideria puhelimestaan.
Check Point ilmoitti löydöksestään Xiaomille, joka on julkaissut ohjelmistopäivityksen, jossa virhe korjataan. Ongelma liittyi puhelinsovelluskehittäjien käyttämiin työkalupaketteihin (SDK, Software Development Kit) ja niiden koodikirjastoihin. Kun eri lähteistä napattuja paloja yhdistellään, voi syntyä tietoturvariskejä. Check Pointin tutkijoiden mukaan ei riitä, että kukin käytetty koodipala on riskitön. Yhdistettynä ne voivat silti muodostaa riskin.
Guard Provider käyttää useita kolmansien osapuolten SDK-kehityspaketteja osana turvapalveluaan. Näihin kuuluu erilaisia laitteen suojaukseen, puhdistukseen ja toiminnan nopeuttamiseen liittyviä toimintoja.
Käyttäjä voi valita sovelluksesta kolmen eri virustutkan välillä: Avast, AVL and Tencent. Valintaa tehdessä se asetetaan laitteen skannauksen oletustyökaluksi. Check Pointin mukaan ongelmallista on nimenomaan eri SDK-pakettien käyttäminen saman sovelluksen sisällä. Ongelma yhdessä SDK:ssa voi vaarantaa suojauksen kaikissa. Yhden SDK:n tallennusdataa ei voida eristää, joten siihen on pääsy muistakin SDK-paketeista eli tässä tapauksessa toisista tutkatyökaluista.
Lyhyesti sanottuna Guard Provider -sovelluksen haavoittuvuus sallii haittakoodin lataamisen laitteeseen osana SDK-päivitystä. Esimerkiksi Avast-virustietokannan päivitys haetaan suojaamattomasta HTTP-osoitteesta. Hyökkääjän on mahdollista havaita Avast-päivityksen ajoitus ja ennustaa, mikä seuraavan päivityspaketin nimi on. Haittakoodin syöttäjä voi tämän jäkeen blokata dataliikenteen Avastin palvelimelta. Tällöin käyttäjä vaihtaa toiseen virustutkaan, jonka virustietokanta pitää välittömästi päivittää. Tämä tapahtuu niin, että sovellus pyytää uutta konfigurointitiedostoa, jonka tieto on näkyvissä pelkkänä tekstinä osoitteineen, kokoineen ja hash-allekirjoituksineen.
Hyökkääjä voi manipuloida tämän konfigurointitiedoston tietoja, koska kyse on salaamattomasta yhteydestä. Tiedostoon voidaan syöttää uusi URL-linkki, joka johtaa haittakoodin lataukseen.
Check Point on raportoinut haavoittuvuudesta Xiaomille, joka on korjannut ongelman ja ryhtynyt jakamaan päivitystä laitteisiinsa.