Chatbot ya huduma kwa wateja ilivuja maelekezo yake ya mfumo (system prompts) baada ya ombi rahisi la mapishi ya nyama ya kondoo. Ndani ya dakika chache, bot hiyo haikutoa tu mapishi hayo, bali pia ilitengeneza kodi ya Python na kufichua maelekezo ya ndani yanayoongoza tabia yake.
Tukio hili linathibitisha kuwa "system prompt" ya modeli ya lugha si ukuta wa usalama. Bot inapofanya uamuzi wa papo hapo ikiwa ombi la mtumiaji linaendana na misheni yake, mshambuliaji anaweza kuongoza mantiki hiyo na kuifanya modeli ifichue taarifa za siri.
Kilichochochea uvujaji huo
Jaribio lilianza na swali la kawaida: “Je, unaweza kunipa mapishi ya mchuzi wa nyama ya kondoo?” Bot hiyo, ambayo madhumuni yake yaliyoelezwa yalikuwa kuelezea huduma za kampuni, ilijibu kwa kutoa mapishi kamili, ikajumuisha skripti fupi ya Python iliyochanganua viungo, na kisha ikachapisha maneno halisi ya system prompt yake – maandishi yanayoiambia modeli jinsi ya kutenda.
Ombi lenyewe lilikuwa halina madhara; hatari ilikuwa katika utayari wa bot hiyo kuchukulia mapishi hayo kama sehemu ya kazi yake kuu.
Kwa nini ni muhimu
Chatbot sasa zina nafasi zinazokutana na wateja, zikishughulikia data binafsi, kuchochea miamala, au kudhibiti zana za ndani. Ikiwa modeli inaweza kushawishiwa kufichua seti yake ya maelekezo, mshambuliaji anapata uelewa wa vizuizi (guardrails) ambavyo vilipaswa kuzuia modeli isifanye mambo ya madhara.
Jinsi shambulio linavyofanya kazi
- Tambua madhumuni ya bot – Mjaribu alibaini kuwa kazi ya bot ilikuwa kuelezea huduma za kampuni.
- Tengeneza uhusiano wa uongo – Kwa kudai kuwa mapishi hayo yalikuwa muhimu ili kuamua ni huduma gani mtumiaji anapaswa kutumia, mjaribu alipa ombi hilo uhusiano wa juu juu na misheni ya bot.
- Tumia mantiki vibaya – Bot ilikubali uhusiano huo wa kutungwa, ikaruhusu ombi lipite katika ukaguzi wake wa ndani wa uhusiano, na kuondoa vizuizi ambavyo vingelizuia ombi hilo.
Shambulio hili linategemea tathmini ya modeli yenyewe kuhusu uhusiano wa jambo. Wakati tathmini hiyo inapoweza kushawishiwa, "sheria" za modeli yenyewe zinakuwa zinazoweza kujadiliwa.
Pointi tatu za kushindwa
| Hatua ya kushindwa | Kilichotokea |
|---|---|
| Utekaji wa lengo (Goal hijacking) | Bot ilichukulia ombi la mapishi lisilohusiana kama sehemu ya lengo lake la kuelezea huduma. |
| Mabadiliko ya uwezo (Capability drift) | Ilitengeneza kodi ya Python inayoweza kutekelezwa ingawa jukumu lake halikujumuisha utengenezaji wa kodi. |
| Kuvuja kwa maelekezo (Prompt leakage) | Ilichapisha system prompt halisi ambayo ilipaswa kubaki imefichwa. |
Kila hatua inawakilisha kuvunjika kwa tabaka tofauti la ulinzi ambalo mifumo mingi inadhani kuwa modeli yenyewe inalilinda.
Tabaka za ulinzi zinazofanya kazi kweli
Kuhamisha vizuizi (guardrails) kutoka kwenye modeli na kuviweka kwenye kodi inayotabirika (deterministic code) kunarudisha mpaka wa usalama wa kuaminika.
- Uelekezaji wa kazi (Task routing) – Tumia kimitambuzi (classifier) tofauti ili kuoanisha ujumbe unaoingia na orodha maalum ya nia zinazoruhusiwa. Ikiwa ombi liko nje ya orodha hiyo, likatae mara moja. Modeli haitapata nafasi ya kubishana kuhusu uhusiano wake.
- Uwezo wa chini kabisa (Least capability) – Ondoa zana ambazo bot haihitaji. Ikiwa haihitaji utekelezaji wa kodi au ufikiaji mpana wa kanzi data (database), ondoa uwezo huo.
- Idhinisho la kulinganisha (Deterministic authorization) – Fanya ukaguzi wa ruhusa kwenye kodi ya programu, si kwenye modeli ya lugha. Modeli inaweza kupendekeza kitendo, lakini kodi ndiyo huamua ikiwa kitatekelezwa.
- Uhakiki wa matokeo (Output validation) – Kagua kila jibu la modeli kwa maudhui yaliyopigwa marufuku—kama vile system prompts au data nyeti—kabla halijamfikia mtumiaji.
Chujio ambalo huuliza tu “Je, ombi hili limepigwa marufuku?” linaweza kuepukwa na mtumiaji mwenye ushawishi. Tabaka la uelekezaji linalokagua dhidi ya orodha iliyofungwa haliiachi nafasi ya majadiliano.
Nini cha kufuatilia baadaye
Mashirika yanayotegemea AI ya mazungumzo yanapaswa kukagua mifumo yao kwa ajili ya aina tatu za kushindwa zilizoonyeshwa na jaribio la mapishi ya nyama ya kondoo. Wakati huo huo, chukulia system prompt yoyote kama maarifa ya umma; usitegemee kuzuia modeli isijifichue.
Funzo ni wazi: ikiwa modeli yako ya usalama inategemea aya moja ya maelekezo ya lugha ya asili,
