Gnóthachain:
- Cumas hintleachta saorga a úsáid mar dhara súl agus bratach a chur ar leochaileachtaí aicme OWASP (instealladh, rún crua, rialú rochtana) sa chód trí chomhthéacs a thabhairt
- Cumas deireadh a chur le dearfacha bréagacha arna dtáirgeadh ag hintleachta saorga le comhthéacs agus cosc a chur le caitheamh le gach toradh mar fhíor-leochaileacht gan é a bhailíochtú
- Cumas a aithint go bhféadfadh leochaileachtaí/fabhtanna nua a thabhairt isteach leis an bhfeistiú a mhol an hintleachta saorga agus gach paiste a chur tríd an ngeata athbhreithnithe agus tástála
Tá leochaileachtaí laistigh de bhogearraí i measc na leochaileachtaí is costasaí toisc go bhfuil siad leabaithe sa táirge ón tús agus a dháileadh ar na milliúin úsáideoirí. Is éard atá i gceist le hathbhreithniú cód slán ná an próiseas a bhaineann le cód foinse a léamh líne ar líne agus leochaileachtaí a ghabháil - instealladh SQL, leochaileacht fíordheimhnithe, pasfhocal crua-chódaithe, údarú mícheart - sula dtéann siad i dtáirgeadh. Nuair a dhéantar é de láimh, tá sé mall agus tuirseach; Tá sé éasca leochaileacht a chailleann i mbonn cód mór.
Tá AI cumhachtach ag athbhreithniú cód ar dhá chúis: is teanga é cód freisin, agus tá AI go maith ag aithint patrún. Is féidir le AI patrúin chontúirteacha a chur in iúl go tapa i bpíosa cód (ionchur úsáideora a chur go díreach isteach sa cheist, stóráil sonraí gan chriptiú, bailíochtú ionchuir in easnamh), mínigh cén fáth a bhfuil gach ceann acu contúirteach, agus mol réiteach. Ach ní fheiceann an AI comhthéacs oibriúcháin iomlán an chóid (d’fhéadfadh go mbeadh an t-ionchur á imréiteach ag ciseal eile), féadfaidh sé leochaileacht nach bhfuil ann (dearfach bréagach) a chumadh nó fíor-leochaileacht (diúltach bréagach) a chailleann), agus is tábhachtaí, féadfaidh an "shocrú" atá beartaithe aige leochaileacht nó fabht nua a thabhairt isteach. Is é AI an dara súl agus an pointeoir in athbhreithniú an chóid; Socraíonn an forbróir agus an saineolaí slándála cibé an fíor-leochaileacht é toradh agus an bhfuil an tsocrú ceart agus sábháilte.
Céimeanna athbhreithnithe cód
- Tabhair scóip agus comhthéacs. Cén teanga, cén creat, cá háit a nglacann an cód seo ionchur, cá dtugann sé aschur, cén ciseal a n-oibríonn sé? Cruthaíonn athbhreithniú cód gan comhthéacs dearfacha bréagacha.
- Scan le haghaidh patrúin contúirteacha. Cuardaigh aicmí leochaileachta AI ar a dtugtar (cosúil le OWASP Top 10): instealladh, fíordheimhniú, nochtadh sonraí íogaire, rialú rochtana.
- Bíodh údar maith le gach toradh. I gcás gach bratach: cén líne, cén aicme leochaileachta, conas is féidir í a shaothrú, cad é an fhianaise. Ní ghlactar dáiríre le cinneadh nach bhfuil údar leis.
- Deireadh a chur le dearfach bréagach. An bhfuil an t-ionchur á ghlanadh i ndáiríre, an bhfuil an cosán sin inrochtana i ndáiríre - seiceáil leis an gcomhthéacs.
- Fíoraigh an socrú. Deimhnigh go ndúnann an paiste atá molta ag AI an leochaileacht, nach dtugann sé isteach leochaileachtaí/fabhtanna nua, agus go bhfuil pas faighte aige sa tástáil.
- Faomhadh daonna. Déanann Forbróir + saineolaí slándála athbhreithniú ar an gcinneadh agus ar an socrú; Sin é an chaoi a dtéann sé isteach sa stór cód.
Téarmaí: SAST (Tástáil Slándála Feidhmchláir Statach — tástáil slándála statach a dhéanann anailís ar an gcód foinse gan é a rith). DAST (Dinimiciúil - tástáil dhinimiciúil a dhéanann tástáil ar an bhfeidhmchlár reatha go seachtrach). Is é OWASP Top 10 an liosta caighdeánach de na leochaileachtaí feidhmchlár gréasáin is coitianta. Is leochaileacht é instealladh a dhéantar mar gheall ar ionchur úsáideora a léirmhíniú mar ordú/ceist (m.sh. instealladh SQL). Is é ceist pharaiméadair an modh ceart a chuireann cosc ar instealladh tríd an ionchur a scaradh ón gcód.
Tábla de na ranganna leochaileachta coitianta
Aicme leochaileachta
Siomptóm (i gcód)
réiteach ceart
Gaiste AI
Instealladh SQL
Ag glacadh le hionchur isteach sa cheist
Ceist paraiméadaraithe
Is féidir neamhaird a dhéanamh ar shláintíocht
rún códaithe crua
Pasfhocal/eochair sa chód
Slán rúnda ( cruinneachán), env
Bréagach dearfach (sampla/tástáil)
Fíordheimhniú lag
Rialú in easnamh/mícheart
Rialú cumhachtach, láraithe
chailleann comhthéacs
Rialú rochtana lochtach
Gan seiceáil údaraithe
Údarú taobh freastalaí
Ní thuigeann sreabhadh casta
Nochtadh sonraí íogair
Stóráil/logáil gan pasfhocal
Criptiú, chumhdach
Ní fios criticiúlacht
Srathú neamhchinnteach
Sonraí neamhiontaofa a dhíshrianú
Parsáil slán
Chailleann patrún annamh
trí chás mion
Cás 1 - An t-instealladh iarbhír a ghlacadh. Tá feidhm rochtana sonraí ag forbróir chun an AI a scrúdú. Déanann an AI an líne a mharcáil ina bhfuil an luach userId ón úsáideoir comhchuí go díreach isteach sa téacs SQL agus deir "is é seo an t-instealladh clasaiceach SQL, cas isteach i gceist le paraiméadar é"; Soláthraíonn ceartú samplach. Deimhníonn an forbróir nach bhfuil an t-ionchur sláintithe in aon áit eile, fíoraíonn sé gur fíor-leochaileacht é, cuireann sé an fiosrúchán paraiméadar molta i bhfeidhm, agus scríobhann sé tástáil. Chuir AI béim ar an leochaileacht; tháinig tástáil fíoraithe agus ceartúcháin ón bhforbróir.
Cás 2 - Rún seasta dearfach bréagach. Feiceann an AI an líne password = "test1234" i gcomhad agus deir "criticiúil: pasfhocal códaithe crua". Seiceálann an forbróir an comhthéacs: is comhad tástála aonaid é seo, sonraí tástála caocha, nach scaoiltear isteach sa táirgeadh agus nach gcuirtear chuig fíorchóras iad. Is dearfach bréagach é an toradh. Déanann an forbróir é seo a dhoiciméadú ach ní dhéanann sé beart mar nach rún fíor é. Ceacht: Ní mór comhartha "rún crua" AI a dhíchur trí chomhthéacs; Ní rún é gach teaghrán.
Cás 3 - Ceartúchán leochaileachta nua. Molann AI socrú le haghaidh leochaileacht XSS (scripteáil tras-láithreáin); ach glanann an cód a mholann sé an t-ionchur san áit mícheart agus scipeann sé an t-ionchódú aschuir i réimse eile; Mar thoradh air sin, ní dhúnann an bhearna go hiomlán. Déanann an saineolaí slándála athbhreithniú ar an gceartú, tugann sé faoi deara an códú atá in easnamh, agus socraíonn sé ag an gciseal ceart é. Ceacht: Níl an paiste a mholann AI slán go huathoibríoch; Déantar gach socrú a athbhreithniú agus a thástáil.
Leid lag / Pras láidir
Leid lag:
An bhfuil bearna sa chód seo, ceartaigh é: [cód]
Ní thugann an leid seo comhthéacs ar bith (teanga, creat, foinse ionchuir), ní iarrann sé fírinniú, ní cheistíonn sé an dearfach bréagach, agus tá sé oscailte glacadh leis go dall leis an gceartúchán a rinne an AI. Comharthaí measctha AI de leochaileacht fíor agus ceann nach bhfuil ann.
Leid chumhachtach:
Do ról: cúntóir atá mar an DARA EYE don fhorbróir in athbhreithniú cód slán. Cinnteoireacht; smaoineamh ar an socrú a chuirtear i bhfeidhm go díreach. Cód: [sonraigh teanga/creatlach].Context: this function [foinse ionchuir: e.g. faigheann [iarratas HTTP seachtrach], scríobhann chuig [ceann scríbe aschuir]. Do thasc: (1) cuir in iúl do leochaileachtaí féideartha leis an rang OWASP, tabhair uimhir líne + cén fáth a bhfuil riosca ag baint leis + conas leas a bhaint as + fianaise le haghaidh gach ceann díobh, (2) scríobh cás dearfach bréagach 1 ar a laghad do gach toradh (m.sh. má dhéantar an t-ionchur a shláintiú i sraith eile), (3) mol réiteach ach leis an gcomhartha "[athbhreithniú + scríobh an triail]"; Déan measúnú freisin an dtugann an deisiú leochaileachtaí/fabhtanna nua isteach. Leochaileacht bhréige á cur leis.[cód]
Tugann leid láidir comhthéacs, iarrann sé rang OWASP agus fianaise, ceistíonn sé bréagach dearfach agus rioscaí feabhsúcháin, cuireann sé brú ar athbhreithniú daonna.
Teimpléid leid ar féidir a chóipeáil
TEIMPLÉAD SCÁLA leochaileachta Scrúdaigh an cód [teanga/creatlach] do OWASP Barr 10. I gcás gach toraidh fhéideartha: uimhir líne, aicme leochaileachta, cén fáth a bhfuil sé contúirteach, saothrú samplach, neart na fianaise (cinnte/dóchúil/lag). Comhthéacs: ionchur [foinse], aschur [sprioc]. Torthaí déanta a chur leis; Mura bhfuil tú cinnte, clóscríobh "[ní mór a fhíorú]". Cód: [greamaigh]
PATRÚN DÍOTHAITHE BRÉAGACH DEARFACH Maidir leis an gcinneadh cód seo a leanas, liostaigh na cásanna NACH bhfuil fíor-leochaileacht ann: an bhféadfaí an t-ionchur a ghlanadh ag sraith eile, an bhfuil an cosán seo inrochtana, an tástáil/sampla an luach seo, an bhfuil an creat cosanta go huathoibríoch. Scríobh conas a dheimhniú do gach ceann acu. Ag fáil: [greamaigh]
TEIMPLÉAD MEASÚNACHTA DEISIÚCHÁIN Mol socrú don leochaileacht seo a leanas; ansin déan do shocrú féin a léirmheas: (1) an ndúnann sé an leochaileacht i ndáiríre, (2) an dtugann sé isteach leochaileacht/fabht nua, (3) cén tástáil ar cheart dom a scríobh (cás dearfach agus diúltach), (4) tionchar feidhmíochta/feidhmiúlachta. Déanfaidh mé athbhreithniú agus tástáil ar an socrú. Leochaileacht + cód: [greamaigh]
TEIMPLÉAD MÚINTEOIREACHTA PÁTRÚN SLÁNDÁLA don aicme leochaileachta [e.g. Instealladh SQL] go comparáideach taispeántar patrún clóscríofa sábháilte agus patrúin earráideacha coitianta sa teanga/creatlach seo. Riail ghinearálta + tabhair cód mar shampla; ach ba mhaith liom tú a iarraidh ar an comhthéacs roimh é a chur i bhfeidhm i mo chód. Teanga/creat: [scríobh]
Botúin choitianta
- Léirmheas gan comhthéacs. Gan teanga, creat, agus comhthéacs ionchuir/aschuir, cuireann AI mearbhall ar thorthaí fíor agus bréagacha araon; Bí cinnte comhthéacs a thabhairt.
- Botún gach comhartha le haghaidh laige fíor. Táirgeann AI dearfacha bréagacha (sonraí tástála, ionchur glanta ag ciseal eile); Sift gach toradh leis an gcomhthéacs.
- Ceartú an AI a chur i bhfeidhm go dall. Féadfaidh paiste molta leochaileachtaí/fabhtanna nua a thabhairt isteach; tástálacha a athbhreithniú agus a scríobh.
- Ag muinín an diúltach bréagach. Fiú má deir an AI "gan aon leochaileachtaí", scrúdaigh na cosáin ríthábhachtacha tú féin; Ní bhraitheann scanadh statach gach leochaileacht.
- An cód/rún a thabhairt don uirlis sheachtrach. Is maoin intleachtúil agus leochaileacht iad cód príobháideach agus fíor-rúin (eochair, pasfhocal); uirlisí corparáideacha scoite a úsáid gan ainm.
Leid: Nuair a bhíonn an cód athbhreithnithe AI agat, is é an scagaire is éifeachtaí ná “neart na fianaise” (cinnte/dóchúil/lag) a iarraidh le haghaidh gach toraidh. Is dearfach bréagach iad formhór na dtorthaí a bhfuil marcáilte “lag” orthu; leithdháileann tú do chuid fuinnimh ar na cinn “cinnte”.
Rabhadh: Níor cheart go rachadh an socrú slándála atá beartaithe ag AI isteach sa stóras gan tástáil a dhéanamh air. Féadfaidh "shocrú" mícheart an leochaileacht a fhágáil oscailte agus earráid fheidhmiúil sa táirgeadh a bheith mar thoradh air; Téann gach paiste tríd an geata athbhreithnithe agus tástála.
Go hachomair
Is é athbhreithniú cód slán an bealach is saoire chun leochaileachtaí a ghabháil sula dtéann siad i dtáirgeadh, agus ós rud é gur teanga é an cód, bíonn AI ina dhara súl cumhachtach anseo: bratacha patrúin chontúirteacha, míníonn riosca, molann réitigh. Ach ní fheiceann an AI an comhthéacs oibriúcháin iomlán, táirgeann sé dearfacha bréagacha agus diúltacha bréagacha, agus féadfaidh an paiste a mholann sé leochaileachtaí nua a thabhairt isteach. Mar sin tá sé chéim ag an athbhreithniú (comhthéacs, scagadh, fírinniú, díothú bréagach dearfach, fíorú socraithe, ceadú an duine) agus luíonn an cinneadh leis an bhforbróir agus leis an saineolaí slándála. Trí phrionsabal: ní léirmhínítear aon toradh gan comhthéacs, cuirtear deireadh le gach comhartha le comhthéacs, ní théann aon shocrú isteach sa stóráil gan tástáil. Agus ní thugtar an cód/rún riamh d’uirlis sheachtrach gan anaithnidiú.
Tasc feidhmchláir
Tóg blúire cód samplach (bíodh sé ag baint codanna íogaire de do chód féin nó de chód samplach a bhfuil leochaileachtaí ann). Iarr ar AI é a scrúdú leis an teimpléad “Scanadh Leochaileachta”; Cuir an teimpléad "Díchur Bréagach Dearfach" i bhfeidhm ar gach toradh agus cuir deireadh leis na cinn réadacha. Déan ceartú an chinnidh is tromchúisí leis an teimpléad "Meastóireacht Feabhsúcháin", athbhreithnigh é féin agus scríobh cás tástála dearfach + diúltach amháin. Tabhair faoi deara cé mhéad torthaí a bhí bréagach dearfach.
seicliosta
- [ ] Thug mé an teanga, an creat agus an comhthéacs ionchuir/aschuir sula ndearna mé athbhreithniú ar an gcód.
- [ ] D'iarr mé uimhir líne, aicme leochaileachta, cosán saothraithe agus fianaise do gach toradh.
- [ ] Scrúdaigh mé gach toradh le haghaidh dearfacha bréagacha le comhthéacs.
- [ ] Níor chuir mé ceartú an AI i bhfeidhm go dall; Rinne mé athbhreithniú agus scríobh mé tástáil.
- [ ] In ainneoin an aschuir "Gan leochaileachtaí", scrúdaigh mé na cosáin criticiúla mé féin.
- [ ] Rinne mé anaithnid ar an gcód/rúin nó d’úsáid mé uirlisiú corparáideach aonraithe.
- [ ] Tá an fionnachtain agus an deisiúchán curtha ar aghaidh agam trí fhorbróir + ceadú slándála.