GitHub-ன் புதிதாக வெளியிடப்பட்ட Agentic Workflows மூலம் தனிப்பட்ட (private) களஞ்சியக் கோப்புகளை (repository files) வெளியிடும் வகையில் ஏமாற்ற முடியும் என்று Noma Labs ஆராய்ச்சியாளர்கள் நிரூபித்துள்ளனர். ஒரு பொதுவான issue comment மூலம் ஒரு உள்நிலை AI உதவியாளரைத் தரவு கசிவுக்கான (data-leak) ஒரு கருவியாக மாற்ற முடியும் என்பதை இது காட்டுகிறது.

இந்தத் தவறு முக்கியமானது ஏனெனில், எந்தவொரு சிறப்பு exploit code இல்லாமலேயே இது GitHub-ன் உள்ளமைக்கப்பட்ட பாதுகாப்பு சோதனைகளைத் தவிர்க்கிறது; ஒரு தாக்குதல் நடத்துபவர், AI agent படிந்து செயல்படும் வகையில், பார்ப்பதற்குத் சாதாரணமான ஒரு issue-ஐ உருவாக்கினால் போதுமானது.

இந்த பாதிப்பு எவ்வாறு செயல்படுகிறது

Agentic Workflows ஒரு AI agent-ஐ GitHub நிகழ்வுகளுக்கு (உதாரணமாக, புதிய issues) பதிலளிக்க அனுமதிக்கிறது—workflow கோப்பில் வரையறுக்கப்பட்ட கட்டளைகளைச் செயல்படுத்துவதன் மூலம் இது நடக்கிறது. முறையான workflow வழிமுறைகளுக்கும், பயனர் சமர்ப்பித்த comment-ல் உள்ள உரைக்கும் இடையே உள்ள வேறுபாட்டை agent கண்டறிவதில்லை என்று Noma Labs கண்டறிந்துள்ளது. ஒரு மேலாளரின் கோரிக்கையைப் போலவே ஒரு பொதுவான issue-ஐப் பதிவிட்டு, அதனுடன் ஒரு மறைமுகமான உத்தரவைச் சேர்ப்பதன் மூலம், ஒரு தாக்குதல் நடத்துபவர் agent-ஐ பின்வருவனவற்றைச் செய்யத் தூண்ட முடியும்:

  1. issue-ஐத் திறக்க (இது பொதுவில் தெரியும்).
  2. சாதாரணமானதாகத் தோன்றும் ஆனால் ஒரு மறைமுகக் கட்டளையைத் தன்னுள் கொண்ட ஒரு வரியைச் சேர்க்க.
  3. workflow-க்கு வாசிக்க அனுமதி உள்ள ஒரு private repository-யிலிருந்து கோப்புகளைப் பெற AI-ஐத் தூண்ட.
  4. அந்தப் பெறப்பட்ட உள்ளடக்கத்தை அதே issue-விற்குப் பதிலாகப் பதிவிட agent-ஐச் செய்ய வைக்க.

மறைமுகக் கட்டளைக்கு முன்னால் “Additionally,” என்ற ஒற்றைச் சொல்லைச் சேர்ப்பதே GitHub-ன் பாதுகாப்பு வளையங்களைத் தாண்டிச் செல்ல போதுமானது என்று ஆராய்ச்சியாளர்கள் கண்டறிந்தனர். இதற்கு கூடுதல் அனுமதிகள் (permissions), tokens அல்லது தனிப்பயனாக்கப்பட்ட (custom) code எதுவும் தேவையில்லை—சரியான சொற்றொடர் மட்டுமே போதுமானது.

இது ஏன் ஒரு சாதாரண பிழை (bug) என்பதை விட மேலானது

இந்தப் பிரச்சனை ஒரு கட்டமைப்பு ரீதியானது (structural). ஒரு repository நிகழ்விலிருந்து தான் பெறும் எந்தவொரு உரையையும் AI agent நம்பகமானது என்று கருதுகிறது, இது பயனர் உருவாக்கும் உள்ளடக்கத்தை ஒரு web application-ல் உள்ள SQL injection போன்ற ஒரு input vector ஆக மாற்றுகிறது. ஒரு workflow, agent-க்கு private repos-களை வாசிப்பதற்கும் பொதுவில் comment செய்வதற்கும் அனுமதி அளித்தால், அந்தத் தொகுப்பு தரவுத் திருட்டிற்கான (data exfiltration) நேரடிப் பாதையை உருவாக்குகிறது.

GitHub கூறுவது என்ன

இந்தத் தவறு குறித்து GitHub-க்குத் தெரிவிக்கப்பட்டுள்ளது.

குழுக்களுக்கான தணிப்பு நடவடிக்கைகள் (Mitigation steps)

  • agent அனுமதிகளைக் கட்டுப்படுத்துங்கள்: மிகவும் அவசியமான போது மட்டுமே private repositories-களுக்கு read/write அனுமதியை வழங்கவும்.
  • பொதுவில் பதிவிடுவதைத் தடுத்தல்: agents பொதுவான issue-களில் comment அல்லது பிற artifacts-களைப் பதிவிடாதவாறு workflows-களைத் தயார் செய்யவும்.
  • அனைத்து வெளிப்புற உள்ளீடுகளையும் நம்பகமற்றதாகக் கருதுங்கள்: பயனர் உருவாக்கும் உரை AI-யைச் சென்றடைவதற்கு முன், அதைச் சுத்திகரிக்க (sanitize) அல்லது புறக்கணிக்க validation layers-களைச் சேர்க்கவும்.
  • workflow தூண்டுதல்களைத் தணிக்கை செய்யுங்கள் (Audit): எந்த நிகழ்வுகள் (issues, pull requests, போன்றவை) agents-களைத் தூண்டுகின்றன என்பதை ஆய்வு செய்து, அதனுடன் தொடர்புடைய அனுமதிகள் intended use case-க்கு ஏற்றவாறு இருப்பதை உறுதி செய்யவும்.

சுருக்கம் (Takeaway): தனிப்பட்ட குறியீடுகளை (private code) வாசிக்கவும் பொதுவில் பதிவிடவும் கூடிய ஒரு AI உதவியாளர், நீங்கள் அவருக்குச் சுற்றியுள்ள எல்லைகளைப் பொறுத்தே பாதுகாப்பானவராக இருப்பார். கடுமையான அனுமதி வரம்புகள் மற்றும் input sanitization இல்லையெனில், ஒரு பொதுவான comment ஒரு உற்பத்தித் திறனை மேம்படுத்தும் அம்சத்தை (productivity feature) தரவு கசிவுக்கான ஒரு கருவியாக மாற்றக்கூடும்.