Dokümanlar/Başlangıç/Platform Genel Bakışı

Platform Genel Bakışı

SecureCodingHub, geliştiricilere güvenlik açıklarını tanımlama ve düzeltme becerilerini uygulamalı pratikle öğreten interaktif bir güvenli kodlama eğitim platformudur. Katalog, şu anda yayında olan dört OWASP top-10 ailesi (Web, API, Mobil, İstemci Tarafı) genelinde 200'den fazla konuyu kapsar ve öğrenci deneyimi sekiz arayüz dilinde sunulur.

SecureCodingHub nedir?

SecureCodingHub, gerçek dünyada güvenli kodlama becerileri inşa etmek için tasarlanmış iki eğitim modu sunar:

Pratik Modu

Geliştiricilerin açıklı kod bloklarını bulduğu ve doğru düzeltmeyi seçtiği kod inceleme görevleri. Yedi backend dili, altı frontend yığını (React, Vue, Angular — her biri TypeScript ve JavaScript ile) ve iki mobil platformda kullanılabilir.

Öğrenme Modu

Simüle edilmiş bir tarayıcı ortamında adım adım interaktif saldırı senaryoları. Geliştiriciler, açıkların nasıl istismar edildiğini anlamak için gerçek dünya saldırı zincirlerini birebir takip eder.

Desteklenen OWASP Kategorileri

Eğitim içeriği, dört ana OWASP güvenlik standardı üzerinde düzenlenmiştir:

KategoriKonularAçıklama
Web Top 1010 modül, ~88 konuSQL Injection, XSS, CSRF, Broken Access Control ve daha fazlası
API Top 1010 modül, ~45 konuBOLA, Broken Authentication, Mass Assignment, SSRF ve daha fazlası
Mobile Top 1010 modül, ~47 konuInsecure Storage, WebView Injection, Certificate Pinning ve daha fazlası
Client-Side Top 1010 modül, ~46 konuDOM XSS, Prototype Pollution, Local Storage Secrets ve daha fazlası

Desteklenen Diller ve Framework'ler

Backend Dilleri

JavaScript
TypeScript
Python
Java
C#
PHP
Go

Frontend Framework'leri

React (TS)
React (JS)
Vue (TS)
Vue (JS)
Angular (TS)
Angular (JS)

Mobil Platformlar

Swift (iOS)
Kotlin (Android)

Kullanıcı Rolleri

Her kurum içinde kullanıcılar iki roldan birine sahiptir:

RolErişim
Kurum YöneticisiKullanıcıları, ekipleri, atamaları, özel kursları, SSO, SCIM, SCORM, API anahtarlarını, webhook'ları, denetim günlüğünü, uyumluluk panellerini ve kurum ayarlarını yönetir.
ÖğrenciPratik görevlerini ve öğrenme senaryolarını tamamlar, kişisel ilerlemesini takip eder ve XP kazanır.

Tam ayrıntı için bkz. Roller ve İzinler.

Arayüz Dilleri

Öğrenci ve yönetici arayüzü sekiz dile çevrilmiştir. Kullanıcılar arayüz dilini üst çubuktan seçer; seçim oturumlar arasında korunur.

English (en)
Türkçe (tr)
Español (es)
Français (fr)
Deutsch (de)
Русский (ru)
日本語 (ja)
한국어 (ko)

Eğitim içeriği çevirileri ayrı bir hızda yayına alınmaktadır — görev senaryoları ve metinler, yerelleştirildikçe aynı dil setine çevrilir.

Kontrol Paneline genel bakış

İlk girişte karşılaştığınız yönetici kontrol paneli aşağıda görülebilir:

app.securecodinghub.com/organization
Kontrol Paneli
Kurum geneli eğitim anlık görüntüsü
Tamamlanma Oranı
76%
Aktif Kullanıcılar
89 / 124
Ort. Puan
132 / 160
Kullanıcı Başına Ort. Görev
14.9
Liderlik Tablosu
XP'ye göre ilk 5
#1Sarah Chen87 görev12 snr4,280 XP
#2James Park87 görev12 snr3,910 XP
#3Emma Wilson87 görev12 snr3,650 XP
#4Alex Kumar87 görev12 snr3,420 XP
#5Maria Santos87 görev12 snr3,100 XP
Sonraki adımlar:Kurumunuzu kurmak ve ilk kullanıcılarınızı eklemek için Hızlı Başlangıç Kılavuzu sayfasına gidin.

İki Mod Birbirini Nasıl Tamamlar

Pratik ve Öğrenme, aynı egzersizin iki biçimi değildir. Pratik Modu, kod düzeyinde örüntü tanımayı hedefler: birkaç satır koda bakıp güvensiz yapıyı tespit edip güvenli olanı seçebilir misiniz. Hızlıdır, tekrar edilebilir ve geniş bir zafiyet yelpazesinde kas hafızası inşa etmek için en iyisidir. Python ve TypeScript'te kırk SQL injection varyantı görmüş bir geliştirici, gerçek bir pull request'teki bir sonraki örneği düşünmeden yakalar. İki aşamalı akış için bkz. Pratik Modu.

Öğrenme Modu, Pratik'in kapsayamadığı kısmı kapsar. Bir kod inceleme görevi size bir snippet gösterir, ancak gerçek açıklar iki dosya, iki servis veya iki güven katmanı arasındaki boşlukta yaşar. Öğrenme senaryoları sizi simüle edilmiş bir uygulamanın karşısına oturtur ve saldırganın yolunu adım adım gösterir: keşif, istismar, etki, önleme. İşte bu bağlam, kontrol listesindeki bir önlemi tasarım içgüdüsüne dönüştürür. Genişlik için Pratik'i, derinlik için Öğrenme'yi kullanın. Yeni işe alınanlar genellikle her kategoride bir Öğrenme senaryosuyla başlar ve ardından o kategoride Pratik yapar. Senaryo yapısı için bkz. Öğrenme Modu.

Platform Neden Zafiyet Sınıfları Etrafında Yapılandırıldı

Katalog programlama diline göre değil OWASP kategorisi ve zafiyet türüne göre düzenlenmiştir. Bu bilinçli bir tercihtir. Zafiyetler dilden bağımsız kavramlardır: SQL injection, kullanıcı girdisinin bir sorgu planına nasıl ulaştığıyla ilgili bir sorudur — sorgunun Python, Java veya Go ile yazılmış olması fark etmez. Dile göre düzenlenmiş bir platform bilgiyi siloya hapseder. Python geliştiricisi XSS'i kendi dilinde öğrenirken, aynı yapının Vue, Angular ve React'te farklı kaçış kurallarıyla ortaya çıktığını asla görmez. Sınıfa göre düzenlemek bu boşluğu kapatır.

Dile özgü kısmı altta teknoloji tercihi sistemi yönetir. Teknoloji Tercihleri üzerinden teknoloji yığınınızı bir kez seçersiniz ve her görev akıcı okuduğunuz bir söz dizimine göre yüklenir. Altta ise aynı zafiyet sınıfı, desteklenen tüm yığınlar genelinde aynı kavramsal çerçeveyle öğretilir. Daha sonra ekip değiştirdiğinizde veya yeni bir dil öğrendiğinizde kavramlar hemen aktarılır çünkü hiçbir zaman tek bir söz dizimine bağlanmamıştır.