Վնասակար
տեխնոլոգիաներ.
XSS Հարձակում
 

 


    
   Բովանդակություն

  •  Ինչպես է աշխատում միջկայքային սցենարը
  •  Հարձակման տեխնիկան XSS-ի միջոցով
  •  XSS-ի ընդհանուր դասակարգում
  •  XSS-ի տեսակները ըստ փոխազդեցության մեթոդի
  •  Ինչպես ստուգել կայքի խոցելիությունը XSS հարձակման նկատմամբ և պաշտպանել այն

XSS (Cross – Site Scripting)-ը վեբ համակարգերի վրա հարձակումների տեսակներից մեկն է, որը ենթադրում է վնասակար կոդի ներդրում կայքի որոշակի էջում և այդ կոդի փոխազդեցություն հարձակվողների հեռավոր սերվերի հետ, երբ օգտագործողը բացում է էջը: XSS-ը կարող է օգտագործվել նաև վեբ-կայքերի վրա հարձակումներ կատարելու համար: Անգլերենից տերմինը նշանակում է Cross-Site Scripting, բայց այն ստացել է XSS հապավումը, որպեսզի CSS-ի (կասկադային ոճի թերթերի) հետ խառնաշփոթ չլինի:

     Ինչպես է աշխատում միջկայքային սցենարը

Միջկայքային սկրիպտինգի հիմնական նպատակը սերվերի վրա ներկառուցված սկրիպտի միջոցով օգտատերերի cookie-ների գողացումն է՝ անհրաժեշտ տվյալների հետագա նմուշառմամբ և հետագա հարձակումների և հաքերների համար դրանք օգտագործելու համար։ Հարձակվողը օգտատերերի վրա հարձակումն իրականացնում է ոչ թե ուղղակիորեն, այլ օգտագործելով այն կայքի խոցելիությունը, որն այցելում են զոհերը և ներկառուցում է հատուկ JavaScript: Օգտատերերի բրաուզերում այս կոդը արտացոլվում է որպես կայքի մեկ մաս ։ Ընդ որում, այցելվող վեբ կայքը ըստ էության դառնում է XSS հարձակման մասնակից։

xss hardzakum

Եթե համեմատենք SQL- ներարկումների հետ, ապա XSS-ն անվտանգ է սերվերի համար, բայց սպառնալիք է ներկայացնում վարակված ռեսուրսի կամ էջի օգտագործողների համար: Սակայն, եթե հաքերը ստանում է ադմինի cookies-ները, նա կարող է մուտք գործել  կայքի կառավարման վահանակի և տնօրինել դրա բովանդակությանը:

    Հարձակման տեխնիկան XSS-ի միջոցով

JavaScript-ի վնասակար կոդի գործարկումը հնարավոր է միայն զոհի բրաուզերում, ուստի այն կայքը, որտեղ օգտագործողը մուտք է գործում, պետք է խոցելիություն ունենա XSS-ի նկատմամբ: Հարձակումը կատարելուց առաջ հաքերը սկզբում ստուգում է կայքի խեցելիությունը XSS-ի նկատմամբ՝ օգտագործելով ավտոմատացված սկրիպտեր կամ ձեռքով որոնման ռեժիմ: Դրանք սովորաբար ստանդարտ ֆորմաներ են, որոնք կարող են ուղարկել և ընդունել օգտատիրոջ հարցումներ (մեկնաբանություններ, որոնում, հետադարձ կապ):

Իրականացվում է մուտքագրման ձևերով էջերի ամբողջական հավաքագրում, և յուրաքանչյուրը սկանավորվում է խոցելիության համար: Օրինակ, կայքում մենք ունենք "որոնում" էջ: XSS խոցելիությունը ստուգելու համար բավական է մուտքագրել հարցումը՝

<script>alert("cookie: "+document.cookie)</script>

Եթե էկրանին ծանուցում է հայտնվում, ապա դուք հայտնաբերել եք կայքի խոցելիություն:

Հակառակ դեպքում համակարգը Ձեզ կցուցադրի որոնման արդյունքների էջ: Հիմնական հանրաճանաչ CMS-ները վաղուց ապահովագրվել են նման խնդիրներից: Այդուհանդերձ կողմնակի ծրագրավորողների կողմից ստեղծված մոդուլների և պլագինների պատճառով ֆունկցիոնալությունը ընդլայնելու հնարավորության պատճառով XSS խոցելիությունների հայտնաբերման հնարավորությունները զգալիորեն մեծանում են, հատկապես Joomla, DLE, Bitrix, Wordpress պլատֆորմաների համար: Ամենից հաճախ XSS խոցելիությունները ստուգվում են Internet Explorer-ի համար:

Որոնման մեկ այլ հնարավոր տարբերակ է օգտագործել այն էջերը, որոնք կարգավորում են GET հարցումները: Ենթադրենք՝ մենք ունենք հետևալ ձևի հղում. https://site.ru/catalog?p=8

Հասցեի տողում նույնացուցիչի փոխարեն (8) ավելացնում ենք սկրիպտը ՝
"><script>alert ("cookie: "+document.cookie)< / script>
, որի արդյունքում ստանում ենք այսպիսի հղում.

https://site.ru/catalog?p=&quot;&gt;&lt; script & gt;alert (&quot;cookie: "+ document.cookie)</script>

Եթե էջն ունի XSS խոցելիություններ, էկրանին կհայտնվի նույն ծանուցումը, ինչ առաջին դեպքում: Կայքում "բացեր" որոնելու համար կան հսկայական քանակությամբ պատրաստի սկրիպտեր և հարցումներ, և եթե դրանցից ոչ մեկը խոցելիություն չի հայտնաբերում, ապա ռեսուրսը հուսալիորեն պաշտպանված է XSS հարձակումներից:

     XSS-ի ընդհանուր դասակարգում

Միջկայքային սկրիպտերի համար հստակ դասակարգում գոյություն չունի, բայց աշխարհի փորձագետները առանձնացնում են երեք հիմնական տեսակ:

Պահվող XSS (մշտական): Խոցելիության ամենավտանգավոր տեսակներից մեկը, քանի որ այն թույլ է տալիս հարձակվողին մուտք գործել սերվեր և արդեն այնտեղից կառավարել վնասաբեր կոդը (ջնջել, փոփոխել): Ամեն անգամ կայք մուտք գործելիս գործարկվում է նախապես բեռնված կոդ, որն աշխատում է ավտոմատ ռեժիմով ։ Հիմնականում ֆորումները, պորտալները, բլոգերը ենթակա են նման խոցելիությունների, որտեղ HTML-ում առանց սահմանափակումների մեկնաբանելու հնարավորություն կա: Վնասակար սկրիպտերը հեշտությամբ կարող են տեղադրվել ինչպես տեքստի, այնպես էլ նկարների, նկարների մեջ:

 

Արտացոլվող XSS (ոչ մշտական): Այս դեպքում վնասակար տողը հանդես է գալիս որպես զոհ հանդիսացող օգտատիրոջ հարցում վարակված կայքին։ Այս սկզբունքը գործում է հետևյալ սխեմայի համաձայն՝

1.Հաքերը նախապես ստեղծում է URL հղում, որը պարունակում է վնասակար կոդ և այն ուղարկում է իր զոհին:

2. Հղումը ուղղորդում է այս URL-ի հարցումը դեպի կայք (անցնում է հղումով):

3. Կայքը ավտոմատ կերպով վերցնում է տվյալները վնասակար տողից և փոխարինում է որպես փոփոխված URL պատասխան զոհին:

4. Արդյունքում զոհի բրաուզերում գործարկվում է վնասակար սկրիպտ, որն էլ պարունակվում է պատասխանում, իսկ հաքերը ստանում է այդ օգտատիրոջ բոլոր քուքիները։

DOM մոդելներ. Այս տարբերակում հնարավոր է օգտագործել ինչպես պահված XSS-ը, այնպես էլ արտացոլված: Էությունը հետևյալն է: Հաքերը ստեղծում է URL, որը նախապես պարունակում է վնասակար կոդ և այն էլեկտրոնային փոստով կամ ցանկացած այլ եղանակով ուղարկում է օգտագործողին: Անձը հետևում է այս հղմանը, վարակված կայքը ընդունում է հարցումը՝ բացառելով վնասակար տողը: Էջում օգտատիրոջ մոտ գործարկվում է սկրիպտ, որի արդյունքում բեռնվում է վնասակար սկրիպտը և հաքերը ստանում է քուքիներ:

     XSS-ի տեսակները ըստ փոխազդեցության մեթոդի

Քանի որ հարձակվողի հիմնական նպատակը զոհի համակարգչում վնասակար սկրիպտ գործարկելն է, փոխգործակցության եղանակով գոյություն ունեն նաև XSS հարձակումների երկու հիմնական տեսակ՝

Պասիվ. Տուժողից պահանջվում է որոշակի գործողություն ՝ իրադարձությունների կառավարիչ կանչելու և չարամիտ սկրիպտը սահմանված ձևով գործարկելու համար: Դրա համար օգտագործվում է սոցիալական ճարտարագիտություն, ինչպիսին է էլ-նամակ ուղարկելը, որը կոչ է անում հետևել հղմանը և սեղմել կայքի որոշակի տարածք: Հենց որ օգտագործողը մկնիկով անցում է ցանկալի օբյեկտին և սեղմում մկնիկի վրա, գործարկվում է վնասակար սկրիպտը: Եթե զոհը գործողություն չի կատարում, կոդը չի ակտիվանում։

Ակտիվ. Հաքերը կարիք չունի զոհին գայթակղելու հատուկ հղումների միջոցով, քանի որ կոդը ներկառուցված է տվյալների բազաներում կամ սերվերի վրա ինչ-որ գործարկվող ֆայլում: Օգտագործողից որևէ գործողություն չի պահանջվում: Մուտքի ձևերը, որպես կանոն, ունեն հատուկ իրադարձությունների կառավարիչ, որն ավտոմատ կերպով ակտիվանում է, երբ հայտնվում է այս էջում: Արդյունքում, բոլոր օգտվողները, ովքեր հետևել են այս հղմանը, կդառնան հաքերի զոհ:


Ինչպես ստուգել կայքի XSS հարձակման նկատմամբ և պաշտպանել այն

XSS-ի խոցելիությունների նկատմամբ կայքը արագ ստուգելու համար կարող եք օգտագործել մասնագիտացված ծառայություններ, որոնք ավտոմատ կերպով սկանավորելու են էջը: Այս ծառայությունները ներառում են. Անհրաժեշտ է ստուգել բոլոր URL-ները, որտեղ հնարավոր է տվյալներ ուղարկել օգտագործողի կողմից (մեկնաբանությունների ֆորմաներ, հետադարձ կապ, որոնում): Որպես օրինակ կարող եք օգտագործել https://xss-scanner.com, բայց մի սահմանափակվեք միայն մեկ գործիքով:

Նման ծառայությունները հաջողության լիարժեք երաշխիք չեն տալիս, ուստի խորհուրդ ենք տալիս ձեռքով ստուգել հայտնաբերված էջերը և անպայման բացառել բոլոր վտանգավոր հատուկ նիշերը ՝ դրանք փոխարինելով անվտանգով: Խոսքը < և > փակագծերի մասին է, որոնցում գրված են HTML լեզվով վերապահված բոլոր հարցումները և պիտակները։

Օրինակ ՝ < և > հատուկ նիշերը արագ զտելու և ավտոմատ կերպով փոխարինելու համար կայքում կարող եք օգտագործել հետևյալ կոդը:

$filter = array("<", ">"); $_GET['q']=str_replace ($filter, "|", $_GET['q']).

Մի քանի խորհուրդ Ձեր կայքում XSS-ի օգտագործումը կանխելու համար.

1. Եթե ձեր կայքում օգտագործողի մուտքագրումը միացված է, պետք է իրականացվի կոդավորում:

2.Եթե որոշ իրավիճակներում կոդավորումը հնարավոր չէ կամ անտեղի է, փոխարինեք այն կամ լրացրեք վավերացմամբ (վալիդացիայով):

3. Եթե օգտագործում եք տարածված CMS, ինչպիսիք են Wordpress-ը, Bitrix-ը, Joomla-ն, պարբերաբար Թարմացրեք շարժիչի տարբերակները և տեղադրված բոլոր մոդուլներն ու պլագինները: Լռելյայն, կայքերի կառավարման ամենատարածված համակարգերի մեծ մասը պաշտպանված են XSS-ի օգտագործումից, բայց չստուգված աղբյուրներից երրորդ կողմի պլագինները կարող են պարունակել խոցելիություններ:

<< Վերադառնալ Բառարան

 
 
Ծառայություն  Դասեր                Նյութեր  
                   
SEO Google
Analytics
              SEO
Բառարան
 
                   
SEO Audit Google
Ads
              Բլոգ  
                   
SEO Consulting GTM               Մետա Հաշվիչ  
                   
Google Analytics GSC                
                   
Google Ads SEO
Content Writing
               
                   
Landing Pages              
                     
фейсбук ютуб
                Linkedin Icon  
                     
-2025-