Fahotana mahafaty amin'ny fiarovana ny tranokala: ny zavatra nianarantsika tamin'ny antontan'isa scanner vulnerability nandritra ny taona

Herintaona teo ho eo izay, natomboka izahay tao amin'ny DataLine fanompoana hikaroka sy hamakafaka ny vulnerability amin'ny rindranasa IT. Ny serivisy dia mifototra amin'ny vahaolana rahona Qualys, momba ny fiasan'izy ireo efa nolazainay. Nandritra ny herintaona niasana tamin'ny vahaolana dia nanao scans 291 ho an'ny tranokala samihafa izahay ary nanangona antontan'isa momba ny vulnerability mahazatra amin'ny rindranasa tranonkala. 

Ao amin'ny lahatsoratra etsy ambany dia hasehoko anao hoe inona marina ny lavaka amin'ny fiarovana ny tranokala miafina ao ambadiky ny ambaratonga samihafa. Andeha hojerentsika hoe inona ny fahalemena hitan'ny scanner matetika indrindra, ny antony mety hitrangan'izany, ary ny fomba hiarovana ny tenanao. 

Fahotana mahafaty amin'ny fiarovana ny tranokala: ny zavatra nianarantsika tamin'ny antontan'isa scanner vulnerability nandritra ny taona

Nozarain'i Qualys ho ambaratonga telo ny vulnerability rehetra amin'ny fampiharana tranonkala: ambany, antonony ary avo. Raha jerena ny fitsinjarana amin'ny alΓ lan'ny "henjana", dia toa tsy dia ratsy loatra ny zava-drehetra. Vitsy ny vulnerability miaraka amin'ny ambaratonga avo lenta, ny ankamaroany dia tsy mitsikera: 

Fahotana mahafaty amin'ny fiarovana ny tranokala: ny zavatra nianarantsika tamin'ny antontan'isa scanner vulnerability nandritra ny taona

Tsy midika ho tsy mampidi-doza anefa ny tsy mitsikera. Mety hiteraka fahavoazana lehibe koa izy ireo. 

Ny vulnerability "tsy mitsikera" ambony indrindra

  1. Faharefoana votoaty mifangaro.

    Ny fenitra ho an'ny fiarovana ny tranokala dia ny famindrana angon-drakitra eo amin'ny mpanjifa sy ny mpizara amin'ny alΓ lan'ny protocol HTTPS, izay manohana ny fanafenana ary miaro ny vaovao amin'ny fisakanana. 

    Ny tranonkala sasany dia mampiasa votoaty mifangaro: Afindra amin'ny alalan'ny protocol HTTP tsy azo antoka ny angona sasany. Izany no fomba fampitana azy matetika votoaty passive - fampahalalana izay misy fiantraikany amin'ny fampisehoana ny tranokala ihany: sary, css styles. Fa indraindray dia toy izao no fampitana azy votoaty mavitrika: scripts mifehy ny fihetsiky ny tranokala. Amin'ity tranga ity, amin'ny fampiasana rindrambaiko manokana, azonao atao ny mamakafaka ny vaovao miaraka amin'ny votoaty mavitrika avy amin'ny mpizara, manova ny valinteninao amin'ny lalitra ary manamboatra ny milina amin'ny fomba tsy nokasain'ny mpamorona azy. 

    Mampitandrina ny mpampiasa ny dikan-teny vaovao amin'ny navigateur fa tsy azo antoka ny tranokala misy votoaty mifangaro ary manakana ny atiny. Mahazo fampitandremana amin'ny navigateur ihany koa ny mpamorona tranonkala ao amin'ny console. Ohatra, toy izao ny fijery azy Firefox

    Fahotana mahafaty amin'ny fiarovana ny tranokala: ny zavatra nianarantsika tamin'ny antontan'isa scanner vulnerability nandritra ny taona

    Inona no mampidi-doza: Mampiasa protocole tsy azo antoka ny mpanafika mba hisakanana ny mombamomba ny mpampiasa, hanolo ny script ary handefa fangatahana amin'ny tranokala amin'ny anarany. Na dia tsy nampiditra angon-drakitra aza ny mpitsidika iray dia tsy miaro azy izany phishing - fahazoana vaovao miafina amin'ny fampiasana fomba fisolokiana. Ohatra, amin'ny fampiasana script, azonao atao ny mamindra ny mpampiasa amin'ny tranokala tsy azo antoka izay masquerade ho toy ny mahazatra ny mpampiasa. Amin'ny toe-javatra sasany, ny tranokala ratsy dia toa tsara kokoa noho ny tany am-boalohany, ary ny mpampiasa dia afaka mameno ny endriny ary manolotra angona tsiambaratelo. 

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Na dia nametraka sy nanamboatra mari-pankasitrahana SSL/TLS aza ny mpitantana ny tranokala, dia mety hipoitra ny fahalemena noho ny fahadisoan'ny olombelona. Ohatra, raha ao amin'ny iray amin'ireo pejy ianao dia tsy mametraka rohy havanana, fa rohy tanteraka avy amin'ny http, ary ankoatra izany dia tsy nanangana redirects avy amin'ny http mankany https ianao. 

    Afaka mahita votoaty mifangaro amin'ny tranokala ianao amin'ny alΓ lan'ny navigateur: tadiavo ny kaody loharanon'ny pejy, vakio ny fampandrenesana ao amin'ny console developer. Na izany aza, ny mpamorona dia tsy maintsy mitsambikina amin'ny kaody mandritra ny fotoana maharitra sy mandreraka. Azonao atao ny manafaingana ny dingana amin'ny fitaovana famakafakana mandeha ho azy, ohatra: SSL Check, rindrankajy Lighthouse maimaim-poana na rindrambaiko karama Screaming Frog SEO Spider.

    Ary koa, mety hipoitra ny vulnerability noho ny olana amin'ny code-code - code izay nolovaina. Ohatra, raha misy pejy novolavolaina amin'ny alΓ lan'ny mΓ΄dely taloha, izay tsy miraharaha ny fifindrana amin'ny tranokala mankany https.    

  2. Cookies tsy misy saina "HTTPOnly" sy "azo antoka".

    Ny toetra "HTTPonly" dia miaro ny cookies tsy ho voahodina amin'ny sora-baventy ampiasain'ny mpanafika hangalatra ny angona mpampiasa. Ny saina "azo antoka" dia tsy mamela cookies halefa amin'ny lahatsoratra mazava. Ny fifandraisana dia avela raha tsy ampiasaina ny protocol HTTPS azo antoka handefasana cookies. 

    Ireo toetra roa ireo dia voafaritra ao amin'ny fananana cookie:

    Set-Cookie: Secure; HttpOnly

    Inona no mampidi-doza: Raha tsy nofaritan'ny mpamorona tranonkala ireo toetra ireo, dia mety hanakana ny mombamomba ny mpampiasa avy amin'ny cookie ny mpanafika ary hanararaotra izany. Raha ampiasaina amin'ny fanamarinana sy fanomezan-dΓ lana ny cookies, dia afaka maka an-keriny ny fotoam-piasan'ny mpampiasa izy ary manao hetsika amin'ny tranokala amin'ny anarany. 

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Amin'ny ankapobeny, amin'ny rafitra malaza dia napetraka ho azy ireo toetra ireo. Fa jereo ny fandrindrana ny mpizara tranonkala ary apetraho ny saina: Set-Cookie HttpOnly; azo antoka.

    Amin'ity tranga ity, ny toetra "HTTPonly" dia hahatonga ny cookies ho tsy hitan'ny JavaScript anao manokana.  

  3. Fahasalamana mifototra amin'ny lalana.

    Ny scanner dia mitatitra ny fahalemena toy izany raha mahita rakitra azo idirana ho an'ny besinimaro na lahatahiry tranokala misy fampahalalana mety ho tsiambaratelo. Ohatra, izy io dia mahita ny rakitra fikirakirana rafitra tsirairay na ny fidirana amin'ny rafi-drakitra manontolo. Ity toe-javatra ity dia azo atao raha diso ny fametrahana zo amin'ny tranokala.

    Inona no mampidi-doza: Raha toa ka "miraikitra" ny rafi-drakitra, ny mpanafika dia afaka miditra ao amin'ny seha-pifaneraseran'ny rafitra miasa ary manandrana mitady lahatahiry misy tenimiafina raha voatahiry ao anaty lahatsoratra mazava (aza manao izany!). Na azonao atao ny mangalatra ny tenimiafina tenimiafina ary manery mafy ny tenimiafina, ary manandrana manandratra tombontsoa amin'ny rafitra ary mandroso lalindalina kokoa amin'ny fotodrafitrasa.  

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Aza adino ny zo fidirana ary amboary ny sehatra, ny mpizara tranonkala, ny fampiharana amin'ny tranonkala mba tsy ho azo atao ny "mandositra" ny lahatahiry tranonkala.

  4. Taratasy fampidirana angona saro-pady miaraka amin'ny famenoana mandeha ho azy.

    Raha mameno endrika matetika amin'ny tranokala ny mpampiasa iray, dia mitahiry izany fampahalalana izany amin'ny alΓ lan'ny fampiasa autofill ny mpitety azy. 

    Ny endrika amin'ny tranokala dia mety ahitana saha misy fampahalalana saro-pady, toy ny tenimiafina na laharan'ny carte de crΓ©dit. Ho an'ny sehatra toy izany dia ilaina ny manafoana ny fiasa autofill amin'ny tranokala. 

    Inona no mampidi-doza: Raha mitahiry vaovao saro-pady ny mpitety tranonkalan'ny mpampiasa, dia azon'ny mpanafika manakana azy io any aoriana, ohatra amin'ny alalan'ny phishing. Raha ny tena izy, ny mpamorona tranonkala iray izay nanadino an'io nuance io dia mametraka ny mpampiasa azy. 

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Amin'ity tranga ity, manana fifandirana mahazatra isika: ny fahamendrehana vs fiarovana. Raha mieritreritra momba ny traikefan'ny mpampiasa ny mpamorona tranonkala iray, dia azony atao ny misafidy ny autocomplete. Ohatra, raha zava-dehibe ny manaraka TorolΓ lana momba ny fahazoana votoatin'ny tranonkala - tolo-kevitra ho an'ny fidirana amin'ny atiny ho an'ireo mpampiasa manana fahasembanana. 

    Ho an'ny ankamaroan'ny navigateur, azonao atao ny manafoana ny autocomplete amin'ny toetra autocompete="off", ohatra:

     <body>
        <form action="/mg/form/submit" method="get" autocomplete="off">
          <div>
            <input type="text" placeholder="First Name">
          </div>
          <div>
            <input type="text" id="lname" placeholder="Last Name" autocomplete="on">
          </div>
          <div>
            <input type="number" placeholder="Credit card number">
          </div>
          <input type="submit">
        </form>
      </body>

    Saingy tsy mety amin'ny Chrome izany. Voahodina amin'ny fampiasana JavaScript izany, misy karazany iray amin'ny recipe eto

  5. Ny lohatenin'ny X-Frame-Options dia tsy napetraka ao amin'ny kaody tranokala. 

    Ity lohapejy ity dia misy fiantraikany amin'ny marika frame, iframe, embed, na zavatra. Miaraka amin'ny fanampiany dia azonao atao ny mandrara tanteraka ny fampidirana ny tranokalanao ao anaty frame. Mba hanaovana izany dia mila mamaritra ny sanda X-Frame-Options: mandΓ . Na azonao atao ny mamaritra ny X-Frame-Options: sameorigin, ary ny fampidirana ao anaty iframe dia tsy ho hita afa-tsy ao amin'ny fonenanao.

    Inona no mampidi-doza: Ny tsy fisian'ny lohapejy toy izany dia azo ampiasaina amin'ny tranokala maloto mba clickjacking. Ho an'ity fanafihana ity, ny mpanafika dia mamorona rafitra mangarahara eo an-tampon'ny bokotra ary mamitaka ny mpampiasa. Ohatra: ny mpisoloky dia mametraka pejy tambajotra sosialy amin'ny tranokala iray. Mihevitra ny mpampiasa fa manindry bokotra iray amin'ity tranokala ity izy. Fa kosa, voasakana ny tsindry ary alefa any amin'ny tambajotra sosialy izay misy fivoriana mavitrika ny fangatahan'ny mpampiasa. Izany no fomba handefasana spam amin'ny anaran'ny mpampiasa na hahazoana mpanjifa sy tia. 

    Raha tsy esorinao io endri-javatra io, dia afaka mametraka ny bokotra fampiharana anao amin'ny tranokala maloto ny mpanafika. Mety ho liana amin'ny programa referral anao izy na ireo mpampiasa anao.  

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Mety hitranga ny vulnerability raha toa ka apetraka ao amin'ny mpizara tranonkala na ny mpandanjalanja entana ny X-Frame-Options misy sanda mifanipaka. Amin'ity tranga ity, ny mpizara sy ny balancer dia hamerina hanoratra fotsiny ny lohapejy, satria manana laharam-pahamehana ambony kokoa izy ireo raha oharina amin'ny code backend.  

    Ny fandavana sy ny sanda niaviany mitovy amin'ny lohatenin'ny X-Frame-Options dia hanelingelina ny fiasan'ny mpijery tranonkala Yandex. Mba hamelana ny fampiasana iframes ho an'ny mpijery tranonkala dia mila manoratra fitsipika misaraka amin'ny toe-javatra ianao. Ohatra, ho an'ny nginx azonao atao ny manamboatra azy toy izao:

    http{
    ...
     map $http_referer $frame_options {
     "~webvisor.com" "ALLOW-FROM http://webvisor.com";
     default "SAMEORIGIN";
     }
     add_header X-Frame-Options $frame_options;
    ...
    }
    
    

  6. PRSSI (Path-relative stylesheet import) vulnerabilities.  

    Ity dia vulnerability amin'ny famolavolana ny tranokala. Mitranga izany raha ny rohy havanana toa ny href="/mg/somefolder/styles.css/" dia ampiasaina amin'ny fidirana amin'ny rakitra style. Hanararaotra izany ny mpanafika raha mahita fomba hamerenana ny mpampiasa amin'ny pejy maloto. Ny pejy dia hampiditra rohy havanana ao amin'ny url-ny ary maka tahaka ny antso an-tariby. Hahazo fangatahana toy ny badsite.ru/…/somefolder/styles.css/ ianao, izay afaka manao fihetsika mamohehatra amin'ny endrika endrika. 

    Inona no mampidi-doza: Ny mpisoloky dia afaka manararaotra izany fahalemena izany raha mahita lavaka fiarovana hafa. Vokatr'izany dia azo atao ny mangalatra angon-drakitra mpampiasa amin'ny cookies na marika.

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Apetraho amin'ny: nosniff ny lohatenin'ny X-Content-Type-Options. Amin'ity tranga ity, ny navigateur dia hanamarina ny karazana atiny ho an'ny styles. Raha hafa ankoatry ny lahatsoratra/css ilay karazana dia hosakanan'ny mpitety tranonkala ilay fangatahana.

Faharefoana mitsikera

  1. Pejy misy saha misy tenimiafina ampitaina avy amin'ny mpizara amin'ny fantsona tsy azo antoka (endrika HTML misy saha tenimiafina no alefa amin'ny HTTP).

    Ny valin-kafatra avy amin'ny mpizara amin'ny fantsona tsy voafehy dia mora voan'ny fanafihana "Lehilahy eo afovoany". Ny mpanafika dia afaka manakana ny fifamoivoizana ary mampisaraka ny tenany eo amin'ny mpanjifa sy ny mpizara rehefa mandeha ny pejy avy amin'ny mpizara mankany amin'ny mpanjifa. 

    Inona no mampidi-doza: Ny mpisoloky dia afaka manolo ny pejy ary mandefa taratasy ho an'ny mpampiasa ho an'ny angona tsiambaratelo, izay mankany amin'ny lohamilin'ny mpanafika. 

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Ny tranonkala sasany dia mandefa kaody indray mandeha amin'ny alΓ lan'ny mailaka/telefaonina ho an'ny mpampiasa fa tsy tenimiafina. Amin'ity tranga ity, tsy dia mitsikera loatra ny vulnerability, fa ny mekanika dia hanasarotra ny fiainan'ny mpampiasa.

  2. Mandefa endrika miaraka amin'ny fidirana sy tenimiafina amin'ny fantsona tsy azo antoka (Tsy alefa amin'ny alΓ lan'ny HTTPS ny endrika fidirana).

    Amin'ity tranga ity, ny endrika misy fidirana sy tenimiafina dia alefa avy amin'ny mpampiasa mankany amin'ny mpizara amin'ny alΓ lan'ny fantsona tsy misy encryption.

    Inona no mampidi-doza: Tsy toy ny tranga teo aloha, efa vulnerability goavana izany. Mora kokoa ny manakana ny angona saro-pady satria tsy mila manoratra kaody akory ianao vao manao izany. 

  3. Mampiasa tranomboky JavaScript misy vulnerability fantatra.

    Nandritra ny scan, ny tranomboky be mpampiasa indrindra dia ny jQuery misy dikan-teny maro. Ny kinova tsirairay dia manana farafaharatsiny iray, na mihoatra, fantatra vulnerability. Ny fiantraikany dia mety ho samy hafa be arakaraka ny toetran'ny vulnerability.

    Inona no mampidi-doza: Misy fanararaotana ho an'ny vulnerability fantatra, ohatra:

    Fahotana mahafaty amin'ny fiarovana ny tranokala: ny zavatra nianarantsika tamin'ny antontan'isa scanner vulnerability nandritra ny taona

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Miverena tsy tapaka amin'ny tsingerina: tadiavo ireo vulnerabilitΓ© fantatra - amboary - jereo. Raha minia mampiasa trano famakiam-boky lova ianao, ohatra mba hanohanana ireo mpitety tranonkala taloha na hitahiry vola, dia mitadiava fotoana handaminana ny vulnerable fantatra. 

  4. Famoronana soratra miampita toerana (XSS). 
    Cross-Site Scripting (XSS), na scripting cross-site, dia fanafihana amin'ny rindranasa an-tranonkala izay mahatonga ny malware hampidirina ao anaty angon-drakitra. Raha mahita vulnerable toy izany i Qualys dia midika izany fa ny mety ho mpanafika dia afaka na efa nampiditra ny script js azy manokana ao amin'ny kaody tranonkala mba hanao hetsika ratsy.

    Voatahiry XSS mampidi-doza kokoa, satria ny script dia tafiditra ao amin'ny server ary tanterahina isaky ny misokatra amin'ny navigateur ny pejy voatafika.

    Vidin'ny XSS mora kokoa ny fanatanterahana satria misy script maloto azo ampidirina amin'ny fangatahana HTTP. Hahazo fangatahana HTTP ny fampiharana, tsy hanamarina ny angon-drakitra, hametraka azy io ary handefa azy avy hatrany. Raha misy mpanafika manakana ny fifamoivoizana ary mampiditra script toy ny

    <script>/*+Ρ‡Ρ‚ΠΎ+Ρ‚ΠΎ+ΠΏΠ»ΠΎΡ…ΠΎΠ΅+*/</script> 

    dia misy fangatahana maloto halefa amin'ny anaran'ny mpanjifa.

    Ohatra iray manaitra amin'ny XSS: js sniffers izay maka tahaka ny pejy hiditra amin'ny CVC, daty lany daty, sy ny sisa. 

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Ao amin'ny lohatenin'ny Content-Security-Policy, ampiasao ny toetra script-src hanerena ny navigateur mpanjifa mba haka sy hanatanteraka kaody avy amina loharano azo itokisana. Ohatra, ny script-src 'self' dia manao lisitra fotsy ny script rehetra avy amin'ny tranokalanay ihany. 
    Ny fanao tsara indrindra dia ny kaody Inline: avelao ihany ny javascript inline amin'ny fampiasana ny sanda tsy azo antoka-inline. Ity sanda ity dia mamela ny fampiasana ny js/css inline, fa tsy mandrara ny fampidirana ny rakitra js. Miaraka amin'ny script-src 'self' dia manafoana ny script ivelany tsy hovonoina.

    Ataovy azo antoka ny hampiditra ny zava-drehetra amin'ny fampiasana report-uri ary jereo ny andrana hampihatra izany ao amin'ny tranokala.

  5. SQL tsindrona.
    Ny vulnerability dia manondro ny fahafahana manindrona ny kaody SQL amin'ny tranokala iray izay miditra mivantana amin'ny angon-drakitra an'ny tranokala. Azo atao ny tsindrona SQL raha tsy voasivana ny angona avy amin'ny mpampiasa: tsy voazaha raha marina ary ampiasaina avy hatrany amin'ny fangatahana. Ohatra, mitranga izany raha tsy manamarina ny endrika iray ao amin'ny tranonkala iray raha mifanaraka amin'ny karazana data ny fidirana. 

    Inona no mampidi-doza: Raha misy mpanafika mampiditra fanontaniana SQL amin'ity endrika ity, dia afaka manakorontana ny angon-drakitra izy na manambara fampahalalana tsiambaratelo. 

    Inona no tokony hotsaroan'ny mpamorona tranonkala: Aza matoky izay avy amin'ny navigateur. Mila miaro tena ianao na eo amin'ny lafiny mpanjifa na amin'ny lafiny server. 

    Eo amin'ny lafiny mpanjifa, manorata fanamarinana an-tsaha amin'ny fampiasana JavaScript. 

    Manampy amin'ny fandosirana ireo endri-tsoratra mampiahiahy ao amin'ny lohamilina ihany koa ny fiasa naorina ao amin'ny rafitra malaza. Amporisihina ihany koa ny hampiasa fanontaniana momba ny angon-drakitra voafaritra amin'ny mpizara.

    Farito hoe aiza marina no misy ny fifandraisana amin'ny angon-drakitra ao amin'ny fampiharana tranonkala. 

    Mitranga ny fifaneraserana rehefa mahazo vaovao isika: fangatahana miaraka amin'ny id (fanovana id), famoronana mpampiasa vaovao, fanehoan-kevitra vaovao, na fidirana vaovao ao amin'ny tahiry. Eto no mety hitranga ny tsindrona SQL. Na dia mamafa rakitra ao amin'ny angon-drakitra aza isika dia azo atao ny fampidirana SQL.

Fanolorana ankapobeny

Aza amboarina indray ny kodiarana - ampiasao ny rafitra voaporofo. Raha ny fitsipika, ny rafitra malaza dia azo antoka kokoa. Ho an'ny .NET - ASP.NET MVC sy ASP.NET Core, ho an'ny Python - Django na Flask, ho an'ny Ruby - Ruby on Rails, ho an'ny PHP - Symfony, Laravel, Yii, ho an'ny JavaScript - Node.JS-Express.js, ho an'ny Java - Lohataona MVC.

Araho ny fanavaozana ny mpivarotra ary havaozy tsy tapaka. Hahita vulnerable izy ireo, avy eo manoratra fanararaotana, ataovy ampahibemaso izany, ary hiverina ny zava-drehetra. Misoratra anarana amin'ny fanavaozana ny dikan-teny stable avy amin'ny mpivarotra rindrambaiko.

Jereo ny fahazoan-dΓ lana. Eo amin'ny lafiny mpizara, raiso foana ny kaodinao ho toy ny hoe, manomboka amin'ny voalohany ka hatramin'ny taratasy farany, dia nosoratan'ny fahavalonao tena nankahalainao, izay te-hanimba ny tranokalanao, manitsakitsaka ny fahamarinan'ny angonao. Ankoatra izany, indraindray dia marina izany.

MampiasΓ  klones, tranokala andrana, ary ampiasao izany amin'ny famokarana. Izany dia hanampy, voalohany, mba hisorohana ny fahadisoana sy ny fahadisoana amin'ny tontolo mamokatra: ny tontolo mamokatra dia mitondra vola, ny tontolo mamokatra tsotra no tena ilaina. Rehefa manampy, manamboatra na manakatona ny olana rehetra, dia mendrika ny miasa amin'ny tontolo fitsapana, avy eo manamarina ny fiasa sy ny vulnerability hita, ary avy eo mikasa ny hiara-miasa amin'ny tontolo famokarana. 

Arovy amin'ny Web Application Firewall ary ampifandraiso amin'izany ny tatitra avy amin'ny scanner vulnerability. Ohatra, ny DataLine dia mampiasa Qualys sy FortiWeb ho fitambarana serivisy.

Source: www.habr.com

Add a comment