AI കോഡ് അസിസ്റ്റന്റുകൾ നിലവിലില്ലാത്ത പാക്കേജ് പേരുകൾ നിർദ്ദേശിക്കുന്നുണ്ട്, അക്രമികൾ ഈ 'ഹാലൂസിനേഷനുകളെ' (hallucinations) യഥാർത്ഥ സപ്ലൈ-ചെയിൻ റിസ്കുകളാക്കി മാറ്റുന്നു.

Lasso Security-യിലെ സെക്യൂരിറ്റി റിസർച്ചർ Bar Lanyado ഒരു AI കോഡിംഗ് ടൂളിനോട് ഒരു Python ക്ലയന്റിനെക്കുറിച്ച് ചോദിച്ചപ്പോൾ, huggingface-cli ഇൻസ്റ്റാൾ ചെയ്യാൻ ആ മോഡൽ നിർദ്ദേശിച്ചു. എന്നാൽ ഈ പാക്കേജ് ഒരു മിഥ്യയാണ്; യഥാർത്ഥ ലൈബ്രറി huggingface_hub എന്ന പേരിലാണ് അറിയപ്പെടുന്നത്. ഈ അപകടം തെളിയിക്കുന്നതിനായി, Lanyado ആ വ്യാജ പേര് Python Package Index (PyPI)-യിൽ ഒരു ശൂന്യമായ പ്ലേസ്‌ഹോൾഡറായി രജിസ്റ്റർ ചെയ്തു. മൂന്ന് മാസത്തിനുള്ളിൽ ഈ പ്ലേസ്‌ഹോൾഡറിന് 30,000-ലധികം ഡൗൺലോഡുകൾ ലഭിച്ചു, ഇത് പൊതുവായ ഡോക്യുമെന്റേഷനുകളിലും Alibaba-യുടെ റെപ്പോസിറ്ററികളിൽ നിന്ന് ശേഖരിച്ച കോഡ് സാമ്പിളുകളിലും പ്രത്യക്ഷപ്പെട്ടു.

ഒരു മിഥ്യാ പാക്കേജ് എങ്ങനെ യഥാർത്ഥ ഭീഷണിയായി മാറുന്നു

  1. Prompt → hallucination – ഒരു ഡെവലപ്പർ സഹായത്തിനായി AI-യോട് ചോദിക്കുന്നു. ഇന്റർനെറ്റിലെ അത്ര കൃത്യമല്ലാത്ത വിവരങ്ങൾ ഉപയോഗിച്ച് പരിശീലിപ്പിക്കപ്പെട്ട മോഡൽ, കേൾക്കാൻ വിശ്വസനീയമെന്ന് തോന്നുന്ന ഒരു പാക്കേജ് പേര് നിർമ്മിച്ചെടുക്കുന്നു.
  2. Copy-paste → documentation – ഈ നിർദ്ദേശം ഒരു README ഫയലിലോ, Stack Overflow ഉത്തരത്തിലോ, അല്ലെങ്കിൽ ഒരു ഇന്റേണൽ വിക്കിയിലോ വരുന്നു. ഒരിക്കൽ എഴുതപ്പെട്ടാൽ, ആ പേര് കമ്മ്യൂണിറ്റിയിലുടനീളം പടരുന്നു.
  3. Code integration – AI-യെ വിശ്വസിച്ച് ഡെവലപ്പർ ആ പേര് ഒരു requirements ഫയലിൽ ചേർക്കുകയും അത് പ്രൊഡക്ഷനിലേക്ക് എത്തിക്കുകയും ചെയ്യുന്നു.

നിലവിലുള്ള പ്രതിരോധ സംവിധാനങ്ങൾ എന്തുകൊണ്ട് ഈ പ്രശ്നം തിരിച്ചറിയുന്നില്ല

സ്റ്റാറ്റിക് അനാലിസിസ് ടൂളുകളും വൾനറബിലിറ്റി സ്കാനറുകളും അറിയപ്പെടുന്ന CVE-കൾക്കും റിലീസ് ഹിസ്റ്ററിയുള്ള ലൈബ്രറികൾക്കുമാണ് തിരയുന്നത്. AI നിർദ്ദേശത്തിന് മുമ്പ് ഡൗൺലോഡുകൾ ഇല്ലാത്ത, പുതുതായി പ്രസിദ്ധീകരിച്ച ഒരു പാക്കേജിന് CVE-യോ പ്രശസ്തിയോ ഇല്ല, അതിനാൽ അത് സുരക്ഷിതമായി കാണപ്പെടുന്നു. "ഈ വേർഷൻ അപകടകാരിയാണോ?" എന്ന സാധാരണ പരിശോധന തെറ്റായ ഫലം (false) നൽകുന്നു, ഇത് ഡെവലപ്പർമാർക്ക് തെറ്റായ സുരക്ഷിതബോധം നൽകുന്നു.

ഈ പരീക്ഷണം എന്ത് തെളിയിക്കുന്നു

  • AI നിർമ്മിച്ച പേരുകൾ പ്രൊഡക്ഷനിൽ എത്തുന്നു – 30,000-ലധികം ഡൗൺലോഡുകൾ കാണിക്കുന്നത് ഡെവലപ്പർമാർ യഥാർത്ഥത്തിൽ ഈ മിഥ്യാ പാക്കേജുകൾ ഉപയോഗിക്കുന്നു എന്നാണ്.
  • ഹാലൂസിനേഷനുകൾ ഡോക്യുമെന്റേഷനായി മാറുന്നു – ഒരു വ്യാജ പേര് പൊതുവായ ഒരു ഗൈഡിൽ പ്രത്യക്ഷപ്പെട്ടാൽ, അത് ദീർഘകാലം നിലനിൽക്കുകയും തെറ്റ് പടർത്തുകയും ചെയ്യും.
  • രജിസ്ട്രേഷൻ വളരെ എളുപ്പമാണ് – PyPI-യിൽ ഒരു പാക്കേജ് പ്രസിദ്ധീകരിക്കുന്നത് സൗജന്യമാണ് കൂടാതെ മിനിറ്റുകൾക്കുള്ളിൽ ചെയ്യാവുന്നതുമാണ്, ഇത് സപ്ലൈ-ചെയിൻ ദുരുപയോഗത്തിനുള്ള സാധ്യത വർദ്ധിപ്പിക്കുന്നു.

ഫലപ്രദമായ പ്രതിരോധ നടപടികൾ

  • ഓരോ ഡിപ്പൻഡൻസിയും പരിശോധിക്കുക (Validate every dependency) – ഒരു പുതിയ റിക്വയർമെന്റ് ചേർക്കുന്നതിന് മുമ്പ്, പാക്കേജ് ഇൻഡക്സിൽ തിരയുകയും ആ പേര് നിലവിലുള്ള, ഡോക്യുമെന്റേഷൻ ഉള്ള ഒരു ലൈബ്രറിയുമായി പൊരുത്തപ്പെടുന്നുണ്ടെന്ന് ഉറപ്പാക്കുകയും ചെയ്യുക.
  • ഔദ്യോഗിക സ്രോതസ്സുകളുമായി ഒത്തുനോക്കുക (Cross-check with official sources) – നിർദ്ദേശിക്കപ്പെട്ട പേര് വെണ്ടറുടെ റെപ്പോസിറ്ററിയുമായോ ഔദ്യോഗിക ഇൻസ്റ്റാളേഷൻ ഗൈഡുമായോ താരതമ്യം ചെയ്യുക.
  • പുതിയതും കുറഞ്ഞ ഉപയോഗമുള്ളതുമായ പാക്കേജുകളെ ഉയർന്ന റിസ്കായി കാണുക – വളരെ കുറഞ്ഞ ഡൗൺലോഡുകളോ അല്ലെങ്കിൽ വളരെ പുതിയ റിലീസ് ഡേറ്റോ ഉള്ള ഏതൊരു ഡിപ്പൻഡൻസിയും മാനുവൽ റിവ്യൂവിനായി അടയാളപ്പെടുത്തുക.

ശ്രദ്ധിക്കേണ്ട കാര്യങ്ങൾ

ഇതിലെ പാഠം ലളിതമാണ്: ഒരു AI നിർദ്ദേശം ഒരിക്കലും ഉറപ്പായ ഒന്നല്ല. ഓരോ പുതിയ ഡിപ്പൻഡൻസിയെയും പരിശോധിക്കപ്പെടാത്ത ഒരു തേർഡ് പാർട്ടി ഘടകമായി കാണുക, അതിന്റെ ഉറവിടം (provenance) പരിശോധിക്കുക, ഒരു മിഥ്യാ പാക്കേജ് പ്രൊഡക്ഷനിലേക്ക് കടക്കുന്നതിന് മുമ്പ് സപ്ലൈ ചെയിനിൽ ജാഗ്രത പാലിക്കുക.