Sitenizi temizleme ve bakımını yapma

Sitenizi temiz tutmak ve gelecekte saldırılara karşı önlem almak için aşağıdakilere ihtiyacınız vardır:

  • Sitenizin sunucularına kabuk veya terminal yöneticisi erişimi: web, veritabanı, dosyalar
  • Kabuk veya terminal komutları bilgisi
  • Kodu anlama (PHP veya JavaScript gibi)
  • Dosyalar, veritabanı ve resimler dahil olmak üzere sitenizin yedeklerini oluşturmak için depolama alanı

Sonraki işlemler

Bu adımda çeşitli işlemleri anlatacağız:

  • Bilgisayar korsanının kullanıcıların kişisel bilgilerini elde etmek istediğini düşünüyorsanız (ör. kimlik avı sayfaları aracılığıyla) ek kaynakları nerede bulabilirsiniz?
  • Google Arama sonuçlarında görünmesini istemediğiniz, bilgisayar korsanı tarafından oluşturulan tamamen yeni, istenmeyen, kullanıcı tarafından görülebilen URL'lerin kaldırılmasını hızlandırmak için Search Console'da URL kaldırma seçeneğini kullanma.
  • Google'ın, Google Arama sonuçlarında görünmesini istediğiniz temiz sayfaları (yani yeni veya yeni güncellenmiş sayfaları) işleme sürecini hızlandırmak için Search Console'da Google'dan URL'lerinizi yeniden taramasını isteme seçeneği.
  • Yazılımın en son ve en güvenli sürümünün yüklenmesi.
  • Sitenizi gelecekte daha savunmasız hale getirebilecek gereksiz veya kullanılmayan uygulamaların ya da eklentilerin kaldırılması.
  • İyi içeriği geri yükleme ve bilgisayar korsanının içeriğini kaldırma.
  • Bilgisayar korsanının istismar ettiği temel güvenlik açığını düzeltme.
  • Tüm şifreleri değiştirme
  • Sitenizin güvenliğini sağlamaya yönelik planlama yapma

1. Destek kaynaklarını bulma

Sitenizden gizli kullanıcı bilgileri elde edildiyse (ör. kimlik avı saldırısının bir parçası olduğu için) sitenizi temizlemeye veya dosyaları silmeye başlamadan önce ticari, yasal veya yasal sorumlulukları göz önünde bulundurabilirsiniz. Kimlik avı durumunda antiphishing.org'da Siteniz kimlik avı yapanlar tarafından saldırıya uğradıysa yapmanız gerekenler başlıklı doküman gibi yararlı kaynaklar bulabilirsiniz.

2. Bilgisayar korsanı tarafından oluşturulan yeni URL'lerin kaldırılması işlemini hızlandırmayı düşünün

Bilgisayar korsanı tamamen yeni, kullanıcı tarafından görülebilen URL'ler oluşturmuşsa Search Console'daki URL'leri kaldır özelliğini kullanarak bu sayfaların Google Arama sonuçlarından daha hızlı şekilde kaldırılmasını sağlayabilirsiniz. Bu adım isteğe bağlıdır. Sayfaları silip sunucunuzu 404 durum kodu döndürecek şekilde yapılandırırsanız sayfalar zaman içinde doğal olarak Google'ın dizininden çıkar.

  • URL Kaldırma özelliğini kullanma kararı muhtemelen oluşturulan yeni, istenmeyen sayfa sayısına (çok fazla sayfanın URL Kaldırma işlevine eklenmesi zahmetli bir iş olabilir) ve bu sayfaların kullanıcılara neden olabileceği olası hasara bağlı olacaktır. URL kaldırma yoluyla gönderilen sayfaların arama sonuçlarında hiç görünmemesi için sayfaların, istenmeyen ve kaldırılan URL'ler için 404 Dosya Bulunamadı yanıtı döndürecek şekilde yapılandırıldığından emin olun.
  • Yalnızca bilgisayar korsanı tarafından zarar görmüş, daha önce iyi durumda olan sayfaların kaldırılmasını istemek için bu aracı kullanmayın. Bu sayfaların, temizlendikten sonra arama sonuçlarında görünmesini istersiniz. URL Kaldırma aracı sadece sonuçlarda görünmesini istemediğiniz sayfalar içindir.

3. Google'ın temiz sayfalarınızı işlemesini hızlandırmayı düşünün

Yeni veya güncellenmiş temiz sayfalarınız varsa bu sayfaları Google'ın dizine göndermek için Search Console'da Google'dan URL'lerinizi yeniden taramasını isteyebilirsiniz. Bu isteğe bağlıdır. Bu adımı atlarsanız yeni veya değiştirilmiş sayfalarınız muhtemelen zaman içinde taranır ve işlenir.

4. Sunucularınızı temizlemeye başlayın.

Hasarı değerlendirme ve Güvenlik açığını belirleme sırasında aldığınız notlara göre sitenizi temizlemeye başlamanın zamanı geldi. Bu adımda izleyeceğiniz yol, kullandığınız yedekleme türüne bağlıdır:

  • Temiz ve güncel yedek
  • Temiz, ancak eski yedek
  • Hiç yedek yok

Öncelikle, yedeğinizin siteniz saldırıya uğramadan önce oluşturulup oluşturulmadığını kontrol edin.

Temiz ve güncel yedek

  1. Yedeğinizi geri yükleyin.
  2. Varolan yeni yazılım sürümlerini, güncellemeleri veya yamaları yükleyin. Buna, sunucunun kontrolünü siz yapıyorsanız işletim sistemi yazılımı ve içerik yönetim sistemi, e-ticaret platformu, eklentiler veya şablonlar gibi tüm uygulamalar dahildir.
  3. Sitenin artık kullanmadığı yazılımları (widget'lar, eklentiler veya uygulamalar gibi) sunucunuzdan kaldırabilirsiniz.
  4. Güvenlik açığını kapatın.
  5. Hasarı değerlendirme adımında bulunan tüm sorunların giderildiğinden emin olun.
  6. Siteyle ilgili tüm hesapların (ör. FTP erişimi, veritabanı erişimi, sistem yöneticileri ve içerik yönetim sistemi hesaplarının giriş bilgileri) şifrelerini bir kez daha değiştirin. Unix tabanlı sistemlerde:
passwd admin1

Temiz, ancak eski yedek

  1. Hâlâ virüslü olsa bile geçerli sitenizin disk görüntüsünü oluşturun. Bu kopya sadece güvenlik içindir. Kopyayı diğerlerinden ayırt etmek için virüslü olarak işaretleyin. Unix tabanlı bir sistemde disk görüntüsü şu şekilde oluşturulabilir:
dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz
  1. Resimler ve medya dosyaları dahil olmak üzere sunucunuzun yedek dosya sistemi kopyasını oluşturun. Bir veritabanınız varsa, onu da yedekleyin.
tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql
  1. Temiz, ancak eski yedeği sunucunuza geri yükleyin.
  2. Sunucunuzda sitenin artık kullanmadığı yazılımları (ör. widget'lar, eklentiler veya uygulamalar) kaldırıp kaldıramayacağınızı düşünün.
  3. Sunucunun kontrolünü siz yapıyorsanız işletim sistemi dahil tüm yazılımları ve içerik yönetimi sistemi, e-ticaret platformu, eklentiler ve şablonlar gibi tüm yazılım uygulamalarını yükseltin. Mevcut güvenlik güncellemelerini ve yamalarını kontrol edip yüklediğinizden emin olun.
  4. Güvenlik açığını kapatın.
  5. Temiz yedek ile mevcut virüslü kopya arasında manuel veya otomatik olarak bir site diff gerçekleştirin.
diff -qr www/ backups/full-backup-20120124/
  1. Yükseltilen sunucuya, virüslü kopyadan korumak istediğiniz yeni ve temiz içerikleri yükleyin.
rsync -avz /backups/full-backup-20120124/www/clean-file.jpg /www/
  1. Hasarı değerlendirin bölümünde listelenen her URL'nin düzeltildiğinden emin olun.
  2. Siteyle ilgili tüm hesapların (ör. FTP erişimi, veritabanı erişimi, sistem yöneticileri ve içerik yönetim sistemi hesaplarının giriş bilgileri) şifrelerini bir kez daha değiştirin. Unix tabanlı sistemlerde:
$passwd admin1

Hiç yedek yok

Virüs hâlâ sitenizde olsa bile sitenizin iki yedeğini oluşturun. Yedek bir kopya, yanlışlıkla silinen içeriği kurtarmanıza yardımcı olur veya bir sorunla karşılaşırsanız geri dönüp tekrar denemenize olanak tanır. Gelecekte referans olması için her yedeğe “virüslü” etiketi ekleyin.

Yedeklerinizden biri bir disk görüntüsü veya sitenizin "klon sürümü" olacaktır. Bu biçim, içeriği geri yüklemeyi daha da kolaylaştırır. Disk imajını acil durumlar için bir kenara koyabilirsiniz. Unix tabanlı bir sistemde, disk görüntüsü oluşturmak için aşağıdaki kodu kullanın:

dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz

Diğer yedek, resimler ve medya dosyaları da dahil olmak üzere sunucunuzdaki dosya sisteminin bir kopyasıdır. Veritabanı varsa veritabanını da yedekleyin.

tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql

Disk görüntünüz yoksa veritabanının ve dosya sisteminin ikişer yedeğini oluşturun.

Sitenin içeriğini yeni yedek dosya sistemi kopyasında (sunucunun kendisinde değil) temizlemek için aşağıdakileri yapın:

  1. Daha önceki araştırmanızda çok esnek dosya izinleri bulduysanız bunları düzeltin. Bunu sunucuda değil, yedek kopyada yaptığınızdan emin olun.
  2. Ayrıca, yedek kopyada, güvenliği ihlal edilmiş olarak bulunan URL'lere karşılık gelen tüm dosyaları Hasarı değerlendir bölümünden temizleyin. Bunlar sunucu yapılandırma dosyaları, JavaScript, HTML veya PHP olabilir.
  3. Saldırgan tarafından oluşturulan ve Search Console'daki URL kaldırma aracını kullanarak göndermiş olabileceğiniz ya da göndermemiş olabileceğiniz yeni dosyaları da kaldırdığınızdan (404 yanıtı gönderdiğinizden) emin olun.
  4. Kodunuzda veya kırılan şifrelerinizde güvenlik açığı varsa kapatın. Giriş doğrulama kitaplıkları veya güvenlik denetlemeleri yardımcı olabilir.
  5. Sitenizde veritabanı varsa yedeğinizde bilgisayar korsanı tarafından değiştirilen kayıtları temizlemeye başlayın. İşlemi tamamladığınızı düşünmeden hemen önce, veritabanının temiz olduğundan emin olmak için daha fazla kaydı kontrol edin.
  6. Siteyle ilgili tüm hesapların (ör. FTP erişimi, veritabanı erişimi, sistem yöneticileri ve CMS hesapları için girişler) şifrelerini bir kez daha değiştirin. Unix tabanlı sistemlerde şu kodu kullanın:
$passwd admin1

Bu noktada, sitenizin bir zamanlar virüs bulaşan yedek kopyası yalnızca temiz veriler içermelidir. Bu temiz kopyayı bir kenarda saklayın ve 5 numaralı işleme gidin.

5. Gereksiz yazılımları kaldırın

Sunucunuzdaki sitenin artık kullanmadığı widget'lar, eklentiler veya uygulamalar gibi yazılımları kaldırıp kaldıramayacağınızı düşünün. Bu, güvenliği artırabilir ve gelecekteki bakım işlemlerini basitleştirebilir.

6. Tüm sunucuları temizleyin

  1. Sadece yeni sürüme geçme değil, temiz bir yükleme yapın. Yeni sürüme geçme işlemleri geride eski bir sürümden dosya bırakabilir. Virüslü bir dosya sunucuda kalırsa sitenizin tekrar saldırıya uğrama olasılığı artar.
    • Sunucunun kontrolü sizdeyse yeni yüklemede işletim sistemi ve içerik yönetim sistemi, e-ticaret platformu, eklentiler ve şablonlar gibi tüm yazılım uygulamaları bulunmalıdır. Mevcut güvenlik güncellemelerini ve yamalarını kontrol etmeyi unutmayın.
  2. Temiz yedek dosya sistemi kopyasından iyi içerikleri yeni kurulan sunuculara aktarın. Yalnızca bilinen temiz dosyaları veya veritabanını yükleyin ve geri yükleyin. Uygun dosya izinlerini koruduğunuzdan ve yeni yüklenen sistem dosyalarının üzerine yazmadığınızdan emin olun.
  3. Siteyle ilgili tüm hesaplar için şifreleri (ör. FTP erişimi, veritabanı erişimi, sistem yöneticileri ve İYS hesapları için girişler) son bir kez değiştirin. Unix tabanlı sistemlerde aşağıdaki kodu kullanın:
passwd admin1

7. Uzun vadeli bir bakım planı yapın

Aşağıdakileri yapmanızı önemle tavsiye ederiz:

  • Sitenizin düzenli olarak ve otomatik şekilde yedeklerini oluşturun.
  • Yazılımı güncel tutma konusunda tedbirli olun.
  • Tüm uygulamaları, eklentileri ve diğer üçüncü taraf yazılımları sunucunuza yüklemeden önce güvenlik uygulamalarını anlayın. Bir yazılım uygulamasındaki güvenlik açığı, sitenizin tamamının güvenliğini etkileyebilir.
  • Güçlü şifreler oluşturulmasını zorunlu kılın.
  • Makinede oturum açmak için kullanılan tüm cihazları güvenli tutun (güncel işletim sistemi ve tarayıcı).

8. Temizleme işleminin tamamlandığını bir daha kontrol edin

Aşağıdaki sorulara “evet” yanıtı verebildiğinizden emin olun:

  • Bilgisayar korsanı kullanıcıların kişisel bilgilerini elde ettiyse gerekli adımları attım mı?
  • Sistemde yazılımın en yeni, en güvenli sürümü mü çalışıyor?
  • Sitemin gelecekte daha savunmasız hale gelmesine neden olabilecek tüm gereksiz veya kullanılmayan uygulamaları ya da eklentileri kaldırdım mı?
  • İçeriğimi geri yükledim ve bilgisayar korsanının içeriğini ortadan kaldırdım mı?
  • Siteme saldırı yapılmasına olanak veren güvenlik açığının asıl nedenini ortadan kaldırdım mı?
  • Sitemi güven altında tutacak bir planım var mı?

Artık sitenizi tekrar çevrimiçi duruma getirebilirsiniz.