നേട്ടങ്ങൾ:
- മൂന്ന് ലെയറുകളിൽ AI ഔട്ട്പുട്ട് പരിശോധിക്കാനുള്ള കഴിവ്: കൃത്യത, സുരക്ഷ, ഉറവിടം/ലൈസൻസ്
- ഇൻജക്ഷൻ, ഹാലുസിനേഷൻ പാക്കേജുകൾ, കുഴിച്ചിട്ട രഹസ്യങ്ങൾ എന്നിവ സുരക്ഷിതമായ അച്ചുകളും ഉപകരണങ്ങളും ഉപയോഗിച്ച് മറയ്ക്കാനുള്ള കഴിവ്
- യോഗ്യതയുള്ള ഒരു എഞ്ചിനീയറുടെ അംഗീകാരത്തിനായി സുരക്ഷാ-നിർണ്ണായക കോഡ് അവതരിപ്പിക്കാനും ഉത്തരവാദിത്തത്തിൻ്റെ കൈമാറ്റം ചെയ്യാത്തത് മനസ്സിലാക്കാനുമുള്ള കഴിവ്
AI കോഡ് സൃഷ്ടിക്കുന്നത് എളുപ്പമാണ്; അവനെ വിശ്വസിക്കുന്നത് ചെലവേറിയതാണ്. മുമ്പത്തെ എല്ലാ യൂണിറ്റുകളിലും ഞങ്ങൾ ആവർത്തിച്ച "പരിശോധിച്ചുറപ്പിക്കുക" എന്ന തത്വത്തെ ഒരു ചിട്ടയായ എഞ്ചിനീയറിംഗ് വിഭാഗമാക്കി മാറ്റുക എന്നതാണ് ഈ യൂണിറ്റിൻ്റെ ഏക ലക്ഷ്യം. കാരണം, AI നിർമ്മിച്ച കോഡ്, അത് ഒറ്റനോട്ടത്തിൽ ശരിയാണെന്ന് തോന്നുമെങ്കിലും, മൂന്ന് വ്യത്യസ്ത അപകടങ്ങൾ വഹിക്കുന്നു: നോൺ-വർക്കിംഗ്/തെറ്റായ (ഹാലൂസിനേഷൻ), സുരക്ഷിതമല്ലാത്തത് (ദുർബലത), നിയമപരമായ/ലൈസൻസിംഗ് അപകടസാധ്യതകൾ വഹിക്കുന്നത്. ഇവ മൂന്നും അറിയുകയും അവയിൽ ഓരോന്നിനും ഒരു വാതിൽ സ്ഥാപിക്കുകയും ചെയ്യുന്നത് നിങ്ങളെ ഒരു പ്രൊഫഷണലാക്കുന്നു.
ഇവിടെ ഞങ്ങൾ "സാധുവാക്കൽ" മൂന്ന് ലെയറുകളായി പരിഗണിക്കുന്നു: കൃത്യത (കോഡ് യഥാർത്ഥത്തിൽ ജോലി ചെയ്യുന്നുണ്ടോ?), സുരക്ഷ (ഇത് ക്ഷുദ്രകരമായ ഇൻപുട്ടിനെ നേരിടുന്നുണ്ടോ?), പ്രോവൻസ്/ലൈസൻസ് (ഈ കോഡ് ഉപയോഗിക്കാൻ എനിക്ക് അവകാശമുണ്ടോ?). ഓരോ ലെയറിനും അതിൻ്റേതായ നിയന്ത്രണ മാർഗങ്ങളുണ്ട്, അവയൊന്നും "അതാണ് AI പറഞ്ഞത്" എന്ന് മറികടക്കാൻ കഴിയില്ല.
അപകടസാധ്യതയുടെ മൂന്ന് പാളികൾ
1. കൃത്യതയുടെ അപകടസാധ്യത (ഹാലുസിനേഷൻ). മോഡൽ നിലവിലില്ലാത്ത ഒരു ഫംഗ്ഷൻ വിളിക്കാം, ഒരു API ദുരുപയോഗം ചെയ്യാം, ഒരു എഡ്ജ് കേസ് നിശബ്ദമായി മറികടക്കാം. കോഡ് "ന്യായമായത്" എന്ന് തോന്നുന്നു, പക്ഷേ തെറ്റാണ്. മറുമരുന്ന്: സമാഹാരം, പരിശോധന, സ്റ്റാറ്റിക് വിശകലനം, ദൃശ്യ പരിശോധന.
2. സുരക്ഷാ അപകടം. പരിശീലന ഡാറ്റയിൽ AI-ന് സുരക്ഷിതമല്ലാത്ത പാറ്റേണുകൾ ആവർത്തിക്കാൻ കഴിയും: SQL കുത്തിവയ്പ്പിന് അപകടസാധ്യതയുള്ള ചോദ്യം, ആധികാരികതയില്ലാത്ത ഉപയോക്തൃ ഇൻപുട്ട്, ദുർബലമായ എൻക്രിപ്ഷൻ, സുരക്ഷിതമല്ലാത്ത ഡീസിയലൈസേഷൻ, തുറന്ന റീഡയറക്ഷൻ. കോഡ് പ്രവർത്തിക്കുന്നു, പക്ഷേ ആക്രമണത്തിന് ഇരയാകാം. മറുമരുന്ന്: സുരക്ഷാ കേന്ദ്രീകൃത അവലോകനം, ഓട്ടോമേറ്റഡ് സ്കാനറുകൾ (SAST), അറിയപ്പെടുന്ന സുരക്ഷിത പാറ്റേണുകൾ അടിച്ചേൽപ്പിക്കൽ.
3. ഉറവിടം/ലൈസൻസ് റിസ്ക്. പകർപ്പവകാശമുള്ളതോ നിയന്ത്രിത ലൈസൻസുള്ളതോ ആയ കോഡിനോട് സാമ്യമുള്ള ഔട്ട്പുട്ട് AI നിർമ്മിച്ചേക്കാം, അല്ലെങ്കിൽ അനുചിതമായ ലൈസൻസുള്ള ഡിപൻഡൻസി നിർദ്ദേശിച്ചേക്കാം. മറുമരുന്ന്: ആശ്രിതത്വവും ലൈസൻസും പരിശോധിക്കൽ, ഒറിജിനാലിറ്റി പരിശോധന, കോർപ്പറേറ്റ് നയം.
മുന്നറിയിപ്പ്: ഈ മൂന്ന് അപകടസാധ്യതകളിൽ ഏറ്റവും വഞ്ചനാപരമായത് സുരക്ഷയാണ്; കാരണം കോഡിന് പരിശോധനയിൽ വിജയിക്കാനും ഉൽപ്പാദനത്തിൽ സുഗമമായി പ്രവർത്തിക്കാനും കഴിയും, ആക്രമണകാരി അത് കണ്ടെത്തുമ്പോൾ മാത്രമേ അപകടസാധ്യത വെളിപ്പെടുകയുള്ളൂ. "ജോലി" എന്നത് "സുരക്ഷിതം" എന്നതിന് തുല്യമല്ല.
ഘട്ടം ഘട്ടമായി: ലേയേർഡ് ഓതൻ്റിക്കേഷൻ ഗേറ്റ്
- മനസ്സിലാക്കി വായിക്കുക. കോഡ് സ്വീകരിക്കുന്നതിന് മുമ്പ് അത് ശരിക്കും മനസ്സിലാക്കുക; നിങ്ങൾക്ക് മനസ്സിലാകാത്ത കോഡ് ലയിപ്പിക്കരുത്. "എന്തുകൊണ്ടാണ് ഇത് പ്രവർത്തിക്കുന്നത്" എന്ന് നിങ്ങൾക്ക് വിശദീകരിക്കാൻ കഴിയുന്നില്ലെങ്കിൽ, അത് ഇതുവരെ സാധൂകരിച്ചിട്ടില്ല.
- അത് നിലവിലുണ്ടെന്ന് ഉറപ്പാക്കുക. ഉപയോഗിച്ച എല്ലാ ഫംഗ്ഷനുകളും API-യും പാക്കേജും യഥാർത്ഥത്തിൽ നിലവിലുണ്ടെന്നും അത് ശരിയായി ഉപയോഗിക്കുന്നുവെന്നും സ്ഥിരീകരിക്കുക (ഹാലുസിനേഷൻ ഗേറ്റ്).
- ഓട്ടോമേറ്റഡ് ടൂളുകൾ പ്രവർത്തിപ്പിക്കുക. കംപൈലർ, ലിൻ്റർ (സ്റ്റൈൽ/എറർ സ്കാനർ), ടൈപ്പ് ചെക്കർ, യൂണിറ്റ് ടെസ്റ്റുകൾ, സാധ്യമെങ്കിൽ ഒരു SAST (സ്റ്റാറ്റിക് ആപ്ലിക്കേഷൻ സെക്യൂരിറ്റി ടെസ്റ്റിംഗ് - കേടുപാടുകൾക്കായി സോഴ്സ് കോഡ് സ്കാൻ ചെയ്യുന്ന ഉപകരണം).
- സുരക്ഷാ വീക്ഷണകോണിൽ നിന്ന് നോക്കുക. ഇൻപുട്ട് സാധുതയുള്ളതാണോ? ചോദ്യം പാരാമീറ്റർ ചെയ്തിട്ടുണ്ടോ? രഹസ്യം കുഴിച്ചിട്ടോ? അംഗീകാര നിയന്ത്രണം ഉണ്ടോ?
- ഉറവിടവും ലൈസൻസും പരിശോധിക്കുക. പുതിയ ഡിപൻഡൻസികൾക്ക് ലൈസൻസ് ഉണ്ടോ? ഔട്ട്പുട്ട് അറിയപ്പെടുന്ന ഒരു കോഡ്ബേസിനോട് സാമ്യമുള്ളതായി തോന്നുന്നുണ്ടോ?
- ഇത് സുരക്ഷാ-നിർണ്ണായകമാണെങ്കിൽ, വിദഗ്ദ്ധ അനുമതി തേടുക. പ്രാമാണീകരണം, പേയ്മെൻ്റ്, ക്രിപ്റ്റോഗ്രഫി, ആക്സസ് കൺട്രോൾ തുടങ്ങിയ മേഖലകളിൽ കഴിവുള്ള ഒരു എഞ്ചിനീയറുടെ സ്വതന്ത്ര അവലോകനം നിർബന്ധമാണ്.
മൂന്ന് മിനി കേസുകൾ
കേസ് 1 - SQL കുത്തിവയ്പ്പ് പരിശോധനാ ഗേറ്റിൽ പിടിക്കപ്പെട്ടു. ഒരു തിരയൽ എൻഡ്പോയിൻ്റിനായുള്ള ("... എവിടെ പേര് = '" + q + "'") ഉപയോക്തൃ ഇൻപുട്ടിനെ SQL അന്വേഷണത്തിലേക്ക് നേരിട്ട് സംയോജിപ്പിക്കുന്ന കോഡ് AI സൃഷ്ടിച്ചു. കോഡ് പ്രവർത്തിക്കുകയും പരീക്ഷയിൽ വിജയിക്കുകയും ചെയ്തു. സുരക്ഷാ കേന്ദ്രീകൃത പരിശോധനയും SAST സ്കാനിംഗും ഇത് പിടികൂടി; ഇത് ഒരു പാരാമീറ്ററൈസ്ഡ് ക്വറിയായി (തയ്യാറാക്കിയ പ്രസ്താവന) പരിവർത്തനം ചെയ്തു. പിടിക്കപ്പെട്ടില്ലായിരുന്നെങ്കിൽ ഇതൊരു ക്ലാസിക് ഡാറ്റ ലീക്ക് വൾനറബിലിറ്റി ആകുമായിരുന്നു.
കേസ് 2 - ഹാലുസിനേഷൻ പാക്കേജ്. AI ഒരു ടാസ്ക്കിനായി നിലവിലില്ലാത്ത npm പാക്കേജ് (ഫാസ്റ്റ്-സേഫ്-പാഴ്സ്) നിർദ്ദേശിച്ചു. ഡവലപ്പർ ഇത് ഇൻസ്റ്റാൾ ചെയ്യാൻ ശ്രമിച്ചപ്പോൾ, പാക്കേജ് കണ്ടെത്തിയില്ല. മോശം: ചില സന്ദർഭങ്ങളിൽ, ആക്രമണകാരികൾക്ക് അത്തരം "പ്രേത" പാക്കേജ് പേരുകൾ യഥാർത്ഥ, ക്ഷുദ്രകരമായ പാക്കേജുകൾ (ആശ്രിതത്വ ആശയക്കുഴപ്പം) ഉപയോഗിച്ച് പൂരിപ്പിക്കാൻ കഴിയും. പാഠം: ഔദ്യോഗിക രജിസ്ട്രി, ഡൗൺലോഡ്/മെയിൻ്റനൻസ് ഹിസ്റ്ററി എന്നിവയ്ക്കെതിരെ ശുപാർശ ചെയ്യുന്ന ഓരോ പാക്കേജും പരിശോധിക്കുക.
കേസ് 3 - ലൈസൻസ് പൊരുത്തക്കേട്. AI നിർദ്ദേശിച്ച ഒരു നിഫ്റ്റി കമ്പാനിയൻ ലൈബ്രറിക്ക് ശക്തമായ കോപ്പിലെഫ്റ്റ് ലൈസൻസ് ഉണ്ടായിരുന്നു, അത് സ്ഥാപനത്തിൻ്റെ ഉൽപ്പന്ന ലൈസൻസുമായി പൊരുത്തപ്പെടുന്നില്ല. ആശ്രിത ലൈസൻസ് സ്കാൻ ഇത് റിപ്പോർട്ട് ചെയ്തു; സംഘം ലൈസൻസിന് പകരം അനുയോജ്യമായ ബദൽ നൽകി. സ്ഥിരീകരണം ഇല്ലെങ്കിൽ, ഉൽപ്പന്ന വിതരണത്തിൽ ഒരു നിയമപരമായ ഭാരം ഉയർന്നുവരും.
പകർത്താവുന്ന നാല് ടെംപ്ലേറ്റുകൾ
പ്രവേശനത്തിന് മുമ്പുള്ള സ്വയം പരിശോധന:
ഇനിപ്പറയുന്ന AI ജനറേറ്റ് ചെയ്ത കോഡ് സ്വീകരിക്കുന്നതിന് മുമ്പ്, പരിശോധിക്കുക:1) അത് ഉപയോഗിക്കുന്ന എല്ലാ ഫംഗ്ഷനുകളും/API/പാക്കേജും യഥാർത്ഥത്തിൽ നിലവിലുണ്ടോ? സംശയിക്കുന്നവരെ ഫ്ലാഗ് ചെയ്യുക.2) എന്തെങ്കിലും അസാധുവാക്കാത്ത ഇൻപുട്ട്, SQL/കമാൻഡ് കോൺകറ്റനേഷൻ, കുഴിച്ചിട്ട രഹസ്യം, ദുർബലമായ ക്രിപ്റ്റോ ഉണ്ടോ?3) അഡ്രസ് ചെയ്യാത്ത ബഗുകൾ/എഡ്ജ് കേസുകൾ എന്തൊക്കെയാണ്? ഓരോ കണ്ടെത്തലും "ചിലത് / സാധ്യതയുള്ളത്" എന്ന് ലേബൽ ചെയ്ത് പരിഹാരങ്ങൾ നിർദ്ദേശിക്കുക.{{code}}
സുരക്ഷാ കേന്ദ്രീകൃത അവലോകനം:
സുരക്ഷാ കണ്ണുകൊണ്ട് ഈ കോഡ് പരിശോധിക്കുക. സാധാരണ OWASP ശൈലിയിലുള്ള കേടുപാടുകൾക്കായി നോക്കുക: കുത്തിവയ്പ്പ്, തകർന്ന പ്രാമാണീകരണം/അംഗീകാരം, സെൻസിറ്റീവ് ഡാറ്റ വെളിപ്പെടുത്തൽ, സുരക്ഷിതമല്ലാത്ത ഡീരിയലൈസേഷൻ, ആധികാരികമല്ലാത്ത റീഡയറക്ഷൻ. ഓരോ കണ്ടെത്തലിനും: അപകടസാധ്യത, ചൂഷണ സാഹചര്യം, പ്രതിവിധി. ഇതൊരു പ്രാഥമിക സ്ക്രീനിംഗ് ആണ്; നിർണായക കണ്ടെത്തലുകൾ മനുഷ്യ സുരക്ഷാ അവലോകനത്തിലേക്ക് റഫർ ചെയ്യുക.{{code}}
ആശ്രിതത്വവും ലൈസൻസ് പരിശോധനയും:
ഈ കോഡ് ചേർത്ത/നിർദ്ദേശിച്ച ഡിപൻഡൻസികൾ ലിസ്റ്റ് ചെയ്യുക. ഓരോന്നിനും: പാക്കേജ് യഥാർത്ഥത്തിൽ നിലവിലുണ്ടോ, അത് പരിപാലിക്കപ്പെടുന്നുണ്ടോ, അതിൻ്റെ സാധാരണ ലൈസൻസ് എന്തായിരിക്കും (പരിശോധിച്ചിരിക്കണം), ഇത് യഥാർത്ഥത്തിൽ പ്രോജക്റ്റിന് ആവശ്യമാണോ അതോ നിലവിലുള്ള ഒരു ടൂൾ ഉപയോഗിച്ച് ചെയ്യാൻ കഴിയുമോ?{{കോഡ് അല്ലെങ്കിൽ ഡിപൻഡൻസി ലിസ്റ്റ്}}
സുരക്ഷിതമായ ഫോം വർക്ക് ഇംപോസിഷൻ (ഉൽപാദനത്തിൽ):
{{task}} എന്നതിനുള്ള കോഡ് എഴുതുക. നിർബന്ധിത സുരക്ഷാ നിയമങ്ങൾ:- എല്ലാ ബാഹ്യ ഇൻപുട്ടുകളും സാധൂകരിക്കുക/അണുവിമുക്തമാക്കുക.- ഡാറ്റാബേസ് ആക്സസിൽ പാരാമീറ്ററൈസ്ഡ് അന്വേഷണം മാത്രം ഉപയോഗിക്കുക.- രഹസ്യങ്ങൾ കോഡിൽ ഉൾപ്പെടുത്തരുത്; എൻവയോൺമെൻ്റ് വേരിയബിൾ/സീക്രട്ട് മാനേജർ കരുതുക - പിശകുകൾ വിഴുങ്ങരുത്; അത് അർത്ഥപൂർവ്വം പരിഗണിക്കുക. 3 ഇനങ്ങളിൽ ഈ നിയമങ്ങൾ കോഡ് എങ്ങനെ പാലിക്കുന്നുവെന്ന് വിശദീകരിക്കുക.
ദുർബലമായ പ്രോംപ്റ്റ് / ശക്തമായ പ്രോംപ്റ്റ്
ദുർബലമായത്: "ഉപയോക്തൃനാമം ഉപയോഗിച്ച് തിരയുന്ന ഒരു ചോദ്യം എഴുതുക." (കുത്തിവയ്പ്പിന് സാധ്യതയുള്ള ഒരു കോഡ് സംഭവിക്കാം.)
ശക്തമായത്: "ഉപയോക്തൃനാമം അനുസരിച്ച് തിരയുന്ന ഒരു ഫംഗ്ഷൻ എഴുതുക. ഒരു ചോദ്യത്തിലേക്ക് ഉപയോക്തൃ ഇൻപുട്ടിനെ ഒരു സ്ട്രിംഗായി ഒരിക്കലും ചേരരുത്; ഒരു പാരാമീറ്ററൈസ്ഡ് ചോദ്യം (തയ്യാറാക്കിയ പ്രസ്താവന) ഉപയോഗിക്കുക. ദൈർഘ്യത്തിനും പ്രതീകത്തിനും ഇൻപുട്ട് മൂല്യനിർണ്ണയം ചെയ്യുക. കോഡ് കുത്തിവയ്പ്പിലേക്ക് അടച്ചിരിക്കുന്നത് എന്തുകൊണ്ടെന്ന് 2 വാക്യങ്ങളിൽ വിശദീകരിക്കുക."
ശക്തമായ പതിപ്പ് തുടക്കം മുതൽ സുരക്ഷിതമായ പാറ്റേൺ അടിച്ചേൽപ്പിക്കുന്നു; അങ്ങനെ, അപകടസാധ്യത പിന്നീട് പിടിക്കപ്പെടുന്നതിനുപകരം അത് സംഭവിക്കുന്നില്ലെന്ന് ഉറപ്പാക്കുന്നു. എന്നിരുന്നാലും, വെരിഫിക്കേഷൻ ഗേറ്റുകളിലൂടെ ജനറേറ്റ് ചെയ്ത കോഡ് കൈമാറേണ്ടത് അത്യാവശ്യമാണ്.
പ്രാമാണീകരണ പാളി
ഉപകരണം/രീതി
"AI പറഞ്ഞു" മതിയോ?
കൃത്യത
സമാഹാരം, പരിശോധന, ദൃശ്യ പരിശോധന
ഇല്ല
API/പാക്കേജ് റിയാലിറ്റി
ഔദ്യോഗിക പ്രമാണം/രേഖ നിയന്ത്രണം
ഇല്ല
സുരക്ഷ
SAST, സുരക്ഷാ അവലോകനം
ഇല്ല
ലൈസൻസ്/ഉറവിടം
ആശ്രിതത്വവും ലൈസൻസ് പരിശോധനയും
ഇല്ല
സുരക്ഷാ-നിർണ്ണായക യുക്തി
വിദഗ്ധ എഞ്ചിനീയർ അംഗീകാരം
തീരെ ഇല്ല
ഉത്തരവാദിത്തം കൈമാറാൻ കഴിയില്ല
ഒരു AI ടൂൾ നിർമ്മിക്കുന്ന കോഡിൽ നിന്ന് ഉണ്ടാകുന്ന പിശകുകൾ, കേടുപാടുകൾ അല്ലെങ്കിൽ ലംഘനങ്ങൾ എന്നിവയുടെ ഉത്തരവാദിത്തം ആ കോഡ് കൂട്ടിച്ചേർക്കുകയും വിതരണം ചെയ്യുകയും ചെയ്യുന്ന ടീമിനാണ്, ടൂൾ ദാതാവിനല്ല. ഇതൊരു പ്രൊഫഷണൽ വസ്തുതയാണ്, അതുപോലെ തന്നെ നിയമപരമായ കാര്യവുമാണ്: നിങ്ങൾ ഒപ്പിടുക. അതിനാൽ "AI നിർമ്മിച്ചത്" എന്നത് ഒരു ഒഴികഴിവല്ല, അധിക ജാഗ്രതയ്ക്കുള്ള ന്യായീകരണമാണ്. പ്രത്യേകിച്ച് സുരക്ഷാ-നിർണ്ണായക സംവിധാനങ്ങളിൽ, AI ഔട്ട്പുട്ട് ഒരു സാഹചര്യത്തിലും ഒരു യോഗ്യതയുള്ള എഞ്ചിനീയറുടെ അവലോകനത്തിനും അംഗീകാരത്തിനും പകരമാവില്ല; പരമാവധി, ആ എഞ്ചിനീയറെ വേഗത്തിലാക്കുന്ന ഒരു ബ്ലൂപ്രിൻ്റ് AI നൽകുന്നു.
നുറുങ്ങ്: "AI- ജനറേറ്റഡ് കോഡിനുള്ള സാധൂകരണ ഗേറ്റ്" (ബിൽഡ് + ടെസ്റ്റ് + സെക്യൂരിറ്റി സ്കാൻ + വിഷ്വൽ ഇൻസ്പെക്ഷൻ) എന്ന് വിളിക്കുന്ന ഒരു ചെറിയ ചെക്ക്ലിസ്റ്റ് നിങ്ങളുടെ ടീമിൽ സൃഷ്ടിക്കുക. ഈ ഗേറ്റ് ഒരു ശീലമായിക്കഴിഞ്ഞാൽ, വേഗത നഷ്ടപ്പെടുന്നത് വളരെ കുറവാണ്, അപകടസാധ്യത പരമാവധി കുറയ്ക്കുന്നു.
സാധാരണ തെറ്റുകൾ
- "പ്രവർത്തികൾ", "സുരക്ഷിതം" എന്നിവയെ ആശയക്കുഴപ്പത്തിലാക്കുന്നു. പരിശോധനയിൽ വിജയിക്കുന്ന കോഡ് ആക്രമണത്തിന് ഇരയായേക്കാം.
- പരിശോധിച്ചുറപ്പിക്കാതെ പാക്കേജ്/എപിഐ ഉപയോഗിക്കുന്നു. ഹാലുസിനേറ്ററി പാക്കറ്റുകൾ കേടുപാടുകൾ വരുത്തുകയും സുരക്ഷാ അപകടമുണ്ടാക്കുകയും ചെയ്യുന്നു.
- ഓട്ടോമേറ്റഡ് ടൂളുകൾ മറികടക്കുന്നു. ലിൻ്റർ, ടൈപ്പ് ചെക്കർ, SAST എന്നിവ കുറഞ്ഞ വിലയ്ക്ക് മനുഷ്യർക്ക് നഷ്ടപ്പെടുന്നത് പിടിക്കുന്നു.
- ലൈസൻസ് അവഗണിക്കുന്നു. അനുചിതമായ ലൈസൻസുള്ള ആശ്രിതത്വം വിതരണത്തിൽ നിയമപരമായ ഭാരം സൃഷ്ടിക്കുന്നു.
- വാഹനത്തിൻ്റെ ഉത്തരവാദിത്തം ഏൽപ്പിക്കുന്നു. ഉൽപ്പാദനത്തിലെ കോഡിന് ടീം ഉത്തരവാദിയാണ്; "AI അത് ചെയ്തു" എന്നത് ഒഴികഴിവില്ല.
ചുരുക്കത്തിൽ
AI ഔട്ട്പുട്ട് സ്വീകരിക്കുന്നതിന് മൂന്ന് ലെയർ പരിശോധന ആവശ്യമാണ്: കൃത്യത (കംപൈൽ, ടെസ്റ്റ്, വിഷ്വൽ ഇൻസ്പെക്ഷൻ), സെക്യൂരിറ്റി (SAST, സെക്യൂരിറ്റി-ഫോക്കസ്ഡ് റിവ്യൂ), സോഴ്സ്/ലൈസൻസ് (ആശ്രിത പരിശോധന). ഉപയോഗിച്ച ഓരോ പാക്കേജും API ഉം യഥാർത്ഥത്തിൽ നിലവിലുണ്ടെന്ന് സ്ഥിരീകരിക്കുക, തുടക്കം മുതൽ സുരക്ഷിതമായ പാറ്റേണുകൾ നടപ്പിലാക്കുക, യോഗ്യതയുള്ള ഒരു എഞ്ചിനീയറുടെ അംഗീകാരത്തിനായി സുരക്ഷാ-നിർണ്ണായക കോഡ് സമർപ്പിക്കുക. "വർക്കുകൾ" എന്നത് സുരക്ഷിതമല്ല, കൂടാതെ "AI നിർമ്മിച്ചത്" എന്നത് ബാധ്യത നീക്കം ചെയ്യുന്നില്ല. സ്ഥിരീകരണ ഗേറ്റ് പ്രൊഫഷണലിസത്തിൻ്റെ വിലയാണ്, വേഗതയല്ല.
ആപ്ലിക്കേഷൻ ടാസ്ക്
സുരക്ഷിതമായ പാറ്റേൺ അടിച്ചേൽപ്പിക്കാതെ മനഃപൂർവ്വം ഒരു സുരക്ഷാ-സെൻസിറ്റീവ് ടാസ്ക് (ഉദാ. "ഉപയോക്തൃ ഇൻപുട്ട് ഉപയോഗിച്ച് ഡാറ്റാബേസ് തിരയുന്ന ഒരു ഫംഗ്ഷൻ") നൽകുക. "പ്രീ-അഡ്മിഷൻ സെൽഫ് ഓഡിറ്റ്", "സെക്യൂരിറ്റി-ഫോക്കസ്ഡ് റിവ്യൂ" എന്നീ ടെംപ്ലേറ്റുകൾ വഴി ഇൻകമിംഗ് കോഡ് നൽകുക: എന്തെങ്കിലും കുത്തിവയ്പ്പ്, കുഴിച്ചിട്ട രഹസ്യം, ഹാലുസിനേറ്റഡ് പാക്കറ്റ് അല്ലെങ്കിൽ ആധികാരികമല്ലാത്ത ഇൻപുട്ട് ഉണ്ടോ? "സുരക്ഷിത പാറ്റേൺ ഇംപോസിഷൻ" ടെംപ്ലേറ്റ് ഉപയോഗിച്ച് അതേ ടാസ്ക്ക് വീണ്ടും ചോദിക്കുകയും രണ്ട് ഔട്ട്പുട്ടുകളും താരതമ്യം ചെയ്യുകയും ചെയ്യുക. സാധ്യമെങ്കിൽ, ഒരു ലിൻ്റർ/SAST ടൂൾ പ്രവർത്തിപ്പിച്ച് കണ്ടെത്തലുകൾ AI-യുടെ സ്വയം നിയന്ത്രണവുമായി താരതമ്യം ചെയ്യുക.
ചെക്ക്ലിസ്റ്റ്
- [ ] ഞാൻ മൂന്ന് ലെയറുകളിൽ AI ഔട്ട്പുട്ട് പരിശോധിക്കുന്നു: കൃത്യത, സുരക്ഷ, ലൈസൻസ്.
- [ ] ഉപയോഗിക്കുന്ന എല്ലാ ഫംഗ്ഷനുകളും API-യും പാക്കേജും യഥാർത്ഥത്തിൽ നിലവിലുണ്ടെന്ന് ഞാൻ സ്ഥിരീകരിക്കുന്നു.
- [ ] ഞാൻ കംപൈൽ, ടെസ്റ്റ്, ലിൻ്റർ, സാധ്യമെങ്കിൽ SAST ടൂളുകൾ എന്നിവ പ്രവർത്തിപ്പിക്കുന്നു.
- [ ] ഞാൻ തുടക്കം മുതൽ സുരക്ഷിതമായ പാറ്റേണുകൾ (പാരാമീറ്റർ ചെയ്ത അന്വേഷണം, ഇൻപുട്ട് മൂല്യനിർണ്ണയം, രഹസ്യ മാനേജ്മെൻ്റ്) അടിച്ചേൽപ്പിക്കുന്നു.
- [] പുതിയ ഡിപൻഡൻസികളുടെ ലൈസൻസിംഗും ആവശ്യകതയും ഞാൻ പരിശോധിക്കുന്നു.
- [ ] യോഗ്യതയുള്ള ഒരു എഞ്ചിനീയറുടെ അംഗീകാരത്തിനായി ഞാൻ സുരക്ഷാ-നിർണ്ണായക കോഡ് സമർപ്പിക്കുകയാണ്, ഞാൻ ഉത്തരവാദിയാണെന്ന് ഞാൻ മനസ്സിലാക്കുന്നു.