SilentShield 2.6 jagħlaq lakuna li kellha l-prezz tar-reġistrazzjonijiet fil-checkout ta’ ħanut wieħed: il-formoli li jintbagħtu b’click fuq buttuna u AJAX minflok submit normali ma kinux jiġu rrappurtati lilna. Dan l-artikolu jispjega x’ġara, x’inbidel u x’għandek tagħmel. Il-lista sħiħa tinsab fil-changelog.
X’mar ħażin
Il-widget ikejjel it-tajpjar u l-moviment tal-maws u jirrapporta r-riżultat meta żjaret tibgħat formola. Kien jisma’ l-avveniment submit tal-browser. Ċerti ħwienet qatt ma jqajmu dan l-avveniment. Il-checkout ta’ OpenCart 3, pereżempju, jgħabbi l-pass tar-reġistrazzjoni permezz ta’ AJAX u jibgħatu b’buttuna sempliċi u jQuery.ajax.
Ir-riżultat: is-server tiegħek staqsa lil /v1/verify dwar żjara li għaliha konna rċevejna biss l-ewwel avveniment tal-paġna. Mingħajr dejta tat-tajpjar u tal-maws il-verdett kien “suspettuż”, u r-reġistrazzjoni falliet għal persuna reali. Il-formola kienet protetta, imma l-protezzjoni ma setgħetx tara ż-żjara.
X’jinbidel
Bil-verżjoni 2.6 il-widget jagħraf ukoll dan it-tip ta’ sottomissjoni. Jħares lejn it-talba li ġġorr il-behavior_nonce. Jekk din it-talba titlaq mill-paġna mingħajr avveniment submit u l-formola ma tkunx ġiet ivverifikata s’issa, il-widget iżommha għal mument, jirrapporta s-sottomissjoni bid-dejta miġbura tat-tajpjar u tal-maws, u jibgħat it-talba meta jasal il-verdett. Jekk ma tasal l-ebda risposta fi żmien 15-il sekonda, it-talba tintbagħat xorta waħda u s-server tiegħek jiddeċiedi, bħal qabel.
L-affarijiet l-oħra jibqgħu kif kienu: il-formoli b’submit normali, it-talbiet mingħajr nonce u s-sottomissjonijiet sempliċi tal-paġna ma jinmesux.
Kif ittestjajna
Bnejna mill-ġdid il-checkout ta’ OpenCart fl-ambjent tat-test lokali tagħna b’jQuery reali u ħallejna server simulat ta’ klijent isejjaħ /v1/verify. Bis-swiċċ mitfi, il-formola mibgħuta b’click u AJAX ġiet miċħuda (HTTP 403, “suspettuż”, raġunijiet NO_TYPING_PAUSES u NO_MOUSE_MOVEMENT). Bis-swiċċ mixgħul, l-istess żjara ġiet aċċettata (HTTP 200, “bniedem”). Formola b’submit normali, sottomissjoni sempliċi tal-paġna u talba mingħajr nonce aġixxew bl-istess mod bis-swiċċ mixgħul u mitfi.
X’għandek tkun taf
- Ikopri t-talbiet magħmula b’
XMLHttpRequest, li jinkludijQuery.ajax. Il-formoli mibgħuta b’fetch()għadhom mhumiex koperti, ħlief il-block checkout ta’ WooCommerce, li għandu l-ġestjoni tiegħu stess. - Il-verifika min-naħa tas-server tiegħek ma tinbidilx. Kompli sejjaħ
/v1/verifybin-nonce.