Girdeji:
- AI çykyşyny üç gatlakda barlamak ukyby: takyklyk, howpsuzlyk we çeşme / ygtyýarnama
- Sanjym, galýusinasiýa paketleri we gömülen syrlar ýaly töwekgelçilikleri ygtybarly galyplar we gurallar bilen örtmek ukyby
- Howpsuzlyk kritiki koduny başarnykly inereneriň tassyklamagyna hödürlemek we jogapkärçiligiň geçirilmejekdigine düşünmek
AI koduny döretmek aňsat; Oňa ynanmak gaty gymmat. Bu bölümiň ýeke-täk maksady, öňki bölümlerde gaýtalap geçen "barlamak" ýörelgesini yzygiderli in engineeringenerçilik dersine öwürmek. AI tarapyndan öndürilen kod, ilkinji seredişde dogry ýaly görünse-de, üç aýratyn howpy döredýär: işlemeýän / nädogry (galýusinasiýa), howpsuz däl (gowşak goralanlyk) we kanuny / ygtyýarnama töwekgelçiligi. Bu üçüsini bilmek we olaryň her biri üçin gapy açmak sizi hünärmen edýär.
Bu ýerde üç gatlakda “tassyklamany” göz öňünde tutýarys: dogrylyk (kod hakykatdanam işleýärmi?), Howpsuzlyk (zyýanly girişlere çydamlymy?) We synag / ygtyýarnama (bu kody ulanmaga hakym barmy?). Her gatyň öz dolandyryş serişdesi bar we olaryň hiç birini "AI-iň aýdyşy ýaly" geçip bolmaz.
Üç töwekgelçilik
1. Takyklyk töwekgelçiligi (galýusinasiýa). Model ýok funksiýany çagyryp biler, API-ni nädogry ulanyp biler, bir gyradan dymyp aýlanyp biler. Kod "ýerlikli" görünýär, ýöne nädogry. Antidote: düzmek, synag, statiki derňew we wizual gözden geçirmek.
2. Howpsuzlyk töwekgelçiligi. AI okuw maglumatlarynda ygtybarly nagyşlary gaýtalap biler: SQL sanjymyna goragsyz talap, tassyklanmadyk ulanyjy girişi, gowşak şifrlemek, ygtybarly deserializasiýa, açyk gönükdirme. Kod işleýär, ýöne hüjüme sezewar bolýar. Antidote: howpsuzlyga gönükdirilen syn, awtomatiki skanerler (SAST) we belli ygtybarly nagyşlary ulanmak.
3. Çeşme / ygtyýarnama töwekgelçiligi. AI awtorlyk hukugy bilen goralan ýa-da çäklendirilen ygtyýarlandyrylan koda meňzeş önüm öndürip biler ýa-da ýerliksiz ygtyýarlandyrylan garaşlylygy teklip edip biler. Antidote: garaşlylygy we ygtyýarnamany barlamak, özboluşlylygy barlamak, korporatiw syýasat.
Üns beriň: Bu üç töwekgelçiligiň arasynda iň mekir howpsuzlyk; kod synagdan geçip bilýär, önümçilikde oňat işleýär we gowşaklyk diňe hüjümçi tapylanda ýüze çykýar. “Işlemek” “ygtybarly” bilen birmeňzeş däldir.
Stepdim-ädim: Gatnaşykly tanamak derwezesi
- Düşünmek bilen okaň. Kody kabul etmezden ozal düşüniň; Düşünmedik koduňyzy birleşdirmäň. "Näme üçin işleýändigini" düşündirip bilmeseňiz, entek tassyklanmady.
- Barlygyny barlaň. Ulanylan her bir funksiýanyň, API we paketiň hakykatdanam bardygyny we dogry ulanylýandygyny tassyklaň (galýusinasiýa derwezesi).
- Awtomatlaşdyrylan gurallary işlediň. Düzediji, linter (stil / ýalňyşlyk skaneri), görnüşi barlaýjy, birlik synaglary we mümkin bolsa SAST (Statiki amaly howpsuzlyk synagy - gowşak goralan ýerleriň koduny skanerleýän gural).
- Howpsuzlyk nukdaýnazaryndan serediň. Giriş dogrymy? Talap parametrleşdirilendirmi? Munuň syry jaýlanýarmy? Awtorizasiýa gözegçiligi barmy?
- Çeşmesini we ygtyýarnamasyny barlaň. Täze garaşlylyklar ygtyýarlymy? Çykyş belli kod bazasyna aşa meňzeýärmi?
- Howpsuzlyk taýdan möhüm bolsa, hünärmenleriň razylygyny soraň. Hakyky tanamak, töleg, kriptografiýa, giriş gözegçiligi ýaly ugurlarda başarnykly inerener tarapyndan garaşsyz gözden geçirmek hökmanydyr.
Üç kiçi waka
1-nji hadysa - Gözleg derwezesinde tutulan SQL sanjymy. AI gözleg nokady üçin ("... WHERE name = '" + q + "'") ulanyjynyň girişini gönüden-göni SQL talaplaryna birleşdirýän kod döredýär. Kod işleýärdi we synagdan geçdi. Howpsuzlyga gönükdirilen gözleg we SAST skaneri muny ele aldy; Parametrlenen soraga öwrüldi (taýýarlanan jümle). Eger tutulmadyk bolsa, maglumatlaryň syzmagynyň gowşak goralanlygy bolardy.
2-nji hadysa - galýusinasiýa bukjasy. AI bir mesele üçin ýok npm paketini (çalt howpsuz-parse) teklip etdi. Öndüriji ony gurnamaga synanyşanda paket tapylmady. Iň erbet tarapy: käbir ýagdaýlarda hüjümçiler şeýle "arwah" paket atlaryny hakyky, zyýanly paketler (garaşlylyk bulaşyklygy) bilen dolduryp bilerler. Sapak: her bir maslahat berilýän bukjany resmi reýestre we göçürip almak / tehniki hyzmat taryhyna garşy barlaň.
3-nji hadysa - Ygtyýarnamanyň gabat gelmezligi. AI tarapyndan teklip edilen elli ýoldaş kitaphanada, edaranyň önüm ygtyýarnamasyna laýyk gelmeýän güýçli kopileft ygtyýarnamasy bardy. Baglylyk ygtyýarnamasynyň skaneri bu barada habar berdi; Topar ygtyýarnamany laýyk alternatiwa bilen çalyşdy. Barlamazdan önüm paýlanyşynda kanuny ýük dörärdi.
Göçürip boljak dört şablon
Girişden ozal öz-özüni barlamak:
Aşakdaky AI döredilen kody kabul etmezden ozal barlaň: 1) Ulanylýan her bir funksiýa / API / paket hakykatdanam barmy? Güman edilýänleri belläň.2) Nädogry giriş, SQL / buýruk birleşmesi, gömülen syr, gowşak kripto barmy? 3) Düzedilmedik näsazlyklar / gyrasy ýagdaýlar näme? Her tapyşy "belli / ähtimal" diýip belläň we düzedişleri teklip ediň. {{Code}}
Howpsuzlyga gönükdirilen syn:
Howpsuzlyk gözi bilen bu kody gözden geçiriň. OWASP stiliniň umumy gowşak taraplaryny gözläň: sanjym, döwülen tassyklamak / ygtyýarnama, maglumatlary duýgur açmak, ygtybarly deserializasiýa, tassyklanmadyk gönükdirme. Her tapyndy üçin: töwekgelçilik, ekspluatasiýa ssenariýasy, düzediş. Bu deslapky barlag; möhüm netijeleri adam howpsuzlygy synyna gönükdiriň. {{kod}}
Baglylyk we ygtyýarnamany barlamak:
Bu kod bilen goşulan / teklip edilýän baglylyklary sanaň. Her biri üçin: paket hakykatdanam barmy, saklanylýarmy, adaty ygtyýarnamasy näme (TERJIME EDILMELI) we bu taslama üçin zerurmy ýa-da bar bolan gural bilen edilip bilnermi? {{Kod ýa-da garaşlylyk sanawy}}
Ygtybarly resminama (önümçilikde):
{{Taslama} for üçin kod ýazyň. MANDATORY howpsuzlyk düzgünleri: - externalhli daşarky girişleri barlaň / arassalaň.- Diňe maglumat bazasyna girmek üçin parametrleşdirilen talaplary ulanyň.- Kodlara syr goýmaň; daşky gurşaw üýtgeýjisini / gizlin dolandyryjyny kabul ediň - ýalňyşlyklary ýuwutmaň; Manyly serediň. Koduň bu düzgünlere 3 elementde nädip laýyk gelýändigini düşündiriň.
Gowşak haýyş / Güýçli haýyş
Gowşak: "Ulanyjy ady bilen gözleýän talap ýazyň." (Sanjymlara sezewar bolan kod bolup biler.)
Güýçli: "Ulanyjy ady bilen gözleýän bir funksiýa ýazyň. Ulanyjynyň girişini hiç haçan setir hökmünde goşmaň; parametrli talapdan peýdalanyň (taýýarlanan jümle). Girişiň uzynlygy we nyşanlary bilen tassyklaň. Kodyň sanjym üçin ýapykdygyny 2 sözlemde düşündiriň."
Güýçli wersiýa başyndan ygtybarly nagşy girizýär; Şeýlelik bilen, gowşaklygyň soňrak tutulman, asla ýüze çykmazlygyny üpjün edýär. Şeýle-de bolsa, döredilen kody barlamak derwezelerinden geçirmek zerurdyr.
Hakyky tanamak gatlagy
Gural / usul
"AI" ýeterlikmi?
takyklygy
Ilygyndy, synag, wizual gözden geçirmek
ýok
API / paket hakykaty
Resmi resminama / ýazga gözegçilik
ýok
Howpsuzlyk
SAST, howpsuzlyk syn
ýok
Ygtyýarnama / çeşme
Baglylyk we ygtyýarnamany barlamak
ýok
Howpsuzlyk-möhüm logika
Hünärmen inereneriň tassyklamasy
.Ok
Jogapkärçiligi geçirip bolmaz
AI guralynyň öndüren kody bilen ýüze çykýan ýalňyşlyklar, gowşaklyklar ýa-da düzgün bozmalar üçin jogapkärçilik gural üpjün edijisine däl-de, şol kody ýygnaýan we paýlaýan topara degişlidir. Bu professional hakykat we kanuny hakykat: gol çekýärsiňiz. Şonuň üçin "AI ony öndürdi" bahana däl, goşmaça seresaplyk üçin esas. Hususan-da, howpsuzlyk-kritiki ulgamlarda AI önümi islendik şertde ökde inerener tarapyndan gözden geçirilmeginiň we tassyklanmagynyň ornuny tutmaýar; Köplenç AI şol inereneriň tizligini ýokarlandyrýan meýilnama hödürleýär.
Maslahat: Toparyňyzda “AI döredilen kod üçin tassyklama derwezesi” (gurmak + synag + howpsuzlyk skaneri + wizual gözleg) diýip atlandyrýan gysga gözegçilik sanawyňyzy dörediň. Bu derweze endige öwrülensoň, tizligi ýitirmek iň az we töwekgelçiligi azaltmak iň ýokarydyr.
Adaty ýalňyşlyklar
- "Howpsuz" bilen "işleýär". Synagdan geçen kod hüjüme sezewar bolup biler.
- Barlamazdan paket / API ulanmak. Galýusinator paketleri hem korrumpirlenýär, hem-de howpsuzlyk howpuny döredýär.
- Awtomatlaşdyrylan gurallardan aýlanyp geçmek. Linter, tip barlaýjy we SAST adamlaryň sypdyrýan zatlaryny arzan tutýar.
- Ygtyýarnamany äsgermezlik etmek. Nädogry ygtyýarly garaşlylyk paýlamak üçin kanuny ýük döredýär.
- Jogapkärçiligi ulagda goýmak. Topar önümçilikdäki kod üçin jogapkärdir; “AI muny etdi” bahana däl.
Gysgaça
AI çykyşyny kabul etmek üç gatlak barlagy talap edýär: dogrulygy (düzmek, synag, wizual gözden geçirmek), howpsuzlyk (SAST we howpsuzlyga gönükdirilen syn) we çeşme / ygtyýarnama (garaşlylygy barlamak). Ulanylan her bukjanyň we API-iň hakykatdanam bardygyny tassyklaň, başdan başlap ygtybarly nagyşlary ýerine ýetiriň we ökde inerener tarapyndan tassyklamak üçin howpsuzlyk kritiki koduny iberiň. “Işler” howpsuzlygy aňlatmaýar we “öndürilen AI” jogapkärçiligi aýyrmaýar. Barlag derwezesi tizlik däl-de, hünär derejesiniň bahasydyr.
Programma meselesi
AI-e bilkastlaýyn howpsuzlyga duýgur bir mesele beriň (meselem, “ulanyjy girişi bilen maglumat bazasyny gözleýän funksiýa”), bu gezek ygtybarly nusga goýmazdan. Gelýän kody “kabul etmezden ozal öz-özüňi barlamak” we “howpsuzlyga gönükdirilen gözden geçirmek” şablonlary arkaly geçiriň: sanjym, gömülen gizlin, galýusinirlenen paket ýa-da tassyklanmadyk giriş barmy? Soňra “ygtybarly nagyş goýmak” şablony bilen ýene bir meseläni soraň we iki netijäni deňeşdiriň. Mümkin bolsa, linter / SAST guralyny işlediň we netijeleri AI-iň öz-özüni düzgünleşdirmegi bilen deňeşdiriň.
gözegçilik sanawy
- [] AI çykyşyny üç gatlakda barlaýaryn: takyklyk, howpsuzlyk we ygtyýarnama.
- [] Ulanylan her bir funksiýanyň, API we bukjanyň hakykatdanam bardygyny tassyklaýaryn.
- [] Kompil, synag, linter we mümkin bolsa SAST gurallaryny işledýärin.
- [] Ilkibaşdan ygtybarly nagyşlary (parametrleşdirilen talap, giriş tassyklamasy, gizlin dolandyryş) girizýärin.
- [] Ygtyýarnamany we täze garaşlylygyň talaplaryny barlaýaryn.
- [] Ygtyýarly inereneriň tassyklamagy üçin howpsuzlyk-möhüm kody tabşyrýaryn we jogapkärdigime düşünýärin.