FixVibe
Covered by FixVibecritical

In-stealladh SQL: A’ cur casg air ruigsinneachd stòr-dàta gun chead

Tha in-stealladh SQL (SQLi) na chugallachd èiginneach far am bi luchd-ionnsaigh a’ cur bacadh air ceistean stòr-dàta an tagraidh. Le bhith a’ stealladh co-chàradh droch-rùnach SQL, faodaidh luchd-ionnsaigh dearbhadh a sheachnadh, coimhead air dàta mothachail leithid faclan-faire agus mion-fhiosrachadh cairt creideis, no eadhon cron a dhèanamh air an fhrithealaiche bunaiteach.

CWE-89

Buaidh SQL Injection

Leigidh in-stealladh SQL (SQLi) le neach-ionnsaigh casg a chuir air na ceistean a chuireas tagradh chun stòr-dàta aige [S1]. Tha a’ phrìomh bhuaidh a’ toirt a-steach ruigsinneachd gun chead air dàta mothachail leithid faclan-faire luchd-cleachdaidh, mion-fhiosrachadh cairt creideas, agus fiosrachadh pearsanta [S1].

A bharrachd air goid dàta, faodaidh luchd-ionnsaigh gu tric clàran stòr-dàta atharrachadh no a dhubhadh às, a’ leantainn gu atharrachaidhean leantainneach ann an giùlan tagraidh no call dàta [S1]. Ann an cùisean àrd-dian, faodar SQLi a mheudachadh gus am bun-structar deireadh cùil a mhilleadh, ionnsaighean diùltadh seirbheis a chomasachadh, no cùl-raon leantainneach a thoirt a-steach do shiostaman na buidhne [S1][S2].

Adhbhar bunaiteach: Làimhseachadh cuir a-steach mì-shàbhailte

Is e prìomh adhbhar in-stealladh SQL neodachadh neo-iomchaidh de eileamaidean sònraichte a thathas a’ cleachdadh ann an àithne SQL [S2]. Bidh seo a’ tachairt nuair a bhios tagradh a’ togail cheistean SQL le bhith a’ co-chur a-steach le buaidh bhon taobh a-muigh gu dìreach a-steach don t-sreang ceiste [S1][S2].

Leis nach eil an cuir a-steach air a sgaradh gu ceart bho structar na ceiste, faodaidh eadar-theangair an stòr-dàta pàirtean de chuir a-steach an neach-cleachdaidh a chuir an gnìomh mar chòd SQL seach a bhith ga làimhseachadh mar dàta litireil [S2]. Faodaidh an so-leòntachd seo nochdadh ann an diofar phàirtean de cheist, a’ toirt a-steach aithrisean SELECT, luachan INSERT, no aithrisean UPDATE [S1].

Ceartachaidhean concrait agus lasachaidhean

Cleachd Ceistean Parameterized

Is e an dòigh as èifeachdaiche air casg a chuir air in-stealladh SQL a bhith a’ cleachdadh cheistean parameterized, ris an canar cuideachd aithrisean ullaichte [S1]. An àite a bhith a’ ceangal sreangan, bu chòir do luchd-leasachaidh uidheamachdan structarail a chleachdadh a chuireas an gnìomh sgaradh dàta agus còd [S2].

Prionnsabal na Sochair as lugha

Bu chòir do thagraidhean ceangal ris an stòr-dàta a’ cleachdadh na sochairean as ìsle a tha riatanach airson an gnìomhan [S2]. Cha bu chòir sochairean rianachd a bhith aig cunntas tagradh lìn agus bu chòir a bhith air a chuingealachadh ris na bùird no na h-obraichean sònraichte a tha riatanach airson a ghnìomh [S2].

Dearbhadh cuir a-steach agus còdachadh

Ged nach eil e na àite parameterization, tha dearbhadh cuir a-steach a’ toirt seachad dìon domhainn [S2]. Bu chòir do thagraidhean ro-innleachd a tha aithnichte agus math a chleachdadh, a’ dearbhadh gu bheil cuir a-steach a rèir seòrsa, faid agus chruthan ris a bheil dùil [S2].

Mar a nì FixVibe deuchainn air a shon

Tha FixVibe mu thràth a’ còmhdach in-stealladh SQL tron ​​mhodal sganair active.sqli le gata. Bidh sganaidhean gnìomhach a’ ruith dìreach às deidh dearbhadh seilbh fearainn agus teisteanas. Bidh an t-seic a’ snàgail puingean-crìochnachaidh GET den aon thùs le paramadairean ceiste, a’ stèidheachadh freagairt bun-loidhne, a’ coimhead airson neo-riaghailteachdan boolean sònraichte SQL, agus ag aithris air lorg a-mhàin às deidh dearbhadh ùine thar iomadh faid dàil. Bidh sganaidhean ath-reic cuideachd a’ cuideachadh le bhith a’ faighinn a’ bhun-adhbhar nas tràithe tro code.web-app-risk-checklist-backfill, a tha a’ comharrachadh gairmean SQL amh a chaidh a thogail le eadar-theachd teamplaid.