Magento E-Ticaret yazılımına 490 $ ile sahip olabilirsiniz. Yıllık ödeme yok..

Detaylar için tıkla Bizi direkt arayabilirsiniz : 0 212 982 48 18

Magento 2 İçin Temel Güvenlik Tüyoları:

Magento 2 İçin Temel Güvenlik Tüyoları

Magento 2 İçin Temel Güvenlik Tüyoları

Üstesinden gelin, güvenlik herhangi bir çevrimiçi iş sürecinin ayrılmaz bir parçası olmalıdır. Bir tüccar olarak ilk elden biliyorsunuz, özellikle web siteleri ve e-ticaret siteleri yılın 365 günü 7/24 tehlikeye atılıyor.

Perakendenin 2019-2022 için en çok saldırıya uğrayan ilk 10 sektörden biri olacağı tahmin ediliyor

Sırada kim var? Belki siz… Yoksa gerçekten Magento 2’nin bir istisna yaptığına inanıyor musunuz? Ne yazık ki değil.

2020 itibariyle, Magento tarafından desteklenen 250.000’den fazla aktif e-Ticaret sitesi var ve bu, tüm çevrimiçi mağazaların yaklaşık %12’sini oluşturuyor.

Magento, diğer e-ticaret çözümlerine kıyasla yıllardır en yaygın platformlardan biri olmuştur. Teknik yetenekler, yalnızca e-ticaret başlangıç ​​ihtiyaçlarını değil, daha büyük işletmelerin ve perakende devlerinin taleplerini de kapsar.

Gerçek, platformu saldırganlar için tatlı bir yayılma haline getiriyor. Bunu gündeme getirmemizin ve size Magento 2 yerel güvenlik özelliklerini ve temel güvenlik saldırılarını anlatmamızın nedeni budur.

Magento 2 için temel güvenlik tüyoları

Güvenlik taramasını kullan

Magento 2 İçin Temel Güvenlik Tüyoları: Magento Güvenlik Taraması oturumlarını zamanında çalıştırın. Bu ücretsiz araç, mağazanızı bilinen güvenlik açıklarına karşı test edecek ve size yararlı güvenlik yamaları hakkında bilgi verecektir.

Ayrıca, çevrenin ve Magento’nun nasıl korunacağına ve hangi işaretlerin saldırı girişimlerine işaret edebileceğine ilişkin en iyi güvenlik uygulamalarını kontrol edin.

Yönetici panelinizi kötü amaçlı etkinliklerden korumak için yapmanız gereken ayarları burada bulabilirsiniz.

Ön uç/arka uç CAPTCHA ve Google ReCAPTCHA kullanın

2.3+ sürümünden başlayarak, Magento, bir insanın web sitenize erişme girişiminde bulunmasını sağlamak için mağazanızın hem ön hem de arka bölümleri için CAPTCHA kurulumuna izin verir.

Ayrıca, Google yeniden CAPTCHA artık Adobe Commerce’de mevcuttur. Google reCAPTCHA, farklı görüntüleme seçenekleri ve yöntemleri arasından gelişmiş güvenlik sağlayabilir.

İki faktörlü kimlik doğrulama kullanın

2.3 sürümünde özellik varsayılan olarak devre dışı bırakılmıştır, 2.4+ sürümünde zorunludur. Kimlik doğrulama yalnızca mağaza yöneticileri için sağlanır ve müşterileri kapsamaz.

  1. Magento 2F kimlik doğrulama anahtarlarının kullanımını ayarlamak için Mağazalar > Ayarlar > Yapılandırma bölümüne gidin .
  2. Güvenlik sekmesi altında 2FA’yı seçin .
  3. Genel bölümünü açın ve Sağlayıcınızı seçin .
  4. Sağlayıcınızın ayarlarını belgelere göre tamamlayın .
  5. Kaydetmek.

Magento 2 İçin Temel Güvenlik Tüyoları: Güçlü şifreler kullanın

  • Varsayılan yönetici URL anahtarını https://yoursite.com/backend veya https://yoursite.com/admin özel bir anahtarla değiştirin.
  • IP beyaz listesini (yönetici panelinize yalnızca belirli IP adresleri erişebilir) veya VPN hizmetlerini kullanın.
  • Parolalarınızı en az üç ayda bir değiştirin.
  • Gerçekten ihtiyacı olan kullanıcılara yönetici erişimi verin. Yalnızca iş için gerekli olan yönetici sekmelerine erişim verin, yönetici rollerini yapılandırın. Ve asla bir hesabı birkaç kullanıcıyla paylaşmayın.

Gelişmiş yönetici erişim izinlerini kullanın

Magento 2 Commerce’de, web sitesi/mağaza görünümüne göre kapsamlar ayarlayabilirsiniz. Böylece, bir kullanıcı belirli bir web sitesi/mağaza görünümü ile ilgili verileri görme izinlerine sahip olacaktır. Ayrıca, yönetici kullanıcıların eylemlerini günlüğe kaydeder.

5 MAGENTO 2 VANILLA GÜVENLİK ÖZELLİKLERİ

Yeni 2.4+ sürümüne toplu geçiş ve çok sayıda tespit edilen güvenlik açığı ile Magento Güvenlik Merkezi ,  bugün burada bahsedeceğimiz temel yönetici yapılandırmaları için güvenlik yamaları ve güncellemeleri düzenli olarak yayınlar.

#1 GÜÇLÜ VERİ ŞİFRELEME

Güçlü veri şifreleme, iyi bilinen Magento 2 güvenlik özelliklerinden biridir. Hem Magento Commerce hem de Magento Açık Kaynak sürümleri için mevcuttur ve  parolaları ve diğer savunmasız bilgileri korumak için güçlü bir şifreleme anahtarının kullanımına odaklanmıştır .

Tüm hassas bilgiler  AES-256 algoritması ile şifrelenir  . Ayrıca şifresinin çözülmesini gerektiren bu gizli veriler, kredi kartı bilgilerini, ödeme ve kargo modülü şifrelerini içerir. Kalan bilgilere gelince, şifre çözme gerektirmez ve bu nedenle  güçlü bir SHA-256 ile hashlenir .

Magento’yu kurarken, platformun bir şifreleme anahtarı oluşturmasına izin vermeyi veya kendi anahtarınızı yazmayı seçebilirsiniz. Bu  Magento Şifreleme Anahtarı aracı,  ihtiyaç duyduğunuzda bir anahtar ayarlamanıza izin verir.

Mağaza güvenliğinizi artırmak için anahtar, örneğin orijinal anahtarın tehlikeye girebileceği herhangi bir zamanda düzenli olarak değiştirilmelidir. Şifreleme anahtarı değiştirildiğinde, tüm gizli bilgiler  yeniden şifrelenecektir .

MAGENTO 2 SECURITY İÇİN ORİJİNAL ŞİFRELEME ANAHTARINI NASIL DEĞİŞTİRİRİM?

Şifreleme anahtarını değiştirmek için şu dosyanın yazılabilir olduğundan emin olun:  [mağazanız]/app/etc/env.php .

  • Yönetici Panelinde oturum açtığınızda  , Sistem > Diğer Ayarlar > Şifreleme Anahtarını Yönet’e gidin  ;
  • Anahtarı otomatik olarak oluşturmayı veya kendi anahtarınızı kullanmayı seçin;
  • İlk değişken için  Otomatik olarak bir Anahtar oluştur seçeneğini “Evet”  olarak  ayarlayın  ve  Şifreleme Anahtarını Değiştir  düğmesini tıklayın;
  • Farklı bir anahtar kullanmak için  Anahtarı Otomatik Oluştur seçeneğini  “Hayır”  olarak ayarlayın . Ardından Yeni Anahtar alanına kullanmak istediğiniz anahtarı girin ve  Şifreleme Anahtarını Değiştir  düğmesine tıklayın.

Bu yapıldıktan sonra, yeni bir anahtar eklenir. Dosyalarınızda herhangi bir sorun olursa verilerin şifresini çözmeniz gerekebileceğinden, lütfen yeni anahtarın kaydını güvenli bir yerde saklayın.

→ Site/Gizli Anahtarın nasıl oluşturulacağını görün

#2 OTURUM DOĞRULAMASI

Magento 2, olası oturum saldırılarına veya kullanıcı oturumlarını zehirleme/kaçırma girişimlerine karşı Açık Kaynakta koruyucu bir önlem olarak oturum değişkenlerini doğrulamayı sunar.

Bu Magento 2 İçin Temel Güvenlik Tüyoları,  her mağaza ziyareti sırasında oturum değişkenlerinin nasıl doğrulandığını ve oturum kimliğinin mağazanın URL’sine dahil edilip edilmediğini belirler. Doğrulama, doğrulama değişkenlerinin değerini kullanıcı için zaten $_SESSION verilerinde depolanan oturum verileriyle karşılaştırarak ziyaretçilerin söyledikleri kişi olup olmadığını kontrol eder.

Bilgi beklendiği gibi iletilmezse ve karşılık gelen değişken boşsa doğrulama başarısız olur. Bir oturum değişkeni doğrulama sürecinde başarısız olursa,  müşteri oturumu hemen sonlandırılır .

Tüm doğrulama değişkenlerinin etkinleştirilmesi, saldırıların önlenmesine yardımcı olabilir , ancak sunucunun performansını da etkileyebilir. Varsayılan olarak, tüm oturum değişkenlerinin doğrulanması devre dışıdır. Bu nedenle, Magento kurulumunuz için en iyi kombinasyonu bulmak üzere ayarları denemeniz gerekir. Tüm doğrulama değişkenlerinin etkinleştirilmesi çok kısıtlayıcı olabilir ve bir proxy sunucudan geçen veya bir güvenlik duvarının arkasından gelen İnternet bağlantıları olan müşterilerin erişimini engelleyebilir.

Varsayılan Magento 2 oturum depolamasını kullanıyorsanız, oturum dosyalarınız aşağıdaki dizinlerde bulunacaktır:

  • /var/session
  • env.php dosyasında tanımlanan dizin
  • php.ini dosyasında yapılandırılmış dizin

MAGENTO 2’DE OTURUM DOĞRULAMA AYARLARI NASIL DEĞİŞTİRİLİR?

Magento 2 aşağıdaki oturum tiplerine sahiptir:

  1. Arka uç için kullanılan Magento\Backend\Model\Session
  2. Katalog filtreleri için kullanılan Magento\Catalog\Model\Session
  3. Ödeme için kullanılan Magento\Checkout\Model\Session
  4. Müşteri hesapları için kullanılan Magento\Customer\Model\Session
  5. Haber bülteni verileri için kullanılan Magento\Bülten\Model\Oturum .

  • Yönetici Panelinde oturum açtıktan sonra  Mağazalar>Ayarlar>Yapılandırma>Genel>Web>Oturum Doğrulama Ayarları’na gidin  :
  • Sonraki değişkenlerin nasıl ayarlanacağını seçin:
  •  Bir isteğin IP adresinin $_SESSION değişkeninde depolananla eşleştiğini doğrulamak istiyorsanız REMOTE_ADDR Doğrula’yı “Evet”  olarak  ayarlayın  ;
  •  Gelen bir isteğin proxy adresinin $_SESSION değişkeninde saklanan adresle eşleştiğini doğrulamak için HTTP_VIA’yı Doğrula’yı “Evet”  olarak  ayarlayın  ;
  •  Bir isteğin yönlendirilen adresinin $_SESSION değişkeninde saklanan adresle eşleştiğini doğrulamak istiyorsanız HTTP_X_FORWARDED_FOR Doğrula’yı “Evet”  olarak  ayarlayın  ;
  •  Bir oturum sırasında mağazaya erişmek için kullanılan tarayıcının veya cihazın $_SESSION değişkeninde depolananla eşleştiğini doğrulamak için Doğrula TTP_USER_AGENT ayarını “Evet”  olarak  ayarlayın  .
  •  Bir kullanıcının mağazalar arasında geçiş yaparken oturumunun açık kalmasını istiyorsanız Ön Uçta SID Kullan’ı “Evet”  olarak  ayarlayın  .

SID’yi analitikle birlikte çalıştırıyorsanız, analitik yazılımınızı SID’yi URL’lerden filtreleyecek şekilde yapılandırın, böylece sayfa ziyareti sayımları doğru olur.

  • Sid’i Magento 2’nin URL’sinden kaldırmak için Mağaza > Yapılandırma > Genel > Web’e gidin ve Oturum Doğrulama Ayarları bölümünü açın.
  • Storefront’ta SID Kullan alanını Hayır olarak ayarlayın .
  • Ardından Magento’nuzu yeniden dizinleyin ve önbelleği yenileyin; SID Magento 2 kaldırılacaktır.

#3 ÇEREZ DOĞRULAMASI

HTTP Çerezi, verileri bir sayfadan diğerine aktarmak için bir web sunucusundan kullanıcının web tarayıcısına gönderilen küçük bir veri paketidir. HTTP durum bilgisi olmayan bir protokol olduğu için gereklidir.

Çerez zehirlenmesi ve hırsızlık gibi artan olaylar gibi güvenlik sorunları nedeniyle  , bugün yeni bir güvenli çerez türü uygulandı. Çerez, şifreli bir HTTP bağlantısı üzerinden iletilir. Bu türü ayarlarken, secure özniteliği tarayıcının uygulamaya nasıl döndürüleceğini belirler (şifreli bağlantının hemen üzerinden).

Ancak, secure niteliği, çerezi uygulamadan tarayıcıya iletme sürecinde korumaz. Çerezi tamamen korumak için  HttpOnly ve SameSite öznitelikleri de uygulanmalıdır. HttpOnly özniteliği, tanımlama bilgilerine JavaScript tarafından erişilmesini engellerken, SameSite özelliği, yalnızca isteğin aynı etki alanından gelmesi durumunda uygulamaya tanımlama bilgilerinin gönderilmesine izin verir. Varsayılan olarak Magento, HTTPS’nin etkin olup olmadığını inceler ve otomatik olarak bir güvenlik bayrağı ayarlar.

2018’de yürürlüğe giren Genel Veri Koruma Yönetmeliği , herhangi bir kişisel veri toplama sürecini şeffaf, güvenli ve kullanıcıların rızasıyla yapmanızı gerektirir. Bu GDPR uzantısını, gereksinimlere uymanıza ve para cezalarından kaçınmanıza yardımcı olmak için geliştirdik . Ayrıca , Brezilya’da ürün satan tüccarların Ağustos 2020’de yürürlüğe giren Brezilya Genel Veri Koruma Yasasına uymasına yardımcı olmak için ayrı bir LGPD uzantısı
geliştirdik .

California Tüketici Gizliliği Yasası’na uymak için bu CCPA uzantısını kullanın .

MAGENTO 2’DE ÇEREZ İÇİN HTTPONLY BAYRAK NASIL ETKİNLEŞTİRİLMİŞTİR?

HttpOnly bayrağını uygulamak istiyorsanız, varsayılan çerez ayarlarını değiştirerek arka uç üzerinden yapabilirsiniz.

  • Yönetici Panelinde oturum açın  ve Mağaza>Ayarlar>Yapılandırma>Genel>Web>Varsayılan Çerez Ayarları’na  gidin  :
Magento 2 Güvenlik Özellikleri

Magento 2 Güvenlik Özellikleri

  •  Tüm tanımlama bilgilerinin HttpOnly yönergesini içermesine ihtiyacınız varsa Yalnızca HTTP Kullan alanını “Evet”  olarak  ayarlayın  .

Ayar etkinleştirildikten sonra, tüm HttpOnly tanımlama bilgilerine tarayıcılar tarafından erişilemez ve bu nedenle XSS tarafından çalınamaz.

#4 CSRF KORUMASI

CSRF (Siteler Arası İstek Sahtekarlığı veya XSRF) ile ilgili emsaller, Magento 2’deki güvenlik ihlalleriyle ortak platformlar arası güvenlik açıklarının akıllıca kullanılması nedeniyle 2017’de nadir değildi. Sonuç olarak, Magento DC-2017-04-003 danışma belgesi, satıcıları ikna etti: CSRF saldırılarına karşı korunmak için URL’lere Gizli Anahtar Ekleme yapılandırmasını kullanın.

Anahtar, Magento 2’de varsayılan olarak etkinleştirildiği sürece, birçok yönetici kullanıcı,  değişikliğin önemini hafife aldı ve sıkıntılı sonuçlardan muzdaripti. Deneyimli bir saldırganın form anahtarınızı bir şekilde ele geçirmesi durumunda, parola onayı gerekmeksizin herhangi bir biçimde bir CSRF saldırısı oluşturulabilir.

Saldırganlar tarafından kullanılabilen yöntemlerden biri, sonunda gerekli olanı bulana kadar yönetim panosu sayfasını diğer sayfaların gizli anahtarları için ayrıştırmaktır. Sık sık, bilgisayar korsanları savunmasız sitedeki herhangi bir eylemi kurban adına gerçekleştirmeye zorlar: parolayı değiştirme, parola kurtarma için gizli soru, e-posta vb.

Ancak, ek belirteç gibi güvenlik özellikleri,  bu tür saldırılara karşı koruma sağlamak için platform geliştiricileri tarafından uygulanır. Bu , form_key parametresi olarak kullanılan rastgele oluşturulmuş 16 karakterli alfanümerik bir dizenin,  Yönetici Panelindeki tüm formlarda ek bir CSRF belirteci olarak kullanıldığı anlamına gelir  .

Örn:
normal URL parçası:
book_audio/book_catalog/recoverImage
Tuzlu URL parçası (16 karakterli alfasayısal dizi):
book_audio/book_catalog/recoverImageXXXXXXXXXXXXXXXX

Ek belirteç, bilgilerin gönderildiği herhangi bir formla birlikte ve form gönderildikten sonra otomatik olarak oluşturulur. Magento 2 platformu, gönderilen belirteç ile oturumda depolanan arasında bir eşleşme olup olmadığını kontrol eder.

Sonuçlar çakışırsa, formun oluşturulduğu kullanıcı ile formu gönderen kullanıcı aynıdır. Formlar çakışmazsa, daha fazla işlenmez ve hiçbir bilgi bir saldırgan tarafından değiştirilemez.

#5 XSS KORUMASI

Herhangi bir web uygulamasında bulunabilen XSS güvenlik açığı, genellikle saldırganlar tarafından, kullanıcıların ziyaret ettiği bir web sayfasına kötü amaçlı kod enjekte etmek için kullanılır. Ana XSS güvenlik açığı türleri şunları içerir:

  • Kalıcı XSS ​​: doğrulanmamış veriler, Veritabanından veya Arka Uç kalıcı deposundan alınır;
  • Kalıcı olmayan XSS : bir web istemcisi tarafından sağlanan veriler, daha derin bir doğrulama olmadan bir kullanıcıya bir sayfayı ayrıştırmak ve görüntülemek için sunucu tarafı komut dosyaları tarafından kullanılır;
  • DOM XSS : Kötü amaçlı veriler, web sunucusu ile herhangi bir yineleme olmaksızın istemci tarafında JavaScript kodu tarafından yansıtılır.

Bu nedenle, Magento 2 uzantı geliştiricileri, kodlardaki güvenlik açıklarını ortaya çıkarmaktan kaçınmalıdır.

MAGENTO 2’DE XSS NASIL ÖNLENİR?

Depolama ve çalıştırmada kötü niyetli bir kodu önlemek için hem kullanıcı girdisinin hem de çıktısının doğrulanması ve temizlenmesi yapılmalıdır. Harici veri kaynaklarından gelebilecek dizeleri tarayıcıya göndermeden ve şablonlarla daha fazla işlenmeden önce temizlemeniz gerekir.
Ayrıca Magento artık HTML çıkışından kaçınmak için Escaper sınıfını sunuyor. Magento 2 İçin Temel Güvenlik Tüyoları  ve kullanışlı işlevler;

  • escapeHtml()  işlevi, HTML içeriğinde dizeden kaçınmak için uygulanır;
  • escapeHtmlAttr()  işlevi, HTML etiketi özniteliklerinde dizeleri önlemek için kullanılır;
  • escapeCss()  işlevi, bir CSS bağlamındaki dizelerin kaçmasına izin verir;
  • escapeJs()  işlevi, bir JavaScript bağlamında kaçan dizeler için kullanılır;
  • ve  escapeUrl()  işlevi, bir URL’de kullanılacak dizelerden kaçınmak için uygulanabilir.
Tarih: 27 Mar 2023 - Yazar: YcrSOFT Destek