Phishing Methodology
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Kurbanı araştır
Kurban alan adını seç.
Kurban tarafından kullanılan giriş portallarını bulmak için bazı temel web taramaları yap ve hangi portali taklit edeceğine karar ver.
E-posta bulmak için bazı OSINT kullan.
Ortamı hazırla
Phishing değerlendirmesi için kullanacağın alan adını satın al.
İlgili kayıtları (SPF, DMARC, DKIM, rDNS) e-posta hizmetini yapılandır.
gophish ile VPS'yi yapılandır.
Kampanyayı hazırla
E-posta şablonunu hazırla.
Kimlik bilgilerini çalmak için web sayfasını hazırla.
Kampanyayı başlat!
Anahtar Kelime: Alan adı, orijinal alan adının önemli bir anahtar kelimesini içerir (örneğin, zelster.com-management.com).
Tireli alt alan: Bir alt alanın noktasını tire ile değiştir (örneğin, www-zelster.com).
Yeni TLD: Aynı alan adı, yeni bir TLD kullanarak (örneğin, zelster.org).
Homoglif: Alan adındaki bir harfi, benzer görünen harflerle değiştirir (örneğin, zelfser.com).
Transpozisyon: Alan adındaki iki harfi değiştirir (örneğin, zelsetr.com).
Tekil/Çoğul: Alan adının sonuna “s” ekler veya çıkarır (örneğin, zeltsers.com).
Atlama: Alan adından bir harfi çıkarır (örneğin, zelser.com).
Tekrar: Alan adındaki bir harfi tekrarlar (örneğin, zeltsser.com).
Değiştirme: Homoglif gibi ama daha az gizli. Alan adındaki bir harfi, belki de orijinal harfin klavye üzerindeki yakınındaki bir harfle değiştirir (örneğin, zektser.com).
Alt alan: Alan adı içinde bir nokta ekle (örneğin, ze.lster.com).
Ekleme: Alan adına bir harf ekler (örneğin, zerltser.com).
Eksik nokta: Alan adına TLD'yi ekle. (örneğin, zelstercom.com)
Otomatik Araçlar
Web Siteleri
Depolanan veya iletişimdeki bazı bitlerin otomatik olarak değişme olasılığı vardır; bu, güneş patlamaları, kozmik ışınlar veya donanım hataları gibi çeşitli faktörlerden kaynaklanabilir.
Bu kavram DNS isteklerine uygulandığında, DNS sunucusu tarafından alınan alan adının, başlangıçta istenen alan adıyla aynı olmaması mümkündür.
Örneğin, "windows.com" alan adındaki tek bir bit değişikliği, onu "windnws.com" haline getirebilir.
Saldırganlar, kurbanın alan adına benzer birden fazla bit-flipping alan adı kaydederek bundan yararlanabilirler. Amaçları, meşru kullanıcıları kendi altyapılarına yönlendirmektir.
Daha fazla bilgi için https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/ adresini okuyun.
Kullanabileceğin bir süresi dolmuş alan adı için https://www.expireddomains.net/ adresinde arama yapabilirsin. Satın alacağın süresi dolmuş alan adının zaten iyi bir SEO'ya sahip olduğundan emin olmak için şu kategorilere bakabilirsin:
https://github.com/laramies/theHarvester (%100 ücretsiz)
https://phonebook.cz/ (%100 ücretsiz)
Daha fazla geçerli e-posta adresi bulmak veya zaten bulduğun e-posta adreslerini doğrulamak için, kurbanın smtp sunucularını brute-force ile kontrol edebilirsin. E-posta adresini doğrulama/bulma hakkında buradan öğren. Ayrıca, kullanıcıların e-postalarına erişmek için herhangi bir web portalı kullanıp kullanmadığını unutma; eğer kullanıyorsa, kullanıcı adı brute force saldırısına karşı savunmasız olup olmadığını kontrol edebilir ve mümkünse bu zafiyeti istismar edebilirsin.
Bunu https://github.com/gophish/gophish/releases/tag/v0.11.0 adresinden indirebilirsin.
İndirin ve /opt/gophish
dizinine çıkarın ve /opt/gophish/gophish
komutunu çalıştırın.
Çıktıda, 3333 numaralı portta admin kullanıcı için bir şifre verilecektir. Bu nedenle, o porta erişin ve admin şifresini değiştirmek için bu kimlik bilgilerini kullanın. O portu yerel olarak tünellemeniz gerekebilir.
TLS sertifika yapılandırması
Bu adımdan önce, kullanacağınız alan adını zaten satın almış olmalısınız ve bu alan adı, gophish yapılandırdığınız VPS'nin IP'sine yönlendirilmiş olmalıdır.
Mail yapılandırması
Başlamak için: apt-get install postfix
Sonra alan adını aşağıdaki dosyalara ekleyin:
/etc/postfix/virtual_domains
/etc/postfix/transport
/etc/postfix/virtual_regexp
Ayrıca /etc/postfix/main.cf içindeki aşağıdaki değişkenlerin değerlerini değiştirin
myhostname = <domain>
mydestination = $myhostname, <domain>, localhost.com, localhost
Son olarak /etc/hostname
ve /etc/mailname
dosyalarını alan adınıza göre değiştirin ve VPS'nizi yeniden başlatın.
Şimdi, mail.<domain>
için VPS'nin ip adresine işaret eden bir DNS A kaydı ve mail.<domain>
için işaret eden bir DNS MX kaydı oluşturun.
Şimdi bir e-posta göndermeyi test edelim:
Gophish yapılandırması
Gophish'in çalışmasını durdurun ve yapılandıralım.
/opt/gophish/config.json
dosyasını aşağıdaki gibi değiştirin (https kullanımına dikkat edin):
Gophish hizmetini yapılandırın
Gophish hizmetini oluşturmak ve otomatik olarak başlatılmasını sağlamak için /etc/init.d/gophish
dosyasını aşağıdaki içerikle oluşturabilirsiniz:
Hizmeti yapılandırmayı tamamlayın ve kontrol edin:
Bir alan adı ne kadar eskiyse, spam olarak yakalanma olasılığı o kadar düşüktür. Bu nedenle, phishing değerlendirmesinden önce mümkün olduğunca uzun süre (en az 1 hafta) beklemelisiniz. Ayrıca, itibarlı bir sektörde bir sayfa oluşturursanız, elde edilen itibar daha iyi olacaktır.
Bir hafta beklemeniz gerekse bile, her şeyi şimdi yapılandırmayı bitirebileceğinizi unutmayın.
VPS'nin IP adresini alan adıyla çözen bir rDNS (PTR) kaydı ayarlayın.
Yeni alan adı için bir SPF kaydı yapılandırmalısınız. SPF kaydının ne olduğunu bilmiyorsanız bu sayfayı okuyun.
SPF politikanızı oluşturmak için https://www.spfwizard.net/ adresini kullanabilirsiniz (VPS makinesinin IP'sini kullanın).
Bu, alan adı içindeki bir TXT kaydına yerleştirilmesi gereken içeriktir:
Yeni alan adı için bir DMARC kaydı yapılandırmalısınız. DMARC kaydının ne olduğunu bilmiyorsanız bu sayfayı okuyun.
Aşağıdaki içeriğe sahip _dmarc.<domain>
ana bilgisayar adına işaret eden yeni bir DNS TXT kaydı oluşturmalısınız:
Yeni alan için bir DKIM yapılandırmalısınız. DMARC kaydının ne olduğunu bilmiyorsanız bu sayfayı okuyun.
Bu eğitim, şuraya dayanmaktadır: https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-dkim-with-postfix-on-debian-wheezy
DKIM anahtarının ürettiği her iki B64 değerini birleştirmeniz gerekiyor:
Bunu https://www.mail-tester.com/ kullanarak yapabilirsiniz. Sadece sayfaya erişin ve size verdikleri adrese bir e-posta gönderin:
E-posta yapılandırmanızı kontrol edebilirsiniz check-auth@verifier.port25.com
adresine bir e-posta göndererek ve yanıtı okuyarak (bunun için 25 numaralı portu açmanız ve e-postayı root olarak gönderirseniz /var/mail/root dosyasında yanıtı görmeniz gerekecek).
Tüm testleri geçtiğinizden emin olun:
Kontrolünüz altındaki bir Gmail'e mesaj gönderebilir ve Gmail gelen kutunuzda e-postanın başlıklarını kontrol edebilirsiniz, dkim=pass
Authentication-Results
başlık alanında bulunmalıdır.
Sayfa www.mail-tester.com alan adınızın spamhouse tarafından engellenip engellenmediğini gösterebilir. Alan adınızın/IP'nizin kaldırılmasını talep edebilirsiniz: https://www.spamhaus.org/lookup/
Alan adınızın/IP'nizin kaldırılmasını talep edebilirsiniz https://sender.office.com/.
Gönderici profilini tanımlamak için bir isim belirleyin
Phishing e-postalarını hangi hesaptan göndereceğinize karar verin. Öneriler: noreply, support, servicedesk, salesforce...
Kullanıcı adı ve şifreyi boş bırakabilirsiniz, ancak Sertifika Hatalarını Yoksay'ı kontrol ettiğinizden emin olun.
Her şeyin çalıştığını test etmek için "Test E-postası Gönder" işlevini kullanmanız önerilir. Testlerin kara listeye alınmaktan kaçınmak için test e-postalarını 10 dakikalık e-posta adreslerine göndermeyi öneririm.
Şablonu tanımlamak için bir isim belirleyin
Ardından bir konu yazın (olağan bir e-postada okuyabileceğiniz bir şey, garip bir şey değil)
"İzleme Resmi Ekle" seçeneğini kontrol ettiğinizden emin olun
e-posta şablonunu yazın (aşağıdaki örnekte olduğu gibi değişkenler kullanabilirsiniz):
Not edin ki e-postanın güvenilirliğini artırmak için, müşteriden gelen bir e-postadan bazı imzalar kullanılması önerilir. Öneriler:
Mevcut olmayan bir adrese e-posta gönderin ve yanıtın herhangi bir imza içerip içermediğini kontrol edin.
info@ex.com veya press@ex.com veya public@ex.com gibi kamusal e-postalar arayın ve onlara bir e-posta gönderin ve yanıtı bekleyin.
Geçerli bulunan bir e-posta ile iletişim kurmayı deneyin ve yanıtı bekleyin.
E-posta Şablonu ayrıca göndermek için dosyalar eklemeye de olanak tanır. Eğer bazı özel hazırlanmış dosyalar/belgeler kullanarak NTLM zorluklarını çalmak istiyorsanız bu sayfayı okuyun.
Bir isim yazın.
Web sayfasının HTML kodunu yazın. Web sayfalarını içe aktarabileceğinizi unutmayın.
Gönderilen Verileri Yakala ve Şifreleri Yakala işaretleyin.
Bir yönlendirme ayarlayın.
Genellikle sayfanın HTML kodunu değiştirmeniz ve bazı testler yapmanız gerekecek (belki bazı Apache sunucusu kullanarak) sonuçlardan memnun kalana kadar. Sonra, o HTML kodunu kutuya yazın. HTML için bazı statik kaynaklar kullanmanız gerekiyorsa (belki bazı CSS ve JS sayfaları) bunları /opt/gophish/static/endpoint dizinine kaydedebilir ve ardından /static/<filename> üzerinden erişebilirsiniz.
Yönlendirme için kullanıcıları kurbanın gerçek ana web sayfasına yönlendirebilir veya örneğin /static/migration.html adresine yönlendirebilir, 5 saniye boyunca bir dönme tekerleği (https://loading.io/**) koyabilir ve ardından işlemin başarılı olduğunu belirtebilirsiniz.
Bir isim ayarlayın.
Verileri içe aktarın (örnek için şablonu kullanmak istiyorsanız her kullanıcının adı, soyadı ve e-posta adresine ihtiyacınız olduğunu unutmayın).
Son olarak, bir isim, e-posta şablonu, açılış sayfası, URL, gönderim profili ve grup seçerek bir kampanya oluşturun. URL'nin kurbanlara gönderilecek bağlantı olacağını unutmayın.
Gönderim Profili, test e-postası göndererek son phishing e-postasının nasıl görüneceğini görmenizi sağlar:
Test e-postalarını 10 dakikalık e-posta adreslerine göndermeyi öneririm, böylece test yaparken kara listeye alınmaktan kaçınabilirsiniz.
Her şey hazır olduğunda, kampanyayı başlatın!
Herhangi bir nedenle web sitesini klonlamak istiyorsanız, aşağıdaki sayfayı kontrol edin:
Bazı phishing değerlendirmelerinde (özellikle Kırmızı Takımlar için) bir tür arka kapı içeren dosyalar göndermek isteyebilirsiniz (belki bir C2 veya belki sadece bir kimlik doğrulama tetikleyici). Bazı örnekler için aşağıdaki sayfayı kontrol edin:
Önceki saldırı oldukça zekice, çünkü gerçek bir web sitesini taklit ediyor ve kullanıcının belirlediği bilgileri topluyorsunuz. Ne yazık ki, kullanıcı doğru şifreyi girmediyse veya taklit ettiğiniz uygulama 2FA ile yapılandırılmışsa, bu bilgi sizi kandırılan kullanıcı gibi davranmanıza izin vermez.
Bu noktada evilginx2, CredSniper ve muraena gibi araçlar faydalıdır. Bu araç, MitM benzeri bir saldırı oluşturmanıza olanak tanır. Temelde, saldırılar şu şekilde çalışır:
Gerçek web sayfasının giriş formunu taklit edersiniz.
Kullanıcı kimlik bilgilerini sahte sayfanıza gönderir ve araç bunları gerçek web sayfasına gönderir, kimlik bilgilerin çalışıp çalışmadığını kontrol eder.
Hesap 2FA ile yapılandırılmışsa, MitM sayfası bunu isteyecek ve kullanıcı bunu girdikten sonra araç bunu gerçek web sayfasına gönderecektir.
Kullanıcı kimlik doğrulandıktan sonra (saldırgan olarak) kimlik bilgilerini, 2FA'yı, çerezi ve aracın MitM gerçekleştirdiği her etkileşimden herhangi bir bilgiyi yakalamış olacaksınız.
Kurbanı orijinaline benzer bir kötü amaçlı sayfaya göndermek yerine, onu gerçek web sayfasına bağlı bir tarayıcı ile bir VNC oturumuna göndermeyi düşünsenize? Ne yaptığını görebilir, şifreyi, kullanılan MFA'yı, çerezleri çalabilirsiniz... Bunu EvilnVNC ile yapabilirsiniz.
Elbette, yakalandığınızı anlamanın en iyi yollarından biri, alan adınızı kara listelerde aramaktır. Eğer listelenmişse, bir şekilde alan adınız şüpheli olarak tespit edilmiştir. Alan adınızın herhangi bir kara listede görünüp görünmediğini kontrol etmenin kolay bir yolu https://malwareworld.com/ kullanmaktır.
Ancak, kurbanın şüpheli phishing faaliyetlerini aktif olarak arayıp aramadığını anlamanın başka yolları da vardır, bunlar aşağıda açıklanmıştır:
Kurbanın alan adına çok benzer bir isimle bir alan adı satın alabilir ve/veya kontrolünüzdeki bir alan adının alt alanı için bir sertifika oluşturabilirsiniz ve kurbanın alan adının anahtar kelimesini içerebilirsiniz. Eğer kurban onlarla herhangi bir tür DNS veya HTTP etkileşimi gerçekleştirirse, şüpheli alan adlarını aktif olarak aradığını bileceksiniz ve çok gizli olmanız gerekecek.
E-postanızın spam klasörüne düşüp düşmeyeceğini veya engellenip engellenmeyeceğini veya başarılı olup olmayacağını değerlendirmek için Phishious kullanın.
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)