ப்ராம்ட் இன்ஜெக்ஷன் என்றால் என்ன என்று உங்களிடம் கேட்கப்பட்டு, அதற்கு ஒரு முழுமையற்ற பதில் மட்டுமே கிடைத்திருந்தால், இதோ அதன் சுருக்கமான விளக்கம்: இது ஒரு தாக்குதல் நுட்பமாகும். இதில், ஒரு செயற்கை நுண்ணறிவு மாதிரி (AI model) செயலாக்கும் உள்ளீட்டிற்குள் தீங்கிழைக்கும் அல்லது கையாளும் தன்மையுடைய உரை புகுத்தப்படுகிறது. இது அந்த மாதிரியை ஏமாற்றி, அதன் அசல் அறிவுறுத்தல்களைப் புறக்கணித்து, தாக்குபவரின் அறிவுறுத்தல்களைப் பின்பற்றச் செய்கிறது. ப்ராம்ட் இன்ஜெக்ஷன் என்பதன் மையக்கரு இதுதான்: இது நிரலில் உள்ள ஒரு பிழை அல்ல; மாறாக, இது வழக்கமான சுரண்டல் குறியீட்டிற்குப் (exploit code) பதிலாக, சாதாரண மொழியைப் பயன்படுத்தி மாதிரியின் அறிவுறுத்தல்களைக் கைப்பற்றும் ஒரு தாக்குதலாகும்.
உடனடி ஊசி என்பதன் எளிய அர்த்தம் #
அந்தத் தூண்டுதலின் அர்த்தத்தை வார்த்தைக்கு வார்த்தை பிரித்துப் பார்ப்பது, அது மனதில் பதிய உதவும்:
- அறிவுறுத்து: ஒரு பயனரால் நேரடியாகத் தட்டச்சு செய்யப்பட்டாலும் சரி, அல்லது ஒரு ஆவணம், வலைப்பக்கம், அல்லது API பதிலிலிருந்து தானாகவே பெறப்பட்டாலும் சரி, ஒரு AI மாதிரிக்கு அளிக்கப்படும் அறிவுறுத்தல்கள் மற்றும் சூழல்.
- ஊசி: இருக்கக்கூடாத ஒன்றை அங்கே செருகுவது என்பது, SQL இன்ஜெக்ஷனின் அதே தர்க்கத்திலிருந்து பெறப்பட்டதாகும்; அதில் நம்பத்தகாத உள்ளீடு, சாதாரண தரவாகக் கருதப்படாமல் ஒரு கட்டளையாகக் கையாளப்படுகிறது.
ஆகவே, ப்ராம்ட் இன்ஜெக்ஷன் என்றால் என்ன என்று யாராவது கேட்டால், அதற்கான மிக எளிய பதில் இதுதான்: ஒரு AI மாடலால், அதன் டெவலப்பரால் வழங்கப்பட்ட அறிவுறுத்தல்களுக்கும், அது செயலாக்கும் உள்ளடக்கத்தில் மறைந்திருக்கும் அறிவுறுத்தல்களுக்கும் இடையே உள்ள வேறுபாட்டைப் பிரித்தறிய முடியாதபோது இதுதான் நிகழ்கிறது.
அதில் உண்மையில் என்னென்ன அடங்கும்? #
பெரும்பாலான நிஜ உலக வழக்குகள் இந்த முக்கிய வகைகளில் அடங்கும்:
- நேரடி உடனடி ஊசிதாக்குதல் நடத்துபவர், தீங்கிழைக்கும் அறிவுறுத்தலை நேரடியாக அரட்டை அல்லது உள்ளீட்டுப் புலத்தில் தட்டச்சு செய்து, அதன் முந்தைய விதிகளைப் புறக்கணிக்குமாறு மாடலை வெளிப்படையாகக் கேட்கிறார் ("முந்தைய அனைத்து அறிவுறுத்தல்களையும் புறக்கணித்து...").
- மறைமுக தூண்டுதல் ஊசிதீங்கிழைக்கும் கட்டளையானது, மாதிரி பின்னர் படிக்கும் வலைப்பக்கம், PDF, மின்னஞ்சல் அல்லது குறியீட்டுக் குறிப்பு போன்ற உள்ளடக்கத்திற்குள் மறைக்கப்பட்டுள்ளது; மேலும், அந்த நேரத்தில் தாக்குபவர் யாரும் இல்லாத நிலையில், மாதிரி அந்த உள்ளடக்கத்தைச் செயலாக்கும்போது மட்டுமே அது செயல்படுத்தப்படுகிறது.
- சிறை உடைப்பு பாணி ஊசிஒரு மாடலின் பாதுகாப்பை மீறுவதற்காக, பாத்திரமேற்று நடித்தல், கருதுகோள் கட்டமைத்தல் அல்லது குறியாக்கத் தந்திரங்களைப் பயன்படுத்தும் ஒரு குறிப்பிட்ட வகை ஊடுருவல் முறை. guardrails குறிப்பாக, அதன் பணியைக் கைப்பற்றுவதற்காக அல்ல.
உடனடி ஊசிப் பரிமாற்றம் மற்றும் ஜெயில்பிரேக்கிங்: என்ன வேறுபாடு? #
ப்ராம்ட் இன்ஜெக்ஷன் என்றால் என்ன என்பது குறித்த ஒரு பொதுவான தொடர் கேள்வி, அது ஜெயில்பிரேக்கிங்கிலிருந்து எவ்வாறு வேறுபடுகிறது என்பதுதான். இரண்டும் ஒன்றுடன் ஒன்று தொடர்புடையவை, ஆனால் ஒன்றல்ல. ஜெயில்பிரேக்கிங் என்பது குறிப்பாக ஒரு மாடலின் பாதுகாப்பை மீறிச் செல்வதாகும். உள்ளடக்கம் guardrails, மறுக்கப் பயிற்றுவிக்கப்பட்ட ஒன்றை அதனைச் சொல்ல வைப்பது அல்லது உருவாக்க வைப்பது. ப்ராம்ட் இன்ஜெக்ஷன் என்பது இன்னும் பரந்ததாகும்: இது மாதிரியின் அறிவுறுத்தல்கள் அல்லது பணியைக் கைப்பற்றுவதைப் பற்றியது, இதில் பாதுகாப்பு சம்பந்தப்பட்டிருக்கலாம் அல்லது இல்லாமலும் இருக்கலாம். guardrails ஒரு ஆதரவு டிக்கெட்டில் மறைக்கப்பட்டிருக்கும் ஒரு மறைமுக ஊடுருவல், ஒரு பயனரின் தரவை வெளிப்புற முகவரிக்கு மின்னஞ்சல் செய்யுமாறு வாடிக்கையாளர் சேவைப் பிரதிநிதிக்கு அமைதியாகக் கூறுவது, எதையும் ஜெயில்பிரேக் செய்ய முயற்சிப்பது அல்ல; அது அந்தப் பணியையே திசைதிருப்புகிறது.
உடனடி ஊசி உண்மையில் எங்கே தோன்றுகிறது #
உடனடி உட்செலுத்தலின் அர்த்தத்தை நீங்கள் புரிந்துகொண்டவுடன், உண்மையான அமைப்புகளில் ஆபத்து எங்குள்ளது என்பதைக் கண்டறிவது எளிதாகிவிடும்:
MCP சர்வர்கள் மற்றும் AI கோடிங் உதவியாளர்கள் – ஒரு தீங்கிழைக்கும் கருத்து, README, அல்லது கருவி-முடிவுத் தரவுச்சுமை ஆகியவை, ஒரு டெவலப்பரின் குறியீட்டுத் தளம் அல்லது டெர்மினலில் ஒரு ஏஜென்ட் செய்யும் செயலைத் திசைதிருப்பக்கூடும். அது கட்டமைக்கப்பட்டுள்ள நிரலாக்க மொழியைப் பொறுத்து இது மாறுபடும், ஆனால் அதன் மையக் கருத்து (எடிட்டர் + உருவாக்கக் கருவிகள் + பிழைதிருத்தி, அனைத்தும் ஒரே இடத்தில்) மாறாமல் அப்படியே இருக்கும்.
அரட்டை செயலிகள் மற்றும் ஆதரவு முகவர்கள் ஒரு பயனர், பாட் அதன் சிஸ்டம் ப்ராம்ப்டைக் காண்பிக்கவோ அல்லது எதிர்பாராத செயல்களைச் செய்யவோ வைப்பதற்காக, செருகப்பட்ட உரையை ஒட்டுகிறார்.
மீட்டெடுப்பு-பெரிதாக்கப்பட்ட தலைமுறை (RAG) pipelines அறிவுத் தளத்தில் உள்ள ஒரு விஷம் கலந்த ஆவணம், மீட்டெடுக்கப்படும்போது செயல்படுத்தப்படும் வழிமுறைகளைக் கொண்டுள்ளது.
தன்னாட்சி AI முகவர்கள் இணையத்தில் உலாவும், மின்னஞ்சல்களைப் படிக்கும், அல்லது கருவிகளை அழைக்கும் ஒரு முகவரால், அது அணுகும் எந்தவொரு உள்ளடக்கத்திலிருந்தும் உட்செலுத்தப்பட்ட வழிமுறைகளைப் பெற்று, பின்னர் உண்மையான அனுமதிகளுடன் அவற்றின் மீது செயல்பட முடியும்.
உடனடி ஊசியின் அர்த்தம், “வெறும் ஒரு உடனடித் தந்திரம்” என்பதைத் தாண்டி ஏன் முக்கியத்துவம் பெறுகிறது? #
இதை ஒரு புதுமையாக, ஒரு சாட்பாட்டை ஏதேனும் வேடிக்கையாகப் பேச வைப்பதற்கான ஒரு புத்திசாலித்தனமான வழியாகக் கருதிப் புறக்கணிப்பது எளிது. ஆனால், மின்னஞ்சல்களை அனுப்பவும், குறியீடுகளை இயக்கவும், தரவுத்தளங்களில் வினவவும், அல்லது தொகுப்புகளை நிறுவவும் திறன் கொண்ட ஏஜென்ட்களுடன் செயற்கை நுண்ணறிவு மாதிரிகள் இணைக்கப்பட்டவுடன், இந்தத் தூண்டுதல் செருகல் என்பது ஒரு அரட்டைச் சாளரத்தின் விசித்திரமான விஷயமாக இருப்பதை நிறுத்தி, ஒரு உண்மையான பாதுகாப்பு எல்லைப் பிரச்சனையாக மாறுகிறது: ஒரு மாதிரி படிக்கும் உள்ளடக்கத்தைக் கட்டுப்படுத்துபவர், சரியான சூழ்நிலைகளில், அந்த மாதிரி அடுத்து என்ன செய்ய வேண்டும் என்பதையும் கட்டுப்படுத்த முடியும். இதனால்தான் இந்தத் தூண்டுதல் இப்போது ஒரு தனி வகையாகத் தோன்றுகிறது. LLM விண்ணப்பங்களுக்கான OWASP முதல் 10 இடங்கள்மேலும், உடனடி உட்செலுத்துதல் (prompt injection) என்றால் என்ன என்பதைப் புரிந்துகொள்வது, ரெட்-டீமர்களுக்கு வெறும் ஆர்வமாக மட்டும் இல்லாமல், AI-ஆற்றல் பெற்ற அமைப்புகளை உருவாக்கும் அல்லது பாதுகாக்கும் எவருக்கும் இப்போது ஏன் ஒரு அடிப்படை அறிவாகக் கருதப்படுகிறது.
நீங்கள் இதை குறிப்பாக AppSec மற்றும் DevSecOps கோணத்தில், அதாவது, அந்தச் சொல்லின் அர்த்தத்தை மட்டும் பார்க்காமல், ப்ராம்ட் இன்ஜெக்ஷன் அபாயம் AI ஏஜென்ட்கள், MCP சர்வர்கள் மற்றும் AI-உருவாக்கிய குறியீடுகளில் எவ்வாறு வெளிப்படுகிறது என்பதைப் பார்க்கிறீர்கள் என்றால், அதைப்பற்றி நாங்கள் இங்கே இன்னும் ஆழமாக விளக்கியுள்ளோம்: செயற்கை நுண்ணறிவு விநியோகச் சங்கிலி பாதுகாப்பு.

FAQ #
இது ஒரு வகைத் தாக்குதலாகும், இதில் ஒரு செயற்கை நுண்ணறிவு மாதிரி செயலாக்கும் உள்ளீடு அல்லது உள்ளடக்கத்திற்குள் தீங்கிழைக்கும் அறிவுறுத்தல்கள் மறைக்கப்படுகின்றன. இதனால், அந்த மாதிரி தனது அசல் அறிவுறுத்தல்களுக்குப் பதிலாகத் தாக்குபவரின் அறிவுறுத்தல்களைப் பின்பற்றுகிறது.
இது, SQL இன்ஜெக்ஷன் போன்ற பழைய தாக்குதல்களின் பின்னணியில் உள்ள அதே மையக் கருத்தான, “ப்ராம்ட்” (ஒரு AI மாதிரிக்கு வழங்கப்படும் அறிவுறுத்தல்கள் மற்றும் சூழல்) என்பதை “இன்ஜெக்ஷன்” (தரவை மட்டுமே கொண்டிருக்க வேண்டிய ஒன்றில் அங்கீகரிக்கப்படாத கட்டளைகளைச் செருகுவது) உடன் இணைக்கிறது.
இல்லை. ஜெயில்பிரேக்கிங் என்பது குறிப்பாக ஒரு மாடலின் பாதுகாப்பைக் குறிவைக்கிறது. guardrails அனுமதிக்கப்படாத உள்ளடக்கத்தை உருவாக்கச் செய்வது. ப்ராம்ட் இன்ஜெக்ஷன் என்பது இன்னும் பரந்ததாகும்: இது மாடலின் பணி அல்லது அறிவுறுத்தல்களைக் கைப்பற்றுகிறது, அவற்றுக்கும் பாதுகாப்பு வடிகட்டிகளுக்கும் சற்றும் தொடர்பில்லாமல் இருக்கலாம்.
ஆம். இது மறைமுகத் தூண்டுதல் செருகல் (indirect prompt injection) என்று அழைக்கப்படுகிறது: ஒரு மாடல் அல்லது ஏஜென்ட் பின்னர் படிக்கும் ஆவணம், வலைப்பக்கம் அல்லது கோப்பிற்குள் தீங்கிழைக்கும் கட்டளை அமைந்திருக்கும், மேலும் அந்த உள்ளடக்கம் செயலாக்கப்படும் கணத்திலேயே அது தானாகவே தூண்டப்படுகிறது.
இல்லை. இது பயன்பாட்டுக் குறியீட்டில் உள்ள ஒரு குறைபாட்டை அல்ல, மாறாக ஒரு மாதிரி இயற்கை மொழியைப் புரிந்துகொள்ளும் விதத்தைப் பயன்படுத்துகிறது. பாரம்பரியப் பாதுகாப்புக் கருவிகளைக் கொண்டு இதைச் சரிசெய்வது கடினமாக இருப்பதற்குக் காரணம் இதுதான்.
