FixVibe
Covered by FixVibecritical

Injezzjoni SQL: Prevenzjoni ta' Aċċess għal Database Mhux Awtorizzat

L-injezzjoni SQL (SQLi) hija vulnerabbiltà kritika fejn l-attakkanti jinterferixxu mal-mistoqsijiet tad-database ta' applikazzjoni. Billi tinjetta sintassi SQL malizzjuża, l-attakkanti jistgħu jevitaw l-awtentikazzjoni, jaraw dejta sensittiva bħall-passwords u d-dettalji tal-karti tal-kreditu, jew saħansitra jikkompromettu s-server sottostanti.

CWE-89

Impatt tal-Injezzjoni SQL

Injezzjoni SQL (SQLi) tippermetti lil attakkant jinterferixxi mal-mistoqsijiet li applikazzjoni tagħmel fid-database tagħha [S1]. L-impatt primarju jinkludi aċċess mhux awtorizzat għal data sensittiva bħal passwords tal-utent, dettalji tal-karti ta 'kreditu, u informazzjoni personali [S1].

Lil hinn mis-serq tad-dejta, l-attakkanti spiss jistgħu jimmodifikaw jew iħassru r-rekords tad-database, li jwasslu għal bidliet persistenti fl-imġiba tal-applikazzjoni jew telf tad-dejta [S1]. F'każijiet ta 'severità għolja, SQLi jista' jiġi eskalat biex jikkomprometti l-infrastruttura back-end, jippermetti attakki ta 'ċaħda ta' servizz, jew jipprovdi backdoor persistenti fis-sistemi tal-organizzazzjoni [S1][S2].

Kawża Għerq: Immaniġġjar ta' Input Mhux Sikur

Il-kawża ewlenija tal-injezzjoni SQL hija n-newtralizzazzjoni mhux xierqa ta 'elementi speċjali użati fi kmand SQL [S2]. Dan iseħħ meta applikazzjoni tibni mistoqsijiet SQL billi tikkonkatena input influwenzat esternament direttament fis-sekwenza ta' query [S1][S2].

Minħabba li l-input mhuwiex iżolat sew mill-istruttura tal-mistoqsija, l-interpretu tad-database jista' jesegwixxi partijiet mill-input tal-utent bħala kodiċi SQL aktar milli jittrattah bħala data letterali [S2]. Din il-vulnerabbiltà tista' timmanifesta f'diversi partijiet ta' mistoqsija, inklużi dikjarazzjonijiet SELECT, valuri INSERT, jew dikjarazzjonijiet UPDATE [S1].

Fixs u Mitigazzjonijiet tal-Konkrit

Uża Mistoqsijiet Parameterizzati

L-aktar mod effettiv biex tiġi evitata l-injezzjoni SQL huwa l-użu ta 'mistoqsijiet parametrizzati, magħrufa wkoll bħala dikjarazzjonijiet ippreparati [S1]. Minflok konkatenazzjoni ta 'kordi, l-iżviluppaturi għandhom jużaw mekkaniżmi strutturati li jinfurzaw is-separazzjoni tad-dejta u l-kodiċi [S2].

Prinċipju tal-Inqas Privileġġ

L-applikazzjonijiet għandhom jikkonnettjaw mad-database billi jużaw l-inqas privileġġi meħtieġa għall-kompiti tagħhom [S2]. Kont ta' applikazzjoni tal-web m'għandux ikollu privileġġi amministrattivi u għandu jkun ristrett għat-tabelli jew operazzjonijiet speċifiċi meħtieġa għall-funzjoni tiegħu [S2].

Validazzjoni u Kodifikazzjoni tal-Input

Filwaqt li mhix sostitut għall-parametrizzazzjoni, il-validazzjoni tal-input tipprovdi difiża fil-fond [S2]. L-applikazzjonijiet għandhom jużaw strateġija ta' aċċettazzjoni magħrufa-tajba, li tivvalida li l-input jaqbel mat-tipi, it-tulijiet u l-formati mistennija [S2].

Kif FixVibe jittestja għaliha

FixVibe diġà tkopri l-injezzjoni SQL permezz tal-modulu tal-iskaner gated active.sqli. Skans attivi jitmexxew biss wara l-verifika u l-attestazzjoni tas-sjieda tad-dominju. Il-kontroll jitkaxkar punti finali GET tal-istess oriġini b'parametri ta' mistoqsija, jistabbilixxi rispons ta' linja bażi, ifittex anomaliji booleani speċifiċi għall-SQL, u jirrapporta biss sejba wara l-konferma tal-ħin fuq tulijiet ta' dewmien multipli. L-iskans tar-repożitorju jgħinu wkoll biex jinqabdu l-kawża ewlenija aktar kmieni permezz ta 'code.web-app-risk-checklist-backfill, li jimmarka sejħiet SQL mhux maħduma mibnija b'interpolazzjoni tal-mudelli.