தலைப்பு: ஒரு AI கோடிங் அசிஸ்டண்ட் செஷன் சப்ளை செயின் தாக்குதலாக மாறியது
Mandiant-ன் சமீபத்திய வழக்கு ஆய்வு, கடத்தப்பட்ட (hijacked) ஒரு AI கோடிங்-அசிஸ்டண்ட் செஷன் மூலம், ஒரு மென்பொருள் நிறுவனத்தின் கோட்பேஸிற்குள் ஒரு நச்சுத்தன்மை வாய்ந்த பேக்கேஜை (poisoned package) ஒரு தாக்குதலாளி செலுத்த позволиத்ததைக் காட்டுகிறது. இது 100 உள்முறை களஞ்சியங்களை (internal repositories) பாதித்ததுடன், GitHub OAuth டோக்கன்களைத் திருடியது மற்றும் மூலக் குறியீடு (source code) மற்றும் ரகசியத் தகவல்களை (secrets) வெளியேற்றியது. இந்த ஊடுருவல், AI மூலம் உருவாக்கப்படும் பரிந்துரைகளை டெவலப்பர்கள் பாதுகாப்பான குறியீடாகக் கருத முடியாது என்பதை நிரூபிக்கிறது.
என்ன நடந்தது
ஒரு நேரடி மேம்பாட்டுச் செஷனின் (live development session) போது, ஒரு தாக்குதலாளி குழுவின் எடிட்டரில் இணைக்கப்பட்டிருந்த AI அசிஸ்டண்டின் கட்டுப்பாட்டைப் பிடித்தார். பாதிக்கப்பட்ட அசிஸ்டண்ட் பின்னர் ஒரு தீங்கிழைக்கும் பேக்கேஜை (malicious package) பரிந்துரைத்தது. அந்த கருவியின் மீது நம்பிக்கை வைத்த டெவலப்பர், கூடுதல் சோதனைகள் ஏதுமின்றி அந்தப் பரிந்துரையை ஏற்றுக்கொண்டார்.
அந்த நச்சுத்தன்மை வாய்ந்த பேக்கேஜ், பணிநிலையத்தில் (workstation) சேமிக்கப்பட்டிருந்த GitHub OAuth டோக்கன்களைச் சேகரிக்கும் ஒரு infostealer-ஐப் பதிவிறக்கியது. அந்த டோக்கன்களைப் பயன்படுத்தி, தாக்குதலாளி “Shai-Hulud” வார்மை (worm) பரப்பினார், இது 100 உள்முறை களஞ்சியங்களில் தன்னைத் தானே நகலெடுத்தது. அந்தத் தீங்கிழைக்கும் குறியீடு நிறுவனத்தின் சொந்த நேம்ஸ்பேஸைக் (namespace) கொண்டிருந்ததால், பின்னர் அதே பேக்கேஜ்களைப் பதிவிறக்கிய மற்ற டெவலப்பர்களும் பாதிக்கப்பட்டனர்.
இது ஏன் முக்கியமானது
AI கோடிங் அசிஸ்டண்டுகளால் புராஜெக்ட் கோப்புகளைப் படிக்கவும், இன்ஸ்டால் கட்டளைகளை (install commands) உருவாக்கவும், டிபென்டென்சி மேனிஃபெஸ்ட்களை (dependency manifests) திருத்தவும் மற்றும் டெர்மினல் கட்டளைகளைக் கூட இயக்கவும் முடியும். இந்த விரிவான அணுகல் வசதி, அவற்றை சப்ளை-செயின் தாக்குதல்களுக்கான (supply-chain attacks) கவர்ச்சிகரமான இலக்குகளாக மாற்றுகிறது. ஒரு டெவலப்பர் ஒரு அந்நியரின் ஆலோசனையை விட AI பரிந்துரையை அதிகம் நம்பும்போது, தாக்குதலாளியின் வேலை எளிதாகிறது: அசிஸ்டண்ட் உண்மையானது போலத் தோற்றமளிக்கும் தீங்கிழைக்கும் குறியீட்டை அமைதியாகச் செருக முடியும்.
சப்ளை-செயின் தாக்குதல்கள், ஒரு நிறுவனத்தின் கோட்பேஸ் (codebase) வழியாகத் தாக்குதலாளி பக்கவாட்டுத் தாக்குதல்களை (move laterally) நடத்தவும், சான்றுகளைத் (credentials) திருடவும் மற்றும் உரிமம் பெற்ற சொத்துக்களை (proprietary assets) வெளியேற்றவும் அனுமதிக்கின்றன—பாதிப்பு ஏற்படும் வரை பாதிக்கப்பட்டவர் இதைக் கவனிக்கவே மாட்டார்.
தாக்குதல் எவ்வாறு நடந்தது
- செஷன் ஹைஜாக் (Session hijack) – தாக்குதலாளி நடந்து கொண்டிருந்த AI-அசிஸ்டண்ட் செஷனைத் தன்வசப்படுத்தினார்.
- நச்சுத்தன்மை வாய்ந்த பரிந்துரை (Poisoned recommendation) – பாதிக்கப்பட்ட அசிஸ்டண்ட் ஒரு தீங்கிழைக்கும் பேக்கேஜைப் பரிந்துரைக்கத் தூண்டப்பட்டது.
- டெவலப்பர் ஏற்றுக்கொண்டல் (Developer acceptance) – AI-ன் பரிந்துரையை நம்பி, டெவலப்பர் அந்தப் பேக்கேஜைச் சேர்த்து, உருவாக்கப்பட்ட இன்ஸ்டால் கட்டளையை இயக்கினார்.
- பேலோட் இயக்கம் (Payload execution) – அந்தப் பேக்கேஜ் உள்ளூர் GitHub OAuth டோக்கன்கள் மற்றும் பிற ரகசியங்களை வாசிக்கும் ஒரு infostealer-ஐ நிறுவியது.
- வார்ம் பரவல் (Worm propagation) – திருடப்பட்ட டோக்கன்களைப் பயன்படுத்தி, தாக்குதலாளி Shai-Hulud வார்மைப் பரப்பினார், இது 100 உள்முறை களஞ்சியங்களுக்குப் பரவியது.
- தரவு வெளியேற்றம் (Exfiltration) – மூலக் குறியீடு, உள்முறை லைப்ரரிகள் மற்றும் ரகசியக் சாவிகள் (secret keys) தாக்குதலாளியின் உள்கட்டமைப்பிற்கு (infrastructure) மாற்றப்பட்டன.
டெவலப்பர்கள் இப்போது என்ன செய்யலாம்
ஒவ்வொரு AI பரிந்துரையையும் நம்பகமற்ற குறியீடாகக் கருதவும். எந்தவொரு மூன்றாம் தரப்பு டிபென்டெசிக்கும் (third-party dependency) நீங்கள் பயன்படுத்தும் அதே சரிபார்ப்புப் படிகளைப் பின்பற்றவும்.
பேக்கேஜைச் சரிபார்க்கவும் (Validate the package)
- அதிகாரப்பூர்வ ஆவணங்கள் மற்றும் பதிப்பு வரலாற்றைச் (version history) சரிபார்க்கவும்.
- வெளியீட்டாளரின் அடையாளம் மற்றும் நற்பெயரை உறுதிப்படுத்தவும்.
- மூலக் களஞ்சியம் (source repository) மற்றும் சமீபத்திய கமிட்களை (commits) ஆய்வு செய்யவும்.
- எதிர்பாராத இணைப்புகளுக்காக முழு டிபென்டென்சி மரத்தையும் (dependency tree) பரிசோதிக்கவும்.
- மறைக்கப்பட்ட கட்டளைகளுக்காக எந்தவொரு இன்ஸ்டால் ஸ்கிரிப்டுகளையும் கூர்ந்து கவனிக்கவும்.
சான்றுகளைக் கையாளுதலை வலுப்படுத்தவும் (Harden credential handling)
- ஒவ்வொரு டோக்கனுக்கும் மிகக் குறைந்த அளவிலான அனுமதிகளை மட்டுமே வழங்கவும்.
- நீண்ட காலம் செயல்படும் டோக்கன்களை விட குறுகிய கால டோக்கன்களைப் பயன்படுத்தவும்.
- புரொடக்ஷன் ரகசியங்களை (production secrets) உள்ளூர் மேம்பாட்டு இயந்திரங்களில் வைக்க வேண்டாம்.
- எடிட்டர் எக்ஸ்டென்ஷன்கள் (editor extensions) அவற்றுக்குத் தேவையில்லாத சான்றுகளை அணுகுவதைத் தடுக்கவும்.
சந்தேகிக்கப்படும் ஊடுருவலுக்குப் பதிலளிக்கவும் (Respond to a suspected breach)
- பாதிக்கப்பட்ட சூழலை (environment) உடனடியாகத் தனிமைப்படுத்தவும்;
node_modulesஅல்லது அது போன்ற கோப்பகங்களை (directories) நீக்குவது மட்டும் போதாது. - அனைத்து GitHub, npm, PyPI மற்றும் கிளவுட் சான்றுகளையும் மாற்றவும் (Rotate).
- எதிர்பாராத கமிட்கள் அல்லது புல்-ரிக்க्वेस्ट மெர்ஜ்களைக் (pull-request merges) கண்டறிய களஞ்சியச் செயல்பாடுகளைத் தணிக்கை செய்யவும்.
- அசாதாரணமான நடத்தைகளுக்காக CI/CD லாக்ஸ் மற்றும் Git-hook ஸ்கிரிப்டுகளை ஆய்வு செய்யவும்.
- பாதிக்கப்பட்ட சூழலை (environment) உடனடியாகத் தனிமைப்படுத்தவும்;
எதிர்காலத்தைப் பார்க்கையில்
AI அசிஸ்டண்டுகள் பல டெவலப்பர்களுக்கு உற்பத்தித் திறனை அதிகரிக்கும் கருவியாகவே இருக்கும், ஆனால் அவற்றின் ஆற்றல் ஒரு நம்பிக்கைக் கட்டணத்துடன் (trust cost) வருகிறது. எந்தவொரு வெளிப்புற லைப்ரரியையும் போலவே, நிறுவனங்களும் AI மூலம் உருவாக்கப்பட்ட குறியீட்டை ஏற்கனவே உள்ள பாதுகாப்பு ஆய்வுப் பாதைகளில் (security review pipelines) இணைக்க வேண்டும். தானியங்கி கொள்கை சோதனைகள் (Automated policy checks), கையொப்பமிடப்பட்ட AI-அசிஸ்டண்ட் வெளியீடுகள் மற்றும் ரன்டைம் சாண்ட்பாக்சிங் (runtime sandboxing) ஆகியவை அமைதியான ஊடுருவல்களின் அபாயத்தைக் குறைக்கலாம்.
ஒரு AI அசிஸ்டண்ட் பாதிக்கப்பட்டவுடன், தாக்குதலாளி மென்பொருள் சப்ளை செயினுக்குள் நேரடியாக நுழைய முடியும் என்பதை Mandiant வழக்கு தெளிவாகக் காட்டுகிறது. AI பரிந்துரைகளை ஒரு தடையற்ற அனுமதி (free pass) என்று கருதாமல், அவற்றை அச்சுறுத்தல் மாதிரியின் (threat model) ஒரு பகுதியாகக் கருதுவது கோட்பேஸ்களைப் பாதுகாப்பாக வைத்திருக்க அவசியமாகும்.
முக்கியக் கருத்து: AI மூலம் உருவாக்கப்பட்ட பரிந்துரை என்பது மற்ற எந்த மூன்றாம் தரப்பு குறியீட்டை விடவும் அதிக நம்பகமானது அல்ல. அதைத் தீவிரமாகச் சரிபார்க்கவும், வரம்பிற்குள் வைக்கவும் மற்றும் கண்காணிக்கவும்; இல்லையெனில், ஒரு பயனுள்ள அசிஸ்டண்ட்டை ஒரு பெரிய அளவிலான சப்ளை-செயின் ஊடுருவலுக்கான வழியாக மாற்றிவிடும் அபாயம் உள்ளது.
