WordPress'te SEO Spam Bulaşmışsa Ne Yapmalı?

Yayınlanan: 2021-05-17

Jetpack'te farklı türdeki web tehditleri ve saldırıları ile uğraşmak rutinimizin bir parçasıdır. Çoğu zaman, kötü amaçlı bir dosya toplamaktan ve saldırı vektörünü bulmaktan, bir web sitesini en son yedekten geri yükleme konusunda yardım sağlamaya kadar uzanır. Ama bazen gerçekten yaratıcı saldırıların farklı bir boyutuna, açıklanamaz yeniden bulaşmaların bir boyutuna gireriz - giriyoruz… alacakaranlık kuşağına.

Tamam, muhtemelen aşırı dramatik davranıyorum ama bu gizemli hikaye için sahneyi hazırlarken bana tahammül edin. Hazır? Lütfen hayaletler, spam ve arama motorları diyarına yaptığım bu yolculukta bana katılın.

Kötü niyetli davranış

Çok ilginç bir saldırı altında olan bir web sitesi bulduk. İlk olarak Google Arama Konsolu tarafından gönderilen bir e-posta olarak ortaya çıktı: alışılmadık bir URL (ve içinde tıklanabilir bir URL bulunan çok şüpheli görünen bir URL), en çok büyüyen sayfa olarak listelendi.

Bir URL'ye eklenen spam'i gösteren resim
Google'ın Arama Motoru Aracının En Çok Büyüyen Sayfaları

Bu tür davranışlar genellikle bir enfeksiyonun sonucu olduğu için web sitesi sahibi biraz üzgündü, ancak Jetpack onları herhangi bir şey tespit etmemiş veya uyarmamıştı. Ayrıca, bu sayfalar kontrol edildiklerinde web sitesinde bile yoktu, ancak yine de Google tarafından dizine ekleniyorlardı. Alacakaranlık kuşağı yoğunlaşıyor .

Jetpack Scan'in gözden kaçırmış olabileceği şüpheli dosyaları kontrol ettiğimizde (hiçbir güvenlik aracı tehditlerin %100'ünü algılamaz), işler daha da garipleşti. WordPress Çekirdeği ve eklentileri sağlamdı: veritabanına enjekte edilmiş dosya veya komut dosyası yok. Birkaç eski eklentinin üzerinde herhangi bir güvenlik düzeltmesi yoktu, WordPress bir sürüm (5.6) gerisindeydi ve en son güncelleme herhangi bir büyük güvenlik düzeltmesi listelemedi. Hiç şüpheli bir şey yoktu. Olağan şüpheli yok, saldırı kanıtı yok; Henüz değil.

Bir sonraki mantıklı adım, erişim günlüklerini kontrol etmektir. Belki bu gizeme biraz ışık tutabilirdi. Sıfır gün saldırısıyla karşı karşıya olduğumuzu veya sonunda çoklu evren teorisi için bir kanıt bulduğumuzu ve bu web sitesine yalnızca 1337 numaralı Evren'de virüs bulaştığını görebilir miyiz? Günlüklere!

Bir spam isteği için kod
Bu garip spam'e bir istek
Başka bir garip spam isteği. Bing neden bundan hoşlanıyor?
Görünüşe göre Bing de bundan hoşlanıyor… Ama neden?

Beklediğiniz gibi: Ekran görüntülerinde görebileceğiniz gibi, bu spam sayfalarına yapılan bir sürü istek dışında garip bir şey yok. Ve hepsi bir "200 OK" döndürüyorlardı. Yani, sayfa zaman ve uzay sürekliliğinde bir yerde vardı, ya da… bir saniye… şimdi görüyor musunuz?

Tüm bu sayfalar aynı konumu gösteriyordu: `/?s=`, yani arama motorları (sorun Google tarafından fark edildi, ancak istekler Bing'den geliyor) arama sonucu sayfalarını dizine ekliyordu. Ve neden böyle? Tarayıcı, bildiğimiz kadarıyla sayfada arama yapmıyor, değil mi?

indeksleme paradoksu

Bir arama motorunun nasıl çalıştığının temelleri, web sitesi işindeyseniz oldukça basittir. Web sayfalarını tarayan, içeriğini dizine ekleyen, biraz sihir yapan ve sorgulanabilir kaynakları bulutta bir yerde depolayan bir robot (veya otomatik komut dosyası) vardır.

Bunu akılda tutarak, bu isteklerden herhangi birinin yönlendiren gibi başka bir ipucu olup olmadığını görmek için günlükleri biraz daha kazdık, ancak hiç şansımız olmadı. Kaydedilen tüm istekler arama motorlarından geliyordu. Neyse ki, Google Arama Konsolu, günlüklerden birinde yönlendiren sayfalardan birine sahipti.

Sayfanın Google Arama Konsolu incelemesi
Google'ın Arama Konsolu aracı bizim için bazı ipuçları verdi.

Şimdi Alacakaranlık Kuşağı şapkamızı bir CSI şapkasıyla değiştirmenin ve mikroskop altına koymak için bazı web sitesi kemiklerini kazmanın zamanı geldiğini düşünüyorum.

Eğitimli bir göz için, yönlendiren sayfa URL'sinin güvenliği ihlal edilmiş bir web sitesine ait olduğunu görmek kolaydır; Neyse ki, iyi eğitimli gözlerimiz var! `index.php` dizini hiçbir anlam ifade etmiyor ve muhtemelen web sitesi sahibinin kafasını karıştırmak için eklendi. Ardından, başka bir rastgele dizin ve muhtemelen son yükü alan bir yükleyici olan rastgele ada sahip bir PHP dosyası gelir: yine rastgele olan "cargese4/cca442201.htm". Bunların tümü, bir bağlantı çiftliği kötü amaçlı yazılım bulaşmasının özellikleridir.

Yönlendiren site için neyin dizine eklendiğini görmek için Google'da hızlı bir arama, sitenin gerçekten virüslü olduğunu ve bir süredir SEO spam'ı sunduğunu doğruladı. Site Hindistan'daki bir gıda şirketi için ama Japonya'da SUV'lar için fırsatlar sunuyor - evet, bu spam.

Spam saldırısı için Japonca arama sonuçları
Hint sitelerinde Japonca spam getiren arama sorgusu.

Ancak, sonuçların hiçbiri arkadaşımızın web sitesine bağlı değildi, bu yüzden diğer sitelerin bu aynı garip davranıştan etkilenip etkilenmediğini bulmaya karar verdim.

Bu spam saldırısının daha fazla kurbanını aramak için, yalnızca eğitim amaçlı olarak, URL'sinde '/?s=' olan .edu ile biten siteleri döndürecek bir arama sorgusu oluşturmak için Google-fu bilgimizi kullandık, ve başlıkta "satın al" kelimesi. Ve 22 sonuç aldık. Bu da avımıza yeter.

spam hapları için arama sonuçları
İstenmeyen posta bulaşmasını kontrol etmek için .edu ve .gov sitelerini kullanmak, yalnızca bağlantı oluşturma için oluşturulmuş etki alanlarını (.com gibi) filtreleyin.

Bu, bildirilen sitenin etkilenen tek yer olmadığının kanıtıdır; daha yaygın bir sorun gibi görünüyor. Google'ın bu sayfaları endekslemesine neden olabilecek şeyler üzerinde düşündük. Googlebot onlara nasıl ulaştı? Sonraki adım: geri bağlantı denetleyicileri.

Bir geri bağlantı kontrolünden elde edilen sonuçlar
Bir geri bağlantı kontrolünden elde edilen sonuçlar

Web sitelerine geri bağlantılar hakkında raporlar sağlayan birkaç çevrimiçi araç vardır; Bu araştırmada kullandığımız Ahrefs'ti, ancak diğer araçlar da aynı sonuçlara ulaşabilir. Kötü amaçlı arama sayfalarından bazıları sonuçlarda listelenerek doğru yolda olduğumuzu doğruladı.

Neler olup bittiğini kontrol etmek için bu web sitelerinden birini seçtiğimizde, bir sonraki ekran görüntüsünde görebileceğiniz gibi, yaklaşık 5.000 spam yorumu gördük (Jetpack Anti-spam'e bakmalılar). Her yorum, sorguda spam içeren bir web sitesi arama sayfasına bağlanıyordu.

Spam sonuçlarına bağlantı veren yorum bölümü
Spam'e bağlanan yorumlar

Beyaz tavşanı yakalamak

Daha önce de belirttiğim gibi, arama motoru robotları web sitelerinin sayfalarında sorgulama yapmaz. Ancak, bir bağlantı bulursa, takip edilir. Sayfa, otomatik komut dosyasına belirli bir sayfanın dizine eklenemediğini söylemezse, onu ekler.

Enjekte edilen spam örneği
Enjekte edilen spam

Bu, arama motoru sonuçlarına spam göndermek ve düşük çabayla bağlantı çiftçiliği yoluyla site sayfa sıralamasını artırmak için bir web sitesine spam "enjekte etmenin" akıllı bir yöntemidir.

Artık sorunu anladığımıza göre, arama motoru botlarına arama sayfalarına giden bağlantıları takip etmekten kaçınmalarını (veya sadece onları dizine eklemeyi reddetmelerini) nasıl söyleriz? En iyi yol, tüm topluluğu korumaya yardımcı olacak WordPress Core'da bir değişiklik yapmak olacaktır (bir hatayı bildirmek veya kodla katkıda bulunmak istiyorsanız, lütfen bize katılın).

Gereksiz yeniden çalışmayı önlemek için, WordPress Core izini kontrol ettik ve 5.7 sürümünde çözülen bu sorunu bulduk, ancak ne yazık ki bir güvenlik sorunu olarak değişiklik günlüğüne girmedi.

Sorunu benden daha iyi anlatan yazardan alıntı yapacağım (rapor için teşekkürler abagtcs):

Web spam göndericileri, spam göndericilerin sitelerinin arama sıralamalarını yükseltme umuduyla, spam terimleri ve ana bilgisayar adları vererek bu sitelerin arama özelliklerini kötüye kullanmaya başladılar.

İstenmeyen e-posta gönderenler, bu bağlantıları açık wikilere, blog yorumlarına, forumlara ve diğer bağlantı çiftliklerine yerleştirir, arama motorlarının bağlantılarını taramasına ve ardından spam içerikli arama sonuçları sayfalarını ziyaret edip dizine eklemesine güvenir.

Bu saldırı şaşırtıcı bir şekilde oldukça yaygındır ve dünyadaki birçok web sitesini etkiler. Bazı CMS'ler ve özel olarak yazılmış kodlarla desteklenen siteler, ön araştırmaya dayanarak bu tekniğe karşı savunmasız olsa da, en azından .edu alanında açık ara en çok hedeflenen web platformunun WordPress olduğu görülüyor.”

Web'deki en büyük sitelerin %41'inden fazlasının WordPress siteleri olması şaşırtıcı değildir.

davayı kapatmak

Bu olaydan çıkarılacak bazı iyi dersler var:

  1. En Çok Büyüyen Sayfalarda sunulan URL iyi temizlenmemiş, bu nedenle emojilerle ayrılmış olarak gördüğünüz spam URL'leri aslında doğrudan tıklanabilir (merhaba Google arkadaşları, bu sizden); habersiz kullanıcılar üzerlerine tıklayabilir ve istenmeyen içeriğe erişebilir.
  2. Açıkça spam içerikli sayfaların dizine eklenmesini önlemek için Google tarafından bazı ince ayarlara ihtiyaç vardır. Araç raporuna göre, spam eklenirken bazı temiz sayfalar tarandı ve dizine eklenmedi.
  3. Saldırganlar, sisteminizdeki en küçük açıklıktan bile yararlanacak ve her zaman tetikte olmalıyız.
  4. Her zaman insanları dinleyin ve sorunlarını anlayın. Günlükleri yalnızca kendi araçlarımızdan kontrol etseydik, bu sorunun farkında olmazdık veya sitelerini düzeltmeye yardımcı olamazdık.
  5. Yazılımınızı güncel tutun. Her zaman.

Jetpack'te web sitelerinizin bu tür güvenlik açıklarından korunmasını sağlamak için çok çalışıyoruz. Yeni tehditlerden bir adım önde olmak için güvenlik taraması ve otomatik kötü amaçlı yazılım temizlemeyi içeren Jetpack Scan'e göz atın.

Ve bu konuyu vurguladığı ve soruşturmaya yardımcı olduğu için Erin Casali'ye bir tüyo.