Projeler ve ajans desteği için müsait · Hızlı yanıt, işi yapan kişiden

PrestaShop mağazam hiçbir parola sızmadan ele geçirildi

Paylaşılmış bir erişim yok, zayıf bir parola yok, virüslü bir bilgisayar yok; buna rağmen sunucuda size ait olmayan kod var: son yılların en ağır açıkları ne bir hesap ne de kimlik doğrulama istiyordu, yalnızca mağazanın herkese açık bir sayfası yetiyordu.

Sorunumu anlatayım Mesaj gönderin

« Parolamı kim ele geçirdi » sorusu her zaman geçerli değildir

Bir mağaza ele geçirildiğinde ilk refleks çalınmış bir kimlik bilgisi aramaktır: erişimi hâlâ duran eski bir tedarikçi, virüs bulaşmış bir bilgisayar, başka bir yerde tekrar kullanılmış bir parola. Bu meşru bir izdir ve bazen doğru iz de odur. Ancak son yıllarda PrestaShop ekosisteminde yayınlanan açıkların bir bölümü bunların hiçbirini gerektirmez. Bu açıklar dışarıdan, mağazanın herkese açık bir sayfası üzerinden, hesap olmadan, oturum olmadan ve sizin herhangi bir işlem yapmanıza gerek kalmadan istismar edilir.

Buna kimlik doğrulaması gerektirmeyen istismar denir. Sunucu, sıradan bir ziyarete benzeyen bir istek alır; tek fark, gönderilen değerlerden birinin modül yazarının öngörmediği bir davranışı tetiklemek için özel olarak hazırlanmış olmasıdır. Modül bu değeri normal bir çalışma verisi gibi işler; açığın türüne göre sonuç, saptırılmış bir veritabanı sorgusu veya sunucuda çalıştırılan bir koddur. Hiçbir aşamada parola devreye girmez. Dolayısıyla olaydan sonra tüm kimlik bilgilerini değiştirmek kapıyı kapatmaz: o kapı zaten hiçbir zaman bir kimlik bilgisiyle kapalı tutulmuyordu.

Sık rastlanan ikinci yanlış anlama şudur: « yönetim panelim korumalı, erişimleri kısıtladım ». Yönetim panelini korumak iyi bir uygulamadır ama bu açıklar yönetim panelinden geçmez. Mağazanın kendisinden, yani tüm ziyaretçilerinize bilerek açık bıraktığınız kısımdan geçer. Bu durum yeni de değildir: 22 Ocak 2025'te PrestaShop, çekirdekte değil üçüncü taraf modüllerde bulunan SQL enjeksiyonu açıklarını istismar eden bir saldırı dalgası hakkında resmi bir uyarı yayınlamıştı.

Bu durumda bir satıcının gördükleri

  • Bir modülün klasöründe tanımadığınız, değişiklik tarihi yeni olan PHP dosyaları.
  • Kayıtlarda şüpheli hiçbir yönetici girişi yok: dışarıdan kimse hiçbir zaman oturum açmamış.
  • Günlüklerde sitenin köküne giden sıradan görünümlü POST istekleri, çok sayıda ve düzenli aralıklarla.
  • Filtre içeren kategori sayfalarında veya bir promosyon penceresinde anormal davranış.
  • Tüm parolalarınız benzersiz ve yeni olduğu hâlde anormal etkinlik bildiren bir barındırma sağlayıcısı.
  • Temizlik ve parolaların tamamen değiştirilmesinden birkaç gün sonra sorunun geri dönmesi.

Herkese açık iki yüzey: bir filtre sayfası ve bir promosyon penceresi

3 Haziran 2026'da PrestaShop, resmi çok yönlü filtreleme modülü ps_facetedsearch ile ilgili GHSA-m5f5-28qr-9g9r güvenlik bildirimini yayınladı; referansı CVE-2026-54159. Bu modül, kategori sayfalarınızda fiyat, marka veya özellik filtrelerini gösteren modüldür. CVSS puanı 10,0, yani ölçeğin en üst değeri. Etkilenen sürümler 3.0.0 ile 4.0.3 arasıdır, düzeltilmiş sürüm 4.0.4'tür.

Nedeni, önbelleğe alınmış filtre verilerinin güvenli olmayan biçimde ters serileştirilmesidir: URL üzerinden taşınan fiyat ve ağırlık kaydırıcısı değerleri önce serileştiriliyor, sonra unserialize() ile geri okunuyordu. Sonuç bir PHP nesne enjeksiyonu ve buradan uzaktan kod çalıştırmadır. Bildirime göre istismar uzaktan, hesap ve kimlik doğrulaması olmadan, tek bir istekle mümkündür ve sunucunun tamamen ele geçirilmesine yol açabilir. Açığı Frédéric Moreau (Antadis) ve Gilles Caudal (Datalinx) buldu.

Ertesi gün, 4 Haziran 2026'da PrestaShop 9.1.4 ve 8.2.7 sürümlerini yayınladı. Bu sürümler çekirdekte hiçbir değişiklik yapmaz ve hiçbir davranışı değiştirmez: yalnızca ps_facetedsearch 4.0.4'ü içerirler, böylece yeni bir kurulum düzeltilmiş modülle başlar (9.1.4 ayrıca bazı bağımlılıkları günceller: Symfony 6.4.41 ve Twig 3.27.1). Yani hâlihazırda kurulu bir mağazada önemli olan modülün sürümüdür, çekirdeğinki değil. Birçok satıcı çekirdeğe bakıp yanlış sonuca varıyor.

İkinci örnek, Idnovate tarafından yayınlanan üçüncü taraf promosyon penceresi modülü advancedpopupcreator'dır. 16 Şubat 2026 tarihli bildirim, CVE-2025-69633, CVSS puanı 9,8, 1.2.7'den önceki tüm sürümlerde kimlik doğrulaması gerektirmeden istismar edilebilen bir SQL enjeksiyonunu anlatır; düzeltme 1.2.7 sürümüdür ve bildirim, modül kullanılmıyorsa kaldırılmasını önerir. Sizin için asıl önemli ayrıntı başka yerde: denemeler site günlüklerinde sıradan POST / istekleri olarak görünür. Özel bir araç olmadan bunları normal trafikten ayırmak mümkün değildir. Birçok satıcının hiçbir saldırı izi bulamayıp çalınmış parola varsayımına dönmesinin nedeni tam olarak budur.

Bu sırayla kontrol ediyorum

  1. Çok yönlü filtreleme modülünün tam sürümünü öğrenin

    Yönetim panelindeki modül listesinde ps_facetedsearch modülünü bulun ve görünen sürümü not edin. Yönetim paneli yavaş, eksik veya erişilemez durumdaysa modülün yapılandırma dosyasını /modules/ps_facetedsearch/ klasöründen FTP ile doğrudan okuyun: en güvenilir kaynak budur. Etkilenen sürümler 3.0.0 ile 4.0.3 arasıdır.

  2. Aynı kontrolü promosyon penceresi modülleri için yapın

    advancedpopupcreator modülünde 1.2.7'den önceki tüm sürümler etkilenmiştir. Modülü artık kullanmıyorsanız bildirim, devre dışı bırakmak yerine kaldırmanızı önerir.

  3. Modülün klasörünü inceleyin

    Resmi bildirim, /modules/ps_facetedsearch/ klasörünün beklenmeyen PHP dosyalarına karşı incelenmesini önerir. Klasörü aynı sürümün temiz bir arşiviyle karşılaştırın: fazladan olan veya yakın zamanda değiştirilmiş her dosyanın bir açıklaması olmalıdır.

  4. Filtre önbelleğini temizleyin

    Bildirimin önerdiği ikinci olay sonrası kontrol budur. Önbelleğe alınmış filtre verileri açığın dayandığı malzemenin ta kendisidir; modül düzeltildikten sonra bunları saklamanın hiçbir anlamı yoktur.

  5. Güncellemeden önce yedek alın

    PrestaShop, her güncellemeden önce veritabanının ve dosyaların tam yedeğini almanızı, ardından Update Assistant üzerinden ilerlemenizi önerir. Zaten ele geçirilmiş bir mağazada bu yedek aynı zamanda inceleme malzemesidir: üzerine yazmayın.

  6. Yalnızca istismar edileni değil, geride bırakılanı da arayın

    Başarılı bir kod çalıştırma neredeyse her zaman arkasında bir şey bırakır. Modülü düzeltmek girişi kapatır ama daha önce kurulmuş olanı kaldırmaz; bu nedenle dosya incelemesi zorunludur.

Konuyla ilgili diğer sayfalar

İhtiyacınızı bir dakikada anlatın

Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.

constat
plateforme
depuis-quand (facultatif)
sauvegarde
Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Sıkça sorulan sorular

Parolamı kimse ele geçirmediyse sitem nasıl ele geçirilmiş olabilir?
Çünkü açık, hesap kavramı devreye girmeden önce herkese açık bir sayfada tetiklenir. İstek normal bir ziyarete benzer ve modül, özel hazırlanmış bir değeri meşru veri gibi işler. Hiçbir aşamada kimlik bilgisi gerekmez.
PrestaShop 9.1.4 kullanıyorum, güvende miyim?
4 Haziran 2026'da yayınlanan 9.1.4 ve 8.2.7 sürümleri, yeni bir kurulumun temiz başlaması için düzeltilmiş modülü içerir. Mevcut bir mağazada riskinizi belirleyen ps_facetedsearch sürümüdür, çekirdeğin sürümü değil. Modülün kendisini kontrol edin.
Günlüklerimde anormal bir şey yok, hiçbir şey olmadı anlamına mı gelir?
Hayır. Promosyon penceresi modülündeki SQL enjeksiyonu için bildirim, denemelerin sitenin köküne giden sıradan POST isteklerine benzediğini belirtir. Özel bir araç olmadan normal trafikle karışırlar.
Modülü güncellemek mağazayı temizlemeye yeter mi?
Hayır. Güncelleme girişi kapatır, daha önce bırakılmış olanı kaldırmaz. Bildirim, modül klasörünün beklenmeyen PHP dosyalarına karşı incelenmesini ve filtre önbelleğinin temizlenmesini önerir.
Yine de tüm parolaları değiştirmeli miyim?
Evet, ancak modülü düzelttikten sonra, onun yerine değil. Sunucu düzeyinde bir ele geçirmede nelerin okunduğunu kanıtlayamazsınız; erişimleri sıfırlamak yerindedir, yeter ki bu işlem gidermenin kendisi sanılmasın.