Wasaidizi wa kodi wa AI wanatoa majina ya vifurushi ambayo hayapo, na washambuliaji wanageuza udanganyifu huo kuwa hatari halisi za mnyororo wa ugavi.
Wakati mtafiti wa usalama Bar Lanyado kutoka Lasso Security alipouliza chombo cha kodi kinachoendeshwa na AI kuhusu mteja wa Python, modeli ilipendekeza kusakinisha huggingface-cli. Kifurushi hicho ni kivuli tu; maktaba halisi inapatikana chini ya jina huggingface_hub. Ili kuthibitisha hatari hiyo, Lanyado alijisajili kwa jina hilo la uongo kwenye Python Package Index (PyPI) kama sehemu tupu (placeholder). Ndani ya miezi mitatu, sehemu hiyo ilipata zaidi ya pakuzi 30,000, ilionekana kwenye hati za umma na hata ilitokea kwenye sampuli za kodi zilizokusanywa kutoka kwenye ghala (repositories) za Alibaba.
Jinsi kifurushi cha kivuli kinavyokuwa tishio halisi
- Prompt → hallucination – Msanidi programu anamuomba AI msaada. Modeli, iliyofundishwa kwa data za mtandaoni zenye kelele, inabuni jina la kifurushi linalosikika kama la kweli.
- Copy-paste → documentation – Pendekezo hilo linaingia kwenye README, jibu la Stack Overflow, au wiki ya ndani. Ikishandikwa, jina hilo huenea katika jamii.
- Code integration – Msanidi programu, akiamini AI, anaongeza jina hilo kwenye faili la mahitaji (requirements file) na kulipeleka kwenye uzalishaji (production).
Kwa nini ulinzi uliopo unakosa tatizo hili
Zana za uchambuzi wa tuli (static analysis tools) na skana za udhaifu hutafuta CVE zinazojulikana na maktaba zenye historia ya toleo. Kifurushi kilichochapishwa hivi karibuni chenye pakuzi sifuri kabla ya pendekezo la AI hakina CVE, hakina sifa, na hivyo kinaonekana kuwa safi. Ukaguzi wa kawaida wa "je, toleo hili lina udhaifu?" unatoa jibu la hapana, na kuwapa wasanidi programu hisia ya uongo ya usalama.
Kile jaribio linachothibitisha
- Majina yaliyobuniwa na AI hufikia uzalishaji – Zaidi ya pakuzi 30,000 zinaonyesha kuwa wasanidi programu wanaipakua kweli vifurushi hivi vya kivuli.
- Udanganyifu unakuwa hati (documentation) – Mara tu jina la uongo linapotokea kwenye mwongozo wa umma, linaweza kudumu kwa muda usio na kikomo, likisambaza kosa hilo.
- Usajili ni rahisi sana – Kuchapisha kifurushi kwenye PyPI hakugharimu kitu na huchukua dakika chache, jambo linalorahisisha matumizi mabaya ya mnyororo wa ugavi.
Hatua za ulinzi zinazofanya kazi kweli
- Thibitisha kila utegemezi (dependency) – Kabla ya kuongeza hitaji jipya, tafuta kwenye kielelezo cha kifurushi (package index) na uhakikishe jina linafanana na maktaba iliyopo na iliyoelezwa.
- Linganisha na vyanzo rasmi – Linganisha jina lililopendekezwa na ghala (repository) la muuzaji au mwongozo rasmi wa usakinishaji.
- Chukulia vifurushi vipya vyenye matumizi madogo kama hatari kubwa – Weka alama kwenye utegemezi wowote ambao una pakuzi chache sana au tarehe ya toleo ya hivi karibuni kwa ajili ya ukaguzi wa mwongozo.
Nini cha kuzingatia baadaye
Funzo ni rahisi: pendekezo la AI si dhamana. Chukulia kila utegemezi mpya kama sehemu ya tatu ambayo haijathibitishwa, thibitisha asili yake, na ufuatilie mnyororo wa ugavi kabla ya kuruhusu kifurushi cha kivuli kuingia kwenye uzalishaji.
