Güvenlik

Güvenlik

Sayfayı kopyala

Workflow Webhooks güvenliği: Google Cloud AB barındırma, webhook ve gizli bilgilerin şifrelenmesi, veri izolasyonu ve Shopify Flow ile güvenli entegrasyon.

Workflow Webhooks, Code Creation Labs tarafından geliştirilmiş ve işletilmektedir. Bu sayfada, uygulamanın yapısı, nerede çalıştığı, mağazanızın verilerinin nasıl korunduğu ve her şeyi nasıl güncel tuttuğumuz açıklanmaktadır. Bu sayfa, mağaza sahipleri ve güvenlik anketini dolduran herkes için hazırlanmıştır. Yasal konular (gizlilik politikası, veri işleme sözleşmesi, alt işleyiciler) Yasal bilgiler ve veri koruma sayfasında yer almaktadır.

Uygulamanın hangi platform üzerinde geliştirildiği

Katman Kullandıklarımız
Uygulama kodu Node.js üzerinde TypeScript; bu, şu anda uzun vadeli destek sunulan bir sürümdür. Yönetici sayfaları, webhook’larınızı alan uç noktalar ve bunları Shopify Flow’a ileten işleyiciler tek bir kod tabanında yer almaktadır.
Veritabanı ve önbellek PostgreSQL (Google Cloud SQL) ve Redis (Google Cloud Memorystore)
Kuyruk Gelen bir çağrı kabul edilir, Google Cloud Pub/Sub’da kuyruğa alınır ve ayrı bir işleyici tarafından işlenir; böylece, çağrı yoğunluğu ya dShopify’dan gelen yanıtın gecikmesi durumunda bile hiçbir teslimat kaybolmaz.
Barındırma Google Cloud’un europe-west1 (Belçika, Avrupa Birliği) bölgesindeki Google Kubernetes Engine’de bulunan konteynerler. Veritabanları, önbellekler ve kuyruklar bölgeye özeldir.
Shopify entegrasyonu Shopify’un resmi uygulama kütüphaneleri, Shopify Flow tetikleyicileri ve eylemleri ile Shopify’un webhook’ları
Mağazanızın vitrini Temanızda hiçbir şey çalışmıyor. Tarayıcı çağrıları için isteğe bağlı uygulama proxy URL’si (bkz. CORS, uygulama proxy URL’si ve tarayıcı çağrıları), Shopify tarafından kendi alan adınızda sunulur ve Shopify’ın imzasıyla doğrulanır.

Hizmetin hiçbir yerinde PHP, WordPress, Java veya başka bir çalışma ortamı bulunmamaktadır. Uygulama, Shopify Uygulama Mağazası’nda listelenmiştir ve Shopify’ın güvenlik ile müşteri verilerinin korunmasına ilişkin gerekliliklerini kapsayan uygulama inceleme sürecinden geçmiştir.

Güvenlik uyarıları ve uygulamalarımızın bundan etkilenip etkilenmediği

Shopify uygulamalarıyla ilgili bir güvenlik açığı veya saldırı haberlere çıktığında, bunu geliştirdiğimiz tüm uygulamalarla karşılaştırarak kontrol eder ve sonucu buraya kaydederiz; böylece siz de sormak yerine cevabı buradan bulabilirsiniz.

Danışma Ne zaman Uygulamalarımız Ayrıntılar
PHP2Shell (CVE-2026-109618, CVE-2026-109619): PHP motorunda uzaktan kod yürütme 21 Ekim 2026 Etkilenmemiştir. Uygulamalarımızın hiçbirinde PHP bulunmamaktadır. Açıklama
Shopify ödeme sayfası ele geçirme kampanyası: Üçüncü taraf uygulamaların (Hulk Product Options, Selleasy, Swym Wishlist Plus; Temmuz ayında Qikify) mağaza ön yüz koduna yerleştirilen komut dosyaları, müşterileri sahte ödeme sayfalarına yönlendirdi 10-20 Ekim 2026 Etkilenmemiştir. Uygulamalarımızdan hiçbiri bu olayla ilgisi yoktur ve hiçbiri mağaza sayfanıza bu tür bir komut dosyası yerleştiremez. Açıklama
Node.js güvenlik güncellemesi (CVE-2026-111497 ve Node.js çalışma zamanında tespit edilen dokuz başka CVE) 21 Ekim 2026 Uygulama tarafında. Uygulamalarımız Node.js üzerinde çalışıyor, bu nedenle bu durum bizi ilgilendirdi: Her uygulama, yamalı sürüm (22.23.4) üzerinde yeniden derlendi ve o haftadan beri üretim ortamında bu sürümle çalışıyor. Sizin tarafınızdan yapılacak bir şey yok. Uygulamaları nasıl güncel tutuyoruz
nginx güvenlik güncellemesi (CVE-2026-15176, CVE-2026-93479, CVE-2026-97205, CVE-2026-95101, CVE-2026-97629) 14 Ekim 2026 Etkilenmemiştir. nginx, uygulamalarımızın bir parçası değildir ve her uygulama artık Google Cloud Armor ile donatılmış Google Cloud’un yönetilen yük dengeleyicisi arkasında çalışmaktadır. Daha önce kullanılan nginx girişi de istismar edilemezdi: bu yapılandırma ile beş sorundan hiçbirine erişilemiyor (takma ad veya yeniden yazma yok, sunucu tarafı dahil etme yok, HTTP/3 yok, TLS oturum biletleri kapalı). Açıklama
eMudhra (emSign) sertifika yetkilisi güvenliği ihlali: sekiz ara sertifika yetkilisinin anahtarları kurtarılabilir; emSign ECC Kök Sertifika Yetkilisi - G3’e güvenilmez 20 Ekim 2026 Etkilenmemiştir. Sistemlerimizden hiçbiri güvenilmez kök sertifikasına güvenmemektedir, sertifikalarımızın hiçbiri eMudhra’dan gelmemektedir ve kamuya açık Sertifika Şeffaflığı kayıtlarında, alan adlarımızdan hiçbirine ait bir eMudhra sertifikası bulunmamaktadır. Açıklama

Tüm uygulamalarımız için geçerli olan bu tablo ve bunların ortak uygulama ilkeleri, Code Creation Labs’ta Güvenlik sayfasında yer almaktadır.

Verileriniz nasıl korunuyor?

Aktarım sırasında. Tarayıcınız, Shopify, webhook’larınızı çağıran sistemler ve uygulama arasındaki tüm bağlantılarda TLS kullanılır. Veritabanı, önbellek ve kuyruk için genel erişim adresi yoktur: bunlara yalnızca özel ağımızın içinden erişilebilir.

Depolama sırasında. Tüm veritabanları ve depolama alanları**,** Google Cloud KMS’de bizim tarafımızdan yönetilen anahtarlarla depolama sırasında şifrelenir.

Buna ek olarak alan düzeyinde şifreleme uygulanır. En hassas değerler ikinci bir koruma katmanına alınır: mağazanızın Shopify erişim jetonu, her bir webhook’un kimlik doğrulama gizli anahtarı ve dönüştürme işlevleri için sakladığınız tüm gizli anahtarlar. Her bir değer, Cloud KMS'de ayrı bir anahtar altında AES-256-GCM ile ayrı ayrı şifrelenir; bu işlemde otomatik anahtar rotasyonu kullanılır ve değerler yalnızca ihtiyaç duyulduğu anda bellekte şifresi çözülür. Gizli bilgiler asla günlüğe yazılmaz ve Geliştirici API'si veya Sidekick tarafından asla geri döndürülmez.

Gizli bilgiler. Hizmetin kendi API kimlik bilgileri ve anahtarları Google Secret Manager’da saklanır ve hizmet başlatıldığında yüklenir. Bunlar ne kodda, ne konteyner görüntülerinde ne de derleme boru hattında bulunur.

Veri minimizasyonu. Uygulama, kurulum sırasında mağazanızın verilerine erişim izni talep etmez: Bir Shopify Flow iş akışını başlatmak için herhangi bir izin gerekmez ve uygulama hiçbir zaman kendi başına ürünleri, siparişleri veya müşterileri okumaz. Bir iletim, çağıran sistemin gönderdiği veriyi aynen taşır.

Kim neye erişebilir?

  • Erişim jetonları sunucularımıza kilitlenmiştir. Yönetici API’si için Shopify’ın IP izin listesini etkinleştirdik: Shopify, uygulamanın erişim jetonlarını yalnızca kendi çıkış adresimizden kabul ediyor ve başka herhangi bir yerden gelenleri reddediyor; bu sayede çalınan bir jeton, altyapımızın dışında hiçbir işe yaramaz.
  • Süresi dolan erişim jetonları. Uygulama, Shopify’ın süresi dolan çevrimdışı erişim jetonlarını kullanır. Her jeton bir saat süreyle geçerlidir ve otomatik olarak yenilenir; bu sayede sızdırılan bir jeton kendiliğinden çalışmaz hale gelir.
  • Ağ erişimi bildirildi. Uygulama, Shopify yapılandırmasında, mağaza ön yüzünüz, ödeme sayfası ve yönetici panelinizdeki kodunun barındırıldığı ve iletişim kurabileceği dış sunucuları bildirir (Shopify’ın ağ erişim kuralları); böylece Shopify, buraya ait olmayan bir isteği tespit edebilir.
  • Ön tarafta bir güvenlik duvarı bulunmaktadır. İstekler, Google Cloud Armor (Google’ın web uygulaması güvenlik duvarı) ile donatılmış Google Cloud’un yönetilen küresel yük dengeleyicisi aracılığıyla uygulamaya ulaşır; bu sistem, bilinen saldırganları engeller ve her isteği sunucularımıza ulaşmadan önce inceler.
  • Yalnızca sizin mağazanız. Her kayıt, ait olduğu mağazayı taşır ve her sorgu, kimlik doğrulaması yapılan mağaza ile sınırlıdır. Bir mağaza, başka bir mağazanın webhook’larını veya teslimatlarını asla okuyamaz veya değiştiremez; senkron yanıt ise bunu talep eden mağazaya göre belirlenir.
  • Yalnızca doğrulanmış istekler. Shopify yönetici panelindeki sayfalar, Shopify oturum belirteçleriyle kimlik doğrulamasına tabi tutulur. Shopify Flow geri çağırmaları ve Shopify’un kendi webhook’ları, herhangi bir veriye erişilmeden önce Shopify’un HMAC imzasıyla; dahili mesajlar ise Google tarafından imzalanmış kimliklerle doğrulanır.
  • Webhook'larınız, kurallarınız. Her webhook URL'si tahmin edilemez ve çağrı yapanların kimliklerini nasıl kanıtlayacaklarını siz seçersiniz: statik bir jeton, gövde üzerinde bir HMAC imzası ya da imza atamayan kaynaklar için hiçbir şey. İsteğe bağlı bir IP izin listeleri, çağrı yapanları daha da kısıtlar; çağrı yapanın adresi bir başlıktan değil, ağ bağlantısından alınır, bu nedenle sahtecilik yapılamaz. Yinelenen teslimatlar algılanır ve yalnızca bir kez işlenir. Bkz. Kimlik Doğrulama.
  • **Dönüştürme işlevleri. **Dönüşüm fonksiyonları için yazdığınız JavaScript kodu, uygulamanın kendi sunucularından ayrı bir altyapı üzerinde, zaman ve bellek sınırlamaları olan izole bir sanal ortamda çalışır. Bu kod, uygulamanın kimlik bilgilerini veya Shopify erişim jetonunuzu hiçbir zaman görmez ve dışarıya yönelik istekleri, bağlantı kurulmadan önce özel ağ aralıklarıyla karşılaştırılarak kontrol edilir.
  • Dışa yönelik istekler. Uygulamanın sizin adınıza Zamanlanmış URL sorgulama ve Shopify Flow'dan bir webhook'u çağırma için çağırdığı URL’ler, bağlantı kurulmadan önce kontrol edilir: loopback, link-local, bulut meta verileri ve özel ağ adresleri, yönlendirme yoluyla olanlar da dahil olmak üzere reddedilir.
  • Ekibimiz. Üretim sistemlerine yalnızca Google Cloud IAM üzerinden bireysel hesaplarla erişilebilir. Dahili bakım araçları internete açık değildir.

Uygulamayı nasıl güncel tutuyoruz?

  • Shopify’ın uygulama güvenlik kontrolleri. Geliştirdiğimiz her uygulama için ve her sürüm yayınlandığında Shopify’ın uygulama güvenlik kontrolleri, deterministik tarama ve temsilci incelemesini gerçekleştiriyoruz. 37 kontrol, kimlik doğrulaması yapılmamış rotaları, bir mağazayla sınırlandırılmamış verileri, doğrulanmamış webhook'ları ve uygulama proxy isteklerini, kaydedilmiş gizli bilgileri, sızdırılmış kimlik bilgilerini, güvenli olmayan HTML'yi ve devre dışı bırakılmış, süresi dolmuş erişim jetonlarını ve diğer unsurları kapsamaktadır.
  • Her değişiklik, yayınlanmadan önce taranır. İş akışı, tür denetimleri ve kod denetimi, statik uygulama güvenliği testi (SAST), gizli bilgi tespiti, bağımlılık güvenlik açığı taraması ve konteyner görüntüsü taraması gerçekleştirir. Sürüm kriterimiz, bağımlılıklarda ve görüntüde bilinen hiçbir güvenlik açığı olmamasıdır.
  • Çalışma ortamı ve işletim sistemi. Alpine Linux tabanlı Node.js konteyner görüntüsü her sürümde yeniden derlenir; bu sayede çalışma ortamı ve işletim sistemi yamaları sürekli olarak dağıtılır. Yönetilen Kubernetes platformu, altta yatan düğümlerin güncel kalmasını sağlar.
  • Shopify platformu. Shopify’ın API sürümlerini ve Shopify uygulama kütüphanelerine ilişkin güvenlik bildirimlerini takip ediyor ve güncellemeleri derhal uyguluyoruz. Uygulama, güncel bir Admin API sürümünde çalışmaktadır.
  • Güvenlik denetimleri. Her bir güzergâh, veri yolu ve veritabanı sorgusu için düzenli aralıklarla kapsamlı bir iç denetim gerçekleştiriyoruz; en son denetim Ekim 2026’da yapılmıştır.
  • İzleme. Hizmetin erişilebilirliği 24 saat boyunca izlenmekte ve durum sayfamızda yayınlanmaktadır; hatalar durumunda ise bize uyarı gönderilmektedir. İşletim günlükleri en fazla 30 gün süreyle saklanır ve hiçbir zaman kimlik bilgilerini veya gizli verileri içermez.

Saklama ve silme

  • Uygulama yüklü olduğu sürece teslimat geçmişi korunur; böylece aramaları inceleyebilir ve tekrar dinleyebilirsiniz; ayrıca kayıtları istediğiniz zaman silebilirsiniz. Kimlik bilgilerini içerebilecek başlıklar, teslimat kaydedilmeden önce gizlenir.
  • Uygulamayı kaldırdığınızda, uygulamanın mağazanıza erişim hakkı derhal silinir. Uygulamanın kaldırılmasından 48 saat sonra gerçekleştirilen Shopify’ın “shop/redact” isteği, dönüştürme işlevlerinizin depoladığı tüm veriler dahil olmak üzere mağazadaki kalan verileri siler.
  • Shopify
  • Alt işleyiciler ve tam saklama süresi, gizlilik politikası'da yer almaktadır. İmzalı veri işleme sözleşmesi, workflow-webhooks.app/dpa adresinden talep edilebilir.

Bir güvenlik sorununu bildirme

Bir güvenlik açığı tespit ettiğinizi düşünüyorsanız veya bir güvenlik anketinin doldurulmasını istiyorsanız, support@codecreationlabs.com adresine e-posta gönderin. Güvenlik raporları öncelikli olarak incelenir ve yanıtlanır.