Donanım, Firmware, Kernel ve Android Güvenliğinde Derinlemesine Uzmanlık
Donanım, firmware, boot zinciri, Linux ve Android kernel mimarileri, tersine mühendislik, exploit mekanizmaları ve forensic analizi birlikte ele alan uygulamalı sistem güvenliği eğitimidir.
200 saat Canlı Ders / Sınıf Uluslararası Geçerli
Örnek ders içeriği
PDF · örnek müfredat & ders notu
Eğitimin örnek bir bölümünü ve müfredat detayını PDF olarak incele — neye başladığını önceden gör.
XSS ve benzeri web güvenliği problemlerinin payload ezberi yerine veri-kod ayrımı ve tarayıcı güvenlik modeli üzerinden açıklanması
Kart üzerindeki işlemci, flash, EEPROM, clock, reset, güç, debug ve haberleşme bileşenlerinin saldırı yüzeyi olarak değerlendirilmesi
SWD/JTAG, UART console, boot strap pinleri, test pad’ler, recovery ve üretim arayüzlerinin güvenlik risklerinin belirlenmesi
UART, SPI ve I²C protokollerinin gerilim seviyesi, clock, frame, chip-select, adresleme ve timing davranışlarıyla birlikte analiz edilmesi
Flash ve EEPROM içeriklerinin elde edilmesi; firmware image, partition, bootloader, recovery, konfigürasyon ve dosya sistemi bileşenlerinin ayrıştırılması
Firmware mimarisi, endianness, memory map, reset vector, header, checksum, CRC, imza ve güncelleme yapılarının incelenmesi
Ghidra ile disassembly, decompiler, cross-reference, call graph, control-flow graph ve donanım register erişimlerinin analiz edilmesi
Binary içindeki string, sabit, fonksiyon ve decompiler çıktılarının çalışma zamanı kanıtlarıyla doğrulanması
Boot ROM, bootloader, firmware image, kernel ve kullanıcı alanı arasındaki root of trust ve doğrulama zincirinin modellenmesi
Secure Boot, Verified Boot, imza doğrulama, hash zinciri, rollback protection, recovery ve firmware update güvenliğinin değerlendirilmesi
TrustZone ve TEE yapılarında normal dünya, secure world, shared memory, güvenli servisler ve ayrıcalık sınırlarının yorumlanması
App process, kernel, güvenli dünya ve ayrı güvenlik işlemcisi arasındaki privilege geçişlerinin exploit zinciri içinde konumlandırılması
Fail-secure tasarım, bağımsız doğrulama, boot-state kontrolü, watchdog ve hata sonrası güvenli durum mekanizmalarının analiz edilmesi
Android mimarisinin uygulama, framework, system service, Binder IPC, HAL, kernel driver ve donanım katmanları üzerinden okunması
Linux UID, filesystem izinleri, SELinux domain’leri, PackageManager, uygulama imzası, runtime permission ve Binder kontrollerinden oluşan Android sandbox modelinin analizi
Activity, service, receiver, content provider, intent-filter, exported component ve permission ilişkilerinin güvenlik açısından değerlendirilmesi
JADX, APKTool, AAPT, apksigner, ADB ve Ghidra çıktılarının birbirini doğrulayan farklı kanıt kaynakları olarak kullanılması
Binder transaction, caller UID, parcel verisi, system service, system_server, native daemon ve Binder kernel driver ilişkilerinin analiz edilmesi
Zygote fork, process specialization, UID/GID, mount namespace, SELinux context ve ART başlangıç akışının yorumlanması
Magisk, Zygisk, systemless root, erken init, mount namespace, DenyList ve hedefli SELinux policy değişikliklerinin mimari olarak incelenmesi
Android boot ROM, bootloader, vbmeta, boot, init_boot, vendor boot, system ve vendor image’ları arasındaki güven ilişkilerinin değerlendirilmesi
AVB, dm-verity, hash tree, public key, rollback index, boot state, recovery ve OTA bütünlüğünün analiz edilmesi
Android exploit zincirlerinin uygulama girdisi, sandbox, system service, native daemon, kernel, TEE ve persistence katmanlarına ayrılması
Frida ile Java ve native fonksiyon çağrıları, argümanlar, dönüş değerleri, class loading, JNI geçişleri ve runtime veri akışının gözlemlenmesi
Statik analiz, dinamik enstrümantasyon, sistem logları, process davranışı ve ağ trafiğinin ortak analiz akışında birleştirilmesi
Malware ve spyware vakalarının teslimat, exploit, loader, privilege transition, persistence, veri erişimi ve iletişim aşamalarına ayrılması
IOC, process ilişkileri, dosya zamanları, package kayıtları, boot state, loglar, ağ bağlantıları ve partition değişiklikleri üzerinden forensic analiz
Python ile socket, HTTP, dosya, hash, log, IOC, metadata ve paket verilerini işleyen güvenlik otomasyonlarının geliştirilmesi
Timeout, geçersiz girdi, eksik veri, retry, concurrency, yanlış pozitif ve yapılandırılmış raporlama davranışlarının yönetilmesi
Gözlem ile kanıtın, crash ile exploit’in, root ile boot zinciri kontrolünün ve kernel yetkisi ile secure world kontrolünün ayrıştırılması
Teknik analizlerin tekrar üretilebilir laboratuvar kayıtları, raporlar, README yapıları ve düzenli proje dokümantasyonuyla sunulması
Müfredat
24 modül · 100 bölüm · 200 konu · 200 saat
Modül 1
Sistem Seviyesinde Siber Güvenliğe Giriş
Güvenliğin fiziksel sistemden uygulama ve ağa kadar uzanan katmanlı yapısı; güven varsayımları, saldırı yüzeyi, kanıt ve doğrulama ekseninde ele alınır.
1.1 Katmanlı Güvenlik Modeli
Donanım, firmware, boot zinciri, kernel, user space ve uygulama katmanlarının ortak güvenlik modeli.
Fiziksel Sistemden Forensic İze Güven Zinciri
Bir davranışın donanım, firmware, işletim sistemi, uygulama ve forensic katmanlarında nasıl izlenebileceği.
Gözlem, Mekanizma ve Güven Sınırı
Görülen çıktının altında çalışan mekanizmayı ve kararın verildiği trust boundary’yi ayırma yaklaşımı.
1.2 Saldırı Yüzeyi ve Güven Varsayımları
Bir sistemin hangi girişlere, kimliklere ve bileşenlere koşulsuz güvendiğinin belirlenmesi.
Attack Surface Haritalama
Fiziksel arayüz, protokol, servis, API, driver ve kullanıcı girdilerinin erişim yüzeyi olarak sınıflandırılması.
Varsayım ve Failure Mode Analizi
Normal çalışma varsayımlarının bozulması halinde oluşan hata, yetki ve güvenlik sonuçlarının incelenmesi.
1.3 Exploit ve Kanıt Terminolojisi
Vulnerability, primitive, exploit, privilege transition ve persistence kavramlarının doğru konumlandırılması.
Crash, Primitive ve Exploit Ayrımı
Bir çökme ile bilgi sızıntısı, kontrollü okuma-yazma veya güvenilir code execution arasındaki fark.
Gözlem ile Kanıtın Ayrılması
Araç çıktısının tek başına bulgu sayılmaması; farklı sistem kaynaklarıyla doğrulama yapılması.
1.4 Etik Kapsam ve Araştırma Disiplini
Yetkili laboratuvar, veri minimizasyonu, tekrar üretilebilirlik ve sorumlu raporlama ilkeleri.
Yetkilendirme ve İzole Laboratuvar
Test kapsamının açıkça belirlenmesi ve işlemlerin izinli, kontrollü sistemlerde yürütülmesi.
Hipotez, Baseline ve Doğrulama
Normal durum kaydı oluşturma, teknik hipotez kurma ve sonucu tekrarlanabilir kanıtla doğrulama.
Modül 2
Dijital Farkındalık, Kimlik ve Tehdit Modelleme
Dijital ayak izi, kimlik doğrulama, kişisel veri, sosyal mühendislik ve temel threat model çalışmaları teknik sistem güvenliğine bağlanır.
2.1 Dijital Varlıklar ve Ayak İzi
Kişisel ve kurumsal verilerin nerede oluştuğu, saklandığı ve sızabildiği incelenir.
Dijital Kimlik ve Metadata
Hesaplar, cihazlar, konum, zaman ve uygulama metadata’sının kimlik profili oluşturmadaki rolü.
Veri Sınıflandırma ve DLP Mantığı
Hassas verinin türüne, bağlamına ve çıkış kanalına göre korunması ve izlenmesi.
2.2 Parola, Passkey ve Çok Faktörlü Kimlik
Kimlik doğrulama yöntemlerinin sağladığı güvence ve sınırları karşılaştırılır.
Parola Saklama ve Parola Yöneticileri
Benzersiz parola, hash mantığı, credential reuse ve güvenli saklama alışkanlıkları.
2FA, Passkey ve Kurtarma Akışları
İkinci faktörün tehdit modeline etkisi; hesap kurtarma yolunun zayıf halka olabilmesi.
2.3 Sosyal Mühendislik ve Phishing
İnsan davranışı ile teknik kimlik akışlarının kesiştiği saldırı yüzeyleri ele alınır.
Güven Sinyallerinin Taklit Edilmesi
Alan adı, arayüz, bildirim ve aciliyet dilinin kullanıcı kararlarını nasıl etkilediği.
Kimlik Bilgisi Hırsızlığı Zinciri
Teslimat, kullanıcı etkileşimi, credential toplama ve hesap ele geçirme aşamalarının analizi.
2.4 Temel Threat Modeling
Varlık, saldırgan, erişim yolu, etki ve kontrol ilişkisi üzerinden risk modeli kurulur.
Varlık ve Saldırgan Modeli
Korunacak verinin ve olası saldırgan kabiliyetlerinin açık biçimde tanımlanması.
Giriş Noktası, Etki ve Kontrol Haritası
Saldırı yolunun mevcut kontroller, kalan risk ve iyileştirme adımlarıyla eşleştirilmesi.
Modül 3
Güvenli Laboratuvar, Sanallaştırma ve Hypervisor Mimarisi
Host, hypervisor ve guest katmanları; ağ izolasyonu, snapshot, kaynak paylaşımı ve güvenli analiz ortamı tasarımıyla birlikte incelenir.
3.1 Host, Hypervisor ve Guest Ayrımı
Sanal makinenin fiziksel sistemden hangi katmanlarla ayrıldığı ve hangi kaynakları paylaştığı açıklanır.
Exploit kodunun güvenilir yazılım değil araştırma materyali olarak ele alınması.
KASLR, NX, SMEP/SMAP, PAN ve CFI
Adres, yürütme, kullanıcı-kernel erişimi ve kontrol akışı güvenlik mekanizmalarının rolü.
PoC Kaynak Kodunun Statik Analizi
Ağ bağlantısı, payload indirme, hard-coded offset, filesystem değişikliği ve mimari bağımlılığın kontrolü.
Modül 8
Ağ Mimarisi, Protokoller ve Paket Analizi
Ethernet’ten uygulama protokollerine kadar ağ trafiği; socket, routing, state ve paket kanıtları üzerinden incelenir.
8.1 Ethernet, MAC ve ARP
Yerel ağda frame teslimi ve IP-MAC eşlemesinin çalışma modeli.
Frame Yapısı ve Broadcast Domain
Kaynak-hedef MAC, EtherType ve broadcast trafiğinin yerel ağ davranışı.
ARP Cache ve Sahte Eşleme Riski
ARP’nin kimlik doğrulamayan yapısı ve gözlem/koruma yöntemleri.
8.2 IP, ICMP, Routing ve NAT
Paketlerin ağlar arasında nasıl yönlendirildiği ve adres dönüşümünün etkileri.
Subnet, Gateway ve Route Tablosu
Hedefin yerel mi uzak mı olduğunun belirlenmesi ve next-hop seçimi.
ICMP ve NAT Davranışı
Hata/teşhis mesajları ile private-public adres dönüşümünün bağlantı görünürlüğüne etkisi.
8.3 TCP, UDP, Port ve Socket
Bağlantı durumları, taşıma katmanı ve process ilişkisi birlikte incelenir.
TCP Handshake, Flag ve State
SYN/ACK akışı, kapanış, reset, retransmission ve timeout davranışları.
UDP ve Bağlantısız İletişim
Delivery garantisi olmayan datagram modelinin uygulama ve güvenlik sonuçları.
8.4 Paket Yakalama ve Ağ Kanıtı
Wireshark, tcpdump ve servis araçlarıyla trafik doğrulama akışı kurulur.
Capture Filter ve Display Filter
Doğru arayüzde veri yakalama ve protokol, IP, port, flag bazlı filtreleme.
Nmap Sonucunu Paket ve Process ile Doğrulama
Açık port iddiasının gerçek handshake, dinleyen socket ve servis kaydıyla karşılaştırılması.
Modül 9
HTTP, Tarayıcı Güvenliği ve Web Saldırı Yüzeyi
Web güvenliği payload ezberi yerine HTTP, origin, session, veri-kod ayrımı ve sunucu güven sınırları üzerinden destekleyici katman olarak işlenir.
9.1 HTTP İstek ve Yanıt Modeli
Method, URL, header, body, status code ve yönlendirme davranışları ayrıştırılır.
Request Line, Header ve Body
Kullanıcı girdisinin uygulamaya hangi alanlardan taşındığı ve sunucu tarafından nasıl yorumlandığı.
Status Code, Redirect ve Cache
Yanıt davranışının kimlik doğrulama, hata yönetimi ve ara katmanlar üzerindeki etkisi.
9.2 Cookie, Session ve Tarayıcı Depolama
Kimlik bilgisinin istemci ve sunucu arasında taşınması ve saklanması incelenir.
HttpOnly, Secure ve SameSite
Cookie’nin JavaScript erişimi, şifreli kanal ve cross-site gönderim davranışının sınırlandırılması.
localStorage ve Session Riski
JavaScript erişimine açık depolamada token tutmanın XSS etkisini büyütmesi.
9.3 Origin, CORS ve İçerik Güvenliği
Tarayıcının kaynaklar arası erişim kararları ve sunucu politikaları değerlendirilir.
Same-Origin Policy ve CORS
Origin bileşenleri, preflight ve gevşek CORS kararlarının güvenlik sonucu.
CSP ve Veri-Kod Ayrımı
Yürütülebilir içerik kaynaklarını sınırlandırma ve inline script risklerini azaltma.
9.4 XSS, CSRF ve Yetkilendirme
Web açıkları temel mekanizma ve güven sınırı üzerinden incelenir.
Reflected, Stored ve DOM XSS
Kullanıcı girdisinin hangi aşamada HTML/JavaScript olarak yürütülebilir hale geldiği.
Authentication, Authorization ve CSRF
Kimliği doğrulanmış kullanıcının yetkisi ile kullanıcının adına istek üretme riskinin ayrılması.
Modül 10
Malware, Spyware ve Davranışsal Analiz
Zararlı yazılımlar isimlerinden çok teslimat, çalıştırma, yetki, kalıcılık, veri erişimi, iletişim ve forensic izleriyle incelenir.
10.1 Malware Yaşam Döngüsü
Zararlı davranışın sisteme girişten hedef üzerindeki etkiye kadar parçalanması.
Teslimat ve İlk Kod Yürütme
Dosya, bağlantı, parser, kullanıcı etkileşimi veya zero-click giriş yollarının sınıflandırılması.
Loader, Ajan ve Komuta-Kontrol
İlk bileşenin asıl payload’ı başlatması ve dış altyapıyla iletişim kurması.
10.2 Statik Analiz
Örnek çalıştırılmadan dosya yapısı ve davranış ipuçları değerlendirilir.
Hash, Format, String ve Import
Dosya kimliği, executable formatı, metin göstergeleri ve dış fonksiyon bağımlılıkları.
Metadata ve Paketleme İzleri
Derleme zamanı, sertifika, kaynak ve packer/obfuscation belirtilerinin bağlam içinde yorumlanması.
10.3 Dinamik ve Davranışsal Analiz
Process, filesystem, registry/yapılandırma, ağ ve persistence davranışı gözlemlenir.
Process Ağacı ve Kaynak Değişiklikleri
Hangi process’in ne oluşturduğu, değiştirdiği veya child olarak başlattığının zaman çizelgesi.
Ağ Bağlantısı ve Kalıcılık
Domain/IP, protokol, periyodik trafik, service, timer, autorun ve boot değişiklikleri.
10.4 Pegasus ve Gelişmiş Spyware Vaka Modeli
Gelişmiş mobil saldırı zincirleri privilege ve trust katmanlarına ayrılır.
Teslimat, Exploit ve Bridgehead
Kullanıcı etkileşimli veya zero-click girişten loader ve yetki kazanımına geçiş.
Ajan Yeteneği ve Forensic Gösterge
Kamera, mikrofon, konum, uygulama verisi erişimi ile geride kalan sistem izlerinin ilişkilendirilmesi.
Modül 11
Kart Mimarisi ve Donanım Saldırı Yüzeyi
Elektronik kart; işlemci, bellek, güç, clock, reset, haberleşme ve test arayüzlerinden oluşan fiziksel bir güvenlik sistemi olarak okunur.
11.1 Kartı Fonksiyonel Bloklara Ayırmak
PCB üzerindeki ana bileşenlerin sistem davranışı ve güvenlik rolü belirlenir.
SoC/MCU, RAM, Flash ve EEPROM
Kod yürütme, çalışma belleği, kalıcı firmware ve konfigürasyon verisinin fiziksel yerleşimi.
PMIC, Regulator ve Power Tree
Güç alanlarının, enable hatlarının ve brownout/reset koşullarının sistem güvenliğine etkisi.
11.2 Clock, Reset ve Boot Yapılandırması
İşlemcinin zaman kaynağı, başlangıç durumu ve boot seçimlerinin kart üzerindeki karşılığı.
XTAL, Clock Tree ve Zamanlama
Kristal, oscillator ve dağıtılan clock sinyallerinin işlemci ve çevrebirim davranışındaki rolü.
Reset, Boot Strap ve Board ID
Reset hatları, strap dirençleri, boot pinleri ve kart varyant bilgisinin başlangıç akışına etkisi.
11.3 Şematik, Boardview ve Test Noktaları
Mantıksal bağlantı ile fiziksel yerleşim birlikte kullanılarak kart üzerinde iz sürülür.
Net İsimleri ve Sinyal Yönleri
Güç, clock, reset, data ve enable hatlarının şematik isimlerinden fonksiyon çıkarımı.
Test Point ve Pad-Level Harita
Ölçüm ve üretim noktalarının debug, doğrulama ve fiziksel saldırı yüzeyi olarak değerlendirilmesi.
11.4 Debug ve Üretim Arayüzleri
Geliştirme sırasında gerekli olan arayüzlerin üretim cihazında oluşturduğu erişim riski.
SWD/JTAG, UART ve USB Recovery
Debug, konsol ve kurtarma arayüzlerinin kimlik doğrulama ve kilitleme politikaları.
Fiziksel Erişim Threat Modeli
Kasa açma, prob bağlama, bellek sökme veya bus dinleme kabiliyetlerinin güven sınırlarına etkisi.
Modül 12
UART, SPI, I²C ve Logic Analyzer ile Protokol Analizi
Düşük seviyeli haberleşme hatları elektriksel ve mantıksal katmanlarıyla incelenerek boot, debug, bellek ve çevrebirim davranışları görünür hale getirilir.
12.1 UART Elektriksel ve Mantıksal Yapı
Asenkron seri iletişimin fiziksel bağlantısı ve frame yapısı incelenir.
TX/RX, GND ve Gerilim Seviyesi
Sinyal yönü, ortak referans ve yanlış voltajın cihaz/prob güvenliğine etkisi.
Baud Rate, Parity ve Boot Log
Frame parametrelerinin belirlenmesi ve açılış sırasında console mesajlarının yorumlanması.
12.2 SPI Bus ve Harici Flash
Clock’lu full-duplex iletişim ile bellek transaction’ları ele alınır.
SCLK, MOSI, MISO ve Chip-Select
Master-slave yönleri, cihaz seçimi ve frame sınırlarının logic analyzer’da okunması.
Flash Command ve Adres Akışı
Read, write, erase ve status komutlarının firmware erişimiyle ilişkilendirilmesi.
12.3 I²C Bus ve Open-Drain Davranışı
Paylaşımlı iki telli bus’ın elektriksel ve protokol özellikleri incelenir.
SDA/SCL, Pull-Up ve Adresleme
Open-drain çıkış, yükselme süresi ve 7/10-bit cihaz adreslerinin bus üzerindeki rolü.
START, ACK/NACK ve Transaction
Master tarafından başlatılan transferin adres, veri ve onay fazlarına ayrılması.
12.4 Logic Analyzer ve Zaman Çözümlemesi
Ham dijital sinyalin protokol frame’i ve firmware olayıyla eşleştirilmesi.
Sample Rate, Trigger ve Decoder
Yeterli örnekleme, doğru tetikleme ve decoder sonucunun ham sinyalle doğrulanması.
Boot, Hata ve Güvenlik Trafiği
Açılış mesajı, debug komutu, hassas veri veya beklenmeyen transaction’ın zaman ekseninde analizi.
Modül 13
Firmware Elde Etme, Bellek Haritası ve Güncelleme Paketleri
Firmware’in fiziksel bellekten veya dağıtım paketinden elde edilmesi; image, partition, memory map ve bütünlük yapılarıyla birlikte ele alınır.
SWD/JTAG, bootloader, SPI flash veya programlayıcı üzerinden veri edinme modelleri.
OTA, Recovery ve Üretici Paketi
Güncelleme arşivi, recovery image ve resmî firmware paketlerinin analiz kaynağı olarak kullanılması.
13.2 Dosya ve Image Tanımlama
Ham dump içindeki format, sıkıştırma, dosya sistemi ve bölüm sınırları belirlenir.
Magic Value, Entropy ve String Taraması
Dosya türü, sıkıştırılmış/şifreli bölge ve yapısal ipuçlarının ilk değerlendirmesi.
Filesystem ve Partition Ayrıştırma
SquashFS, ext tabanlı image, boot bölümü veya vendor-specific yapının bölümlere ayrılması.
13.3 Memory Map ve İşlemci Bağlamı
Binary’nin doğru adres ve mimariyle yorumlanması için bellek modeli kurulur.
Endianness, Base Address ve Vector Table
Byte sırası, yükleme adresi, reset/interrupt vektörleri ve entry point ilişkisinin kurulması.
Flash, SRAM ve Memory-Mapped I/O
Kod, sabit veri, çalışma belleği ve çevrebirim register alanlarının ayrılması.
13.4 Bütünlük ve Güncelleme Güvenliği
Firmware paketinin değişiklik, sürüm ve başarısız güncelleme koşullarındaki davranışı incelenir.
CRC, Checksum, Hash ve İmza
Hata tespiti ile kriptografik kaynak/bütünlük doğrulamasının birbirinden ayrılması.
Dual-Bank, Rollback ve Recovery
Yarım güncelleme, bozuk image ve eski sürüme dönüş senaryolarında güvenli kurtarma.
Modül 14
Ghidra ile Binary ve Firmware Reverse Engineering
Binary’nin mimarisi, memory map’i, fonksiyonları, string/xref ilişkileri ve kontrol akışı Ghidra üzerinden kanıt odaklı biçimde analiz edilir.
14.1 Import ve Analiz Bağlamı
Dosyanın doğru language, architecture, endian ve base address ile projeye alınması.
ELF ile Raw Binary Ayrımı
Header bilgisi taşıyan executable ile dışarıdan memory map gerektiren ham image farkı.
Auto-Analyze ve Analyzer Seçimi
Disassembly, function discovery, reference ve data analysis seçeneklerinin kontrollü kullanımı.
14.2 Memory Map, Section ve Symbol
Kod ve verinin adres alanındaki yerleşimi incelenir.
.text, .data, .rodata ve BSS
Executable code, başlatılmış veri, sabitler ve sıfırlanan çalışma alanlarının yorumlanması.
Yanlış Mimari veya Base Address Belirtileri
Anlamsız instruction, kırık xref ve tutarsız function sınırlarından hatalı import tespiti.
14.3 String, Xref ve Control Flow
Davranış ipuçlarının yalnız metin olarak değil kullanım bağlamıyla doğrulanması.
String Sınıflandırma ve Xref
Metadata, hata mesajı, protokol ifadesi ve şüpheli string’in hangi fonksiyonlar tarafından kullanıldığı.
Function Graph ve Call Graph
Branch, loop, error path ve fonksiyonlar arası çağrı ilişkisinin görsel takibi.
14.4 Decompiler, Listing ve Donanım Davranışı
Yüksek seviyeli temsil ile gerçek instruction akışı birlikte okunur.
Decompiler Çıktısının Sınırları
Optimizasyon, sembol kaybı, type inference ve dolaylı çağrıların yanlış güven üretmesi.
Register Erişimi ve Protokol Fonksiyonu
Memory-mapped register sabitleri, polling loop, interrupt ve haberleşme kodlarının yorumlanması.
Modül 15
Secure Boot, Root of Trust, TEE ve Fault Injection
İlk instruction’dan kullanıcı alanına güven zinciri; güvenli dünya, image doğrulama, recovery ve fiziksel hata koşullarıyla birlikte incelenir.
15.1 Boot ROM ve Root of Trust
Değiştirilemeyen başlangıç kodunun güven zincirindeki rolü ve sınırları.
İlk Aşama Doğrulama
Boot ROM’un sonraki loader veya image’ın imzasını ve bütünlüğünü doğrulama modeli.
Zincirin En Zayıf Halkası
Her bileşen güvenli görünse bile geçiş veya veri kullanım hatasının tüm sistemi etkileyebilmesi.
15.2 Bootloader, Recovery ve Rollback
Ana boot yoluyla kurtarma yolunun aynı güvenlik politikasını uygulaması gerektiği değerlendirilir.
Image İmzası ve Sürüm Politikası
Yetkili image kabulü ile eski, bilinen zayıf sürüme dönüşün önlenmesi.
Recovery ve Hata Sonrası Güvenli Durum
Bozuk image, yarım update ve beklenmeyen reset sonrasında fail-secure davranış.
15.3 TrustZone ve TEE
Normal dünya ile secure world arasında ayrı privilege ve kaynak erişimi modeli kurulur.
Secure Service ve Çağrı Kapısı
Normal dünya istemcisinin güvenli servise kontrollü arayüz üzerinden istek iletmesi.
Shared Memory ve Veri Doğrulama
İki dünya arasında paylaşılan buffer’ın boyut, sahiplik ve yaşam döngüsü açısından doğrulanması.
15.4 Fault Injection ve Fiziksel Hata Davranışı
Gerilim, clock ve reset manipülasyonunun güvenlik varsayımlarına etkisi savunma perspektifiyle ele alınır.
Voltage/Clock Glitch ve Exception
Zamanlama ihlalinin instruction, branch veya exception davranışını değiştirebilmesi.
Watchdog, Tekrarlı Kontrol ve Fail-Secure Tasarım
Güvenlik kararının tek zaman penceresine bağlanmaması ve hata sonrası güvenli kapanış.
Modül 16
Android Mimarisi, APK ve Uygulama Yaşam Döngüsü
Android’in Linux kernel, HAL, native library, ART, framework ve uygulama katmanları; APK kurulumundan çalışan process’e kadar incelenir.
16.1 Android Katmanlı Mimari
Uygulama çağrısının framework, system service, Binder, HAL, driver ve donanıma uzanan yolu.
Linux Kernel, HAL ve Native Libraries
Driver, güç, bellek, ağ ve donanım servislerinin alt katmanlardaki rolü.
ART ve Java API Framework
DEX çalıştırma, runtime optimizasyonu ve uygulamalara sunulan yüksek seviyeli sistem API’leri.
16.2 APK Anatomisi
Paket içindeki kimlik, bytecode, kaynak, native kod ve imza bileşenleri ayrıştırılır.
Manifest, DEX, resources.arsc ve assets
Uygulama bildirgesi, çalıştırılabilir bytecode ve kaynak tablolarının rolleri.
Native .so, ABI ve Signing Block
ARM/x86 kütüphaneleri, JNI yüzeyi ve paket bütünlüğü/geliştirici kimliği.
16.3 PackageManager ve Kurulum Zinciri
APK’nın sistemde UID, veri dizini, permission ve component kaydı kazanması.
Signature, Version ve Update Uyumu
Aynı package name için imza devamlılığının update güvenliğine etkisi.
UID, Data Path ve Runtime Permission
Uygulama kimliğinin atanması, private alanın oluşturulması ve izinlerin kaydedilmesi.
16.4 Zygote ve Uygulama Process Doğumu
Yeni uygulama process’inin fork ve specialization aşamalarıyla oluşturulması.
forkAndSpecialize ve ActivityThread
Zygote socket isteğinden uygulama ana thread’inin başlamasına kadar akış.
UID/GID, SELinux Context ve Runtime
Process doğarken uygulanan kullanıcı, grup, policy ve resource limit sınırları.
Modül 17
Android Uygulama Güvenliği ve APK Analizi
Manifest, component, veri saklama, WebView, ağ politikası, signing, Smali ve native JNI katmanları statik ve kontrollü uygulamalarla incelenir.
17.1 Manifest ve Component Saldırı Yüzeyi
Uygulamanın dış dünyaya ilan ettiği izin ve giriş noktaları değerlendirilir.
allowBackup, debuggable ve exported
Yedekleme, debug ve dış uygulamalardan çağrılabilen bileşenlerin güvenlik etkisi.
Activity, Service, Receiver ve Provider
Component’lerin intent, permission ve veri doğrulama gereksinimleri.
17.2 Yerel Veri ve Log Güvenliği
Uygulamanın private alanında sakladığı verinin formatı ve erişim sınırları incelenir.
SharedPreferences, SQLite ve Dosyalar
Token, kullanıcı bilgisi, özellik bayrağı veya hassas kaydın güvenli saklanması.
Logcat ve Hata Mesajı Sızıntısı
Kimlik bilgisi, endpoint, stack trace ve kişisel verinin loglara yazılma riski.
17.3 JADX, Apktool ve Smali
DEX ve resource yapısı farklı temsillerle analiz edilir.
JADX ile Kod Akışı ve Endpoint Arama
Class, method, string, URL, crypto ve root/debug kontrol noktalarının bulunması.
Apktool, Smali ve Repackaging
Manifest/resource decode, bytecode seviyesinde izleme, rebuild ve yeniden imzalama etkileri.
17.4 WebView, Ağ ve Native Katman
Uygulamanın web içeriği, TLS politikası ve C/C++ kodu birlikte değerlendirilir.
usesCleartextTraffic ve Network Security Config
HTTP/TLS, özel CA güveni ve domain bazlı ağ politikalarının incelenmesi.
JNI ve Native .so Analizi
Java-native sınırı, export fonksiyonları, anti-tamper ve kritik mantığın Ghidra ile analizi.
Modül 18
ADB, Emülatör ve Android Çalışma Zamanı Gözlemi
Android cihaz veya emülatör üzerinde package, process, filesystem, logcat, dumpsys ve ağ davranışı güvenli laboratuvarda canlı olarak incelenir.
18.1 Emülatör ve ABI Hazırlığı
Analiz araçlarıyla hedef uygulamanın işlemci mimarisi ve Android sürümü uyumlu hale getirilir.
arm64-v8a, armeabi-v7a ve x86_64
APK içindeki native ABI ile emülatör/system image mimarisinin eşleştirilmesi.
Snapshot ve Test Uygulaması
Temiz emülatör durumu, izinli APK ve geri dönüş noktasıyla kontrollü laboratuvar.
18.2 ADB ile Package ve Process İncelemesi
Host ile Android arasındaki debug köprüsü üzerinden sistem durumu okunur.
pm, ps ve dumpsys package
Kurulu paket, UID, permission, component, path ve çalışan process bilgilerinin alınması.
Filesystem, id ve SELinux Durumu
Shell kullanıcısı, private data erişimi, dosya izinleri ve enforcing durumunun doğrulanması.
18.3 Logcat ve Sistem Servisleri
Uygulama ve platform olayları zaman, tag, PID ve severity bilgileriyle analiz edilir.
Logcat Filtreleme ve Process Eşleme
Belirli package/PID olaylarının startup, hata ve veri sızıntısı açısından izlenmesi.
dumpsys ile Servis Durumu
Activity, package, battery, meminfo ve network servislerinin yapılandırılmış çıktıları.
18.4 Ağ Proxy ve Runtime Baseline
Uygulamanın normal trafik ve kaynak davranışı değişiklik öncesinde kaydedilir.
Proxy, Sertifika ve HTTPS Gözlemi
Emülatör trafiğinin analiz proxy’sine yönlendirilmesi ve trust store sınırları.
Startup, Bellek ve Battery Stats
Uygulama açılışı, process kaynakları ve arka plan davranışının baseline olarak ölçülmesi.
Modül 19
Frida, Zygisk ve Dinamik Enstrümantasyon
Java ve native runtime davranışı; attach/spawn, method hook, JNI, Zygote specialization ve anti-instrumentation kavramlarıyla analiz edilir.
19.1 Frida Ortamının Kurulması
Host client ile hedef cihazdaki agent/server mimari ve permission uyumuyla hazırlanır.
Frida-Server, ABI ve İzinler
Doğru binary’nin cihaza aktarılması, executable permission ve root/emülatör bağlamı.
Device, Process ve Package Eşleme
frida-ps çıktısı, USB/emülatör bağlantısı ve hedef process kimliğinin doğrulanması.
19.2 Java Runtime Hooking
ART üzerinde class ve method davranışı kontrollü biçimde gözlemlenir.
Argüman, Dönüş Değeri ve Overload
Metot çağrılarının giriş/çıkış verisinin izlenmesi ve doğru overload’ın seçilmesi.
Spawn ve Attach Farkı
Uygulama başlamadan enstrümantasyon ile çalışan process’e sonradan bağlanma arasındaki fark.
19.3 Native ve JNI Enstrümantasyonu
Java ile C/C++ sınırı ve native fonksiyon çağrıları canlı olarak incelenir.
Module, Export ve Interceptor
Yüklü library, symbol ve fonksiyon giriş/çıkışlarının izlenmesi.
JNI Geçişleri ve Bellek Verisi
Java native method eşlemesi, pointer/buffer içeriği ve native state’in yorumlanması.
19.4 Zygote, Zygisk ve Anti-Instrumentation
Process doğum anına yerleşen framework’ler ile tespit/kaçınma kontrolleri mimari olarak ele alınır.
pre/post Specialization ve Zygisk Modülü
UID/GID ve SELinux sınırları uygulanmadan önce ve sonra çalışan callback modelinin analizi.
LSPosed, Root Detection ve Anti-Debug
ART method hook, environment kontrolü ve enstrümantasyon belirtilerinin güvenlik sınırları.
Modül 20
Android Boot Zinciri, AVB, Custom ROM ve Magisk
Boot ROM’dan Android userspace’e partition ve image güveni; AVB, dm-verity, A/B, OTA, recovery, custom ROM ve systemless root modelleriyle incelenir.
20.1 Android Boot Image ve Partition Yapısı
Modern cihazlarda boot bileşenlerinin farklı image ve dinamik partition’lara dağılımı.
boot, init_boot ve vendor_boot
Kernel, ramdisk, vendor bileşenleri ve erken init içeriklerinin sürüme göre ayrılması.
system, vendor, product, odm ve system_ext
Framework, üretici HAL/library ve ürün bileşenlerinin ayrı güncellenebilir alanları.
20.2 AVB ve dm-verity
Android Verified Boot ile image imzası ve blok seviyesinde bütünlük doğrulaması.
vbmeta, Public Key ve Descriptor
Doğrulanan partition’ların hash/hashtree bilgilerinin imzalı metadata içinde tanımlanması.
Hash Tree, Rollback Index ve Boot State
Çalışma zamanı blok doğrulaması, eski sürüm engeli ve kilit durumunun güven işareti.
20.3 Recovery, A/B Slot ve OTA
Güncelleme ve kurtarma işlemlerinin cihazın slot ve partition modeliyle ilişkisi.
A/B Slot, payload.bin ve Incremental OTA
Aktif olmayan slota güncelleme, payload operasyonları ve sürüm bağımlı paketler.
Custom Recovery ve ROM ZIP Yapısı
META-INF, update-binary/updater-script, payload, image ve compatibility metadata analizi.
20.4 Magisk ve Systemless Root
Boot/init aşamasında sistem partition’ını doğrudan değiştirmeden ek katman oluşturma modeli.
magiskinit, magiskd ve Mount Namespace
Erken init, root izin yönetimi ve bind/overlay görünümünün process bazlı kurulması.
DenyList, Policy Patch ve Integrity Sınırı
Belirli process’lerde yükleme kararı, hedefli SELinux düzenlemesi ve attestation’ın ayrı güven katmanı.
Modül 21
Android Binder, Kernel ve Exploit Zincirleri
Binder IPC, system_server, native daemon, kernel driver ve privilege geçişleri; modern Android exploit zincirinin mimari katmanları olarak incelenir.
21.1 Binder IPC Modeli
Uygulama ile sistem servisleri arasındaki çağrının proxy, parcel ve kernel driver üzerinden taşınması.
Binder Proxy, Transaction ve Parcel
Metot çağrısının serileştirilmesi, transaction code ve veri sınırlarının doğrulanması.
Caller UID ve Permission Check
System service’in çağıran kimliği kernel’den alması ve policy kararını uygulaması.
21.2 system_server ve Native Daemon’lar
Farklı process ve SELinux domain’lerinde çalışan ayrıcalıklı platform servisleri.
Framework Service ve system_server Etkisi
Yüksek yetkili merkezi process’teki hatanın sistem geneline etkisi ve stabilite riski.
Media, Network ve Vendor Daemon Sınırları
Native parser veya HAL servislerinde process isolation ve privilege farkları.
21.3 Android Kernel Saldırı Yüzeyi
App veya servis tarafından erişilebilen syscall, ioctl, device node ve driver arayüzleri.
Binder Driver, GPU ve Vendor Driver
Karmaşık object, buffer ve memory management kodlarının exploit araştırmasındaki yeri.
Kernel Config, Patch ve Mitigation
Cihaz kernel’inin build seçenekleri, OEM backport’ları ve ARM64 güvenlik mekanizmaları.
21.4 Privilege Zincirini Katmanlara Ayırmak
Her aşamada elde edilen yetkinin hangi trust boundary içinde kaldığı belirlenir.
App → Sandbox Escape → System Service
Uygulama process’inden daha ayrıcalıklı kullanıcı alanı bağlamına geçiş modelleri.
Kernel → TEE → Boot/Persistence
Kernel kontrolünün secure world veya boot zinciri kontrolüyle aynı olmadığının analizi.
Modül 22
Mobil Malware, Persistence ve Android Forensic
Mobil tehditlerin uygulama, process, system service, boot ve partition katmanlarındaki kalıcılık davranışı kanıt ve zaman çizelgesiyle incelenir.
22.1 Mobil Teslimat ve İlk Çalıştırma
APK, bağlantı, mesajlaşma servisi veya parser açığı üzerinden giriş yolları sınıflandırılır.
Kullanıcı Etkileşimli ve Zero-Click Giriş
Sosyal mühendislik ile kullanıcıdan bağımsız parser/service açığının farklı tehdit modeli.
Dropper, Loader ve Dynamic Code
İlk uygulamanın ek DEX/native payload yüklemesi veya uzaktan içerik çekmesi.
22.2 Persistence Katmanları
Kalıcılığın yalnız uygulama otomatik başlatması olmadığı; daha alt katmanlara yerleşebildiği gösterilir.
Receiver, Service ve Accessibility Abuse
Boot event’i, foreground/background service ve yüksek etkili kullanıcı izinleri.
Zygote, init, Boot Image ve Partition
Root/system seviyesinde erken process veya image değişikliğiyle kalıcılık varsayımları.
22.3 Forensic Kanıt Kaynakları
Olayın package, process, dosya, log, ağ ve boot bilgileri üzerinden yeniden oluşturulması.
Package, Signature, Permission ve AppOps
Kurulum kimliği, sürüm, imza, verilen izinler ve runtime operation kayıtları.
Boot State, Log, Process ve Network Timeline
Açılış durumu, olay zamanları, process ilişkisi ve dış iletişimin tek çizelgede birleştirilmesi.
22.4 IOC, Davranış ve Anti-Forensic
Tekil gösterge ile kalıcı davranış modelinin farkı ve kanıt kaybı riskleri.
Hash/Domain IOC ve Davranışsal Gösterge
Kolay değiştirilen sabitlerin yanında process, permission ve iletişim desenlerinin kullanılması.
Log Silme, Timestomp ve Recovery
Kayıtların eksilmesi, zaman bilgisinin değişmesi ve farklı kanıt kaynaklarıyla telafi.
Modül 23
Python ile Siber Güvenlik Otomasyonu
Python; ağ, HTTP, log, IOC, paket ve Android analizlerini tekrarlanabilir araçlara dönüştüren mühendislik katmanı olarak kullanılır.
23.1 Python Temeli ve Güvenilir Script Tasarımı
Değişken, veri yapısı, fonksiyon, modül ve hata yönetimi güvenlik örnekleriyle işlenir.
Girdi → İşleme → Çıktı Modeli
Araç davranışının açık input, dönüşüm, çıktı ve hata kanallarıyla tasarlanması.
Exception, Timeout ve Kaynak Yönetimi
Bağlantı, dosya ve subprocess işlemlerinin hata halinde kontrollü kapanması.
23.2 Socket, Port ve Eşzamanlılık
Ağ servislerinin programatik olarak gözlemlenmesi ve çoklu I/O görevlerinin yönetilmesi.
TCP Socket ve Servis Tanıma
Belirli hedef/port için bağlantı, banner ve zaman aşımı bilgisinin yapılandırılmış kaydı.
Thread, Process ve AsyncIO
I/O ve CPU iş yüküne uygun concurrency modelinin seçilmesi ve sınırlandırılması.
23.3 HTTP, Parsing ve Attack Surface
Web/API yanıtlarından teknoloji, endpoint ve güvenlik davranışı çıkarılır.
Header, Redirect, CORS ve Rate Limit
HTTP politikasının otomatik gözlenmesi; sonuçların manuel doğrulamaya uygun raporlanması.
HTML, Link, Form ve Endpoint Çıkarma
BeautifulSoup/regex ile içerikten yapılandırılmış attack-surface envanteri üretimi.
23.4 Paket, Log, IOC ve Android Otomasyonu
Savunma ve analiz görevleri ortak Python araçlarıyla birleştirilir.
Scapy, Paket Üretimi ve Trafik İnceleme
İzinli laboratuvarda paket alanlarının okunması, oluşturulması ve protokol davranışının test edilmesi.
IOC Hunter, Hash ve ADB Otomasyonu
Loglardan IP/domain/hash çıkarma; package, APK pull ve logcat görevlerini otomatikleştirme.
Modül 24
Teknik Kanıt, GitHub ve Final Proje
Analiz sonuçları kanıt, raporlama ve sürüm kontrolü disipliniyle bütünleştirilir; katılımcı seçtiği teknik eksende tekrar üretilebilir final çalışma üretir.
24.1 Güvenlik Bulgusu Yazımı
Araç uyarısı yerine teknik olarak savunulabilir bulgu yapısı kurulur.
Ön Koşul, Etki ve Privilege Seviyesi
Açığın erişim gereksinimi, gerçekleşen güven sınırı ihlali ve teknik sonucu.
Kanıt, Tekrar Üretim ve Mitigation
Komut/çıktı, zaman, ortam ve doğrulama adımlarıyla iyileştirme önerisinin sunulması.
24.2 Kanıt Bütünlüğü ve Sınırlamalar
Toplanan verinin kaynağı, değişmezliği ve analiz sınırları açıkça belirtilir.
Hash, Zaman Damgası ve Kaynak Kaydı
Dosya/çıktı kimliğinin ve laboratuvar koşullarının doğrulanabilir biçimde saklanması.
False Positive ve Eksik Kanıt
Kesinleşmemiş ihtimalin bulgu gibi sunulmaması ve bilinmeyenlerin raporda ayrılması.
24.3 Git ve GitHub Çalışma Modeli
Teknik projenin sürüm kontrolü, değişiklik geçmişi ve işbirliği yapısıyla yönetilmesi.
Repository, README ve Commit
Projenin amacı, kurulum, mimari, güvenlik kapsamı ve değişikliklerin anlaşılır belgelenmesi.
Branch, Pull Request ve Issues
Deneysel değişikliklerin ayrılması, gözden geçirilmesi ve teknik görevlerin izlenmesi.
24.4 Otomasyon ve Proje Güvenliği
GitHub Actions ve repository güvenlik özellikleri kontrollü geliştirme sürecine bağlanır.
CI Kontrolü ve Tekrarlanabilir Build
Lint, test veya rapor üretiminin commit bazında otomatik çalıştırılması.
Secret, Dependency ve Security Advisory
Anahtarların repoya sızmaması, bağımlılık uyarıları ve sorumlu açıklama süreci.
24.5 Final Proje Kapsamının Belirlenmesi
Varlık, izin, laboratuvar, hedef katman ve ölçülebilir çıktı baştan tanımlanır.
Sistem Mimarisi ve Attack Surface Haritası
Bileşen, veri akışı, trust boundary ve erişim noktalarının görsel/teknik modeli.
Araştırma Sorusu ve Başarı Ölçütü
Test edilebilir hipotez, beklenen kanıt ve projenin tamamlanma kriterleri.
24.6 Proje Yolları
Eğitimdeki farklı teknik katmanlara uygun proje seçenekleri yapılandırılır.
Firmware/Donanım veya Linux Analizi
Kart protokolü, firmware binary’si, service/process veya kernel güvenlik modeline odaklanan çalışma.
Android, Malware veya Python Aracı
APK/runtime/boot analizi, davranışsal vaka incelemesi veya güvenilir otomasyon aracı.
24.7 Entegre Doğrulama ve Savunma
Bulgu yalnız tetiklenmez; farklı kanıt kaynakları ve mitigation davranışıyla değerlendirilir.
Statik, Dinamik ve Fiziksel Kanıtı Birleştirme
Binary, runtime log, process, trafik veya sinyal ölçümünün aynı sistem hikâyesinde ilişkilendirilmesi.
Kontrol, Recovery ve Güvenli Tasarım Önerisi
Açığı sınırlandıran policy, izolasyon, doğrulama, loglama ve kurtarma yaklaşımının tasarlanması.
24.8 Sunum, Portföy ve Uzmanlık Yolu
Final çalışma profesyonel rapor, repository ve gelişim planıyla tamamlanır.
Teknik Demo, Rapor ve README
Başkasının tekrar edebileceği kurulum, yöntem, kanıt, sonuç ve sınırlamaların sunulması.
Low-Level Security Uzmanlaşma Haritası
Firmware, platform security, mobile research, malware, incident response veya güvenli sistem tasarımı yönlerinin belirlenmesi.
Eğitmenler
Can Koç
Bilgisayar Mühendisi
Gömülü sistemler, firmware, gerçek zamanlı yazılım ve düşük seviye sistem mimarileri üzerine çalışan geliştirici ve teknik eğitmendir. Çalışmalarında fiziksel sinyalden başlayarak işlemci, bellek, veri yolu, çevrebirim, işletim sistemi ve uygulama katmanlarına uzanan sistemi bir bütün olarak ele almaktadır.Gömülü siste...
Ayar Damgası
Uluslararası geçerli, doğrulanabilir sertifika
Eğitim sonunda yapılan online sınavda başarılı olan katılımcılar, uluslararası geçerliliğe sahip onaylı sertifika almaya hak kazanır.
Siber güvenlik yalnızca saldırı araçlarının kullanımı veya hazır komutların uygulanması şeklinde ele alınmaz. Eğitimde bir sistemin nasıl çalıştığı, hangi katmanlarda güven sınırları oluşturduğu, bu sınırların hangi hata sınıflarıyla bozulabildiği ve sistemin saldırı sonrasında hangi teknik izleri bıraktığı incelenir.
Katılımcılar yalnızca “hangi araç kullanılır?” sorusuna değil; “bu araç sistemde hangi davranışı gözlemliyor, hangi varsayıma dayanıyor ve verdiği sonuç nasıl doğrulanır?” sorularına cevap üretir.
Eğitimin temel akışı şöyledir:
Sistem nasıl çalışır → Güven sınırı nerede oluşur → Hata nasıl ortaya çıkar → Yetki nasıl değişir → Sistem nasıl korunur → Olay nasıl doğrulanır?
Eğitim klasik bir web pentest veya bug bounty eğitimi midir?
Hayır. HTTP, tarayıcı güvenliği, session yönetimi ve XSS gibi web konuları işlenir; ancak programın ana ekseni web uygulamalarından ibaret değildir.
Eğitimin ağırlık merkezi Linux ve Android işletim sistemi mimarileri, kernel-user space ilişkisi, process ve yetki modeli, donanım haberleşme hatları, firmware analizi, boot zinciri, tersine mühendislik, dinamik enstrümantasyon ve exploit mekanizmalarıdır.
Web güvenliği, sistem güvenliğinin uygulama katmanındaki bir örneği olarak ele alınır. Asıl amaç, öğrencinin yalnızca bir web payload’ını değil, farklı platformlardaki güvenlik sınırlarını okuyabilmesidir.
Eğitime sıfırdan başlayan biri katılabilir mi?
Evet. Terminal, Linux, ağ, sanallaştırma ve temel programlama bilgileri eğitim içinde oluşturulur. Önceden profesyonel siber güvenlik deneyimi zorunlu değildir.
Bununla birlikte eğitim yüzeysel bir farkındalık semineri değildir. Başlangıç seviyesinden ilerleyen katılımcılar zaman içinde system call, process memory, Linux erişim kontrolleri, kernel mitigation’ları, firmware, bootloader, Android Binder, SELinux, Zygote ve Verified Boot gibi ileri konularla karşılaşır.
Önceden bilmek zorunlu değildir; mekanizmayı öğrenmek ve teknik ayrıntıya emek vermek zorunludur.
Uygulamalar nasıl güvenli bir ortamda gerçekleştirilir?
Çalışmalar izinli ve izole laboratuvar ortamlarında yürütülür. VirtualBox ve UTM gibi sanallaştırma platformlarıyla host, hypervisor ve guest sistemleri birbirinden ayrılır.
NAT, bridged ve host-only ağ modelleri; snapshot, geri yükleme, sanal disk, sanal ağ kartı ve kaynak sınırlandırma davranışları incelenir. Bir sanal makinenin yalnızca ayrı bir pencere olmadığı; kendi firmware, kernel, process, filesystem ve ağ görünümüne sahip bir sistem olduğu gösterilir.
Laboratuvar kurulumu yalnızca işletim sistemi yüklemek değildir. Test sisteminin hangi ağa erişebileceği, host ile hangi kaynakları paylaşabileceği ve bir hata sonrasında nasıl güvenli duruma döndürüleceği de tasarlanır.
Linux konuları hangi seviyede işlenir?
Linux yalnızca terminal komutları ezberletilerek anlatılmaz. Kernel, dağıtım, shell, terminal, process, service, filesystem ve package manager gibi sık karıştırılan katmanlar birbirinden ayrılır.
Bir grafik arayüz davranışının altında hangi process’in, system call’un, permission kontrolünün, service’in, logun ve kernel state’inin oluştuğu incelenir.
Kernel space ve user space, system call arayüzü, VFS, process yaşam döngüsü, PID/PPID, UID/GID, signals, virtual memory, file descriptor, socket, /proc, systemd ve journal birbirine bağlı biçimde ele alınır.
Process ve çalışma zamanı analizi neden bu kadar ayrıntılıdır?
Çünkü diskte bulunan program dosyası ile o programın çalışan process’i aynı şey değildir. Çalışan process’in kendi kimliği, parent process’i, yetkileri, memory map’i, açık dosyaları, socket’leri, environment alanı ve signal davranışı bulunur.
Şüpheli bir process yalnızca görünen adına bakılarak değerlendirilmez. Gerçek executable yolu, komut satırı, parent-child ilişkileri, UID/GID ve capability setleri, açık file descriptor’lar, memory map, ağ bağlantıları, bağlı service, paket kaynağı ve log kayıtları birlikte incelenir.
Açık bir porttan socket’e, socket’ten process’e, process’ten executable’a ve executable’dan paket kaynağına kadar kanıt zinciri oluşturulur.
Linux kernel güvenliği ve exploit mekanizmaları işleniyor mu?
Evet. Kernel güvenliği yalnızca kernel sürümünü bir CVE listesiyle eşleştirmek şeklinde ele alınmaz.
Dağıtımların güvenlik yamalarını geriye taşıyabileceği; aynı görünen kernel sürümünün paket revision’ı, build configuration’ı, mimarisi ve etkin mitigation’ları nedeniyle farklı güvenlik davranışı gösterebileceği açıklanır.
Kernel exploit analizinde şu ayrımlar incelenir:
Kullanıcı alanından kernel alanına ulaşan giriş noktası
Hatanın oluştuğu subsystem veya driver
Memory corruption, mantık hatası veya yarış durumu gibi vulnerability sınıfı
Hatanın yalnız crash mi ürettiği, yoksa kontrol edilebilir bir primitive oluşturup oluşturmadığı
Kernel state veya kontrol akışı üzerinde ne ölçüde etki kurulabildiği
Credential ve privilege sınırının nasıl değiştiği
Mitigation’ların zinciri hangi noktada durdurduğu
Olayın hangi log, crash veya memory izlerini bıraktığı
Bir vulnerability’nin tetiklenmesi ile güvenilir exploit zinciri oluşturulması aynı şey değildir.
Kernel mitigation’ları ne kadar ayrıntılı ele alınır?
Modern işletim sistemlerinde bir bellek hatasının bulunması otomatik olarak yetki yükseltme anlamına gelmez. Exploit zincirinin aktif güvenlik önlemleriyle birlikte değerlendirilmesi gerekir.
Eğitimde mimariye ve platforma göre KASLR, NX, stack canary, SMEP, SMAP, PAN, CFI, hardened usercopy, seccomp, kernel lockdown, module signature, SELinux ve diğer LSM politikaları ele alınır.
Amaç bir mitigation ismini ezberlemek değil; hangi saldırı primitive’ini engellediğini, hangi varsayıma dayandığını ve tek başına neden mutlak koruma sağlamadığını anlamaktır.
Aynı PoC’nin patch, config, mimari ve mitigation farkı nedeniyle başka sistemde çalışmayabileceği açıklanır.
Exploit zincirleri eğitimde nasıl anlatılır?
Exploit, tek bir sihirli kod parçası olarak değil, birbirine bağlı aşamalardan oluşan bir yetki ve güven sınırı geçişi olarak incelenir.
Genel analiz modeli şöyledir:
Giriş noktası → Hata sınıfı → İlk primitive → Kontrol akışı veya state etkisi → Sandbox/privilege sınırı → Kernel veya güvenli dünya geçişi → Kalıcılık → Veri erişimi → Forensic iz → Mitigation
Bir uygulama açığının yalnızca uygulama process’i içinde kod yürütmesi ile sandbox dışına çıkması aynı şey değildir. Benzer biçimde kernel code execution, bootloader kontrolü veya TrustZone seviyesine ulaşmak birbirinden farklı güven sınırlarıdır.
Vaka analizlerinde zincirin hangi halkasının kullanıcı alanında, hangisinin kernel’de, hangisinin boot veya güvenli yürütme ortamında gerçekleştiği ayrıştırılır.
Donanım güvenliği eğitimde ne kadar derin işlenir?
Donanım bölümü yalnızca UART kablosu bağlayıp terminal çıktısı okuma seviyesinde değildir. Bir cihazın kartı üzerindeki işlemci, flash, EEPROM, güç, clock, reset, debug ve haberleşme yüzeyleri birlikte değerlendirilir.
Test point, pinout, voltage level, ortak ground, signal direction, baud rate, clock, frame ve bus timing gibi fiziksel koşullar incelenir. Bir hatta veri görülmesi ile bu verinin doğru protokol, clock ve elektriksel referansla okunması arasındaki fark gösterilir.
UART, SPI ve I²C hatları üzerinden cihazın boot davranışı, hata mesajları, servis arayüzleri, çevrebirim trafiği ve bellek erişim modelleri analiz edilir. Logic analyzer ve gerektiğinde osiloskop kullanılarak yazılımda görünmeyen fiziksel trafik gözlemlenir.
Donanım katmanı, uygulamadan bağımsız ayrı bir dünya değil; firmware ve işletim sisteminin fiziksel olarak çalıştığı temel olarak ele alınır.
11. UART, SPI ve I²C güvenlik açısından nasıl incelenir?
Her protokol hem elektriksel hem de mantıksal katmanda değerlendirilir.
UART’ta TX/RX yönü, baud rate, frame yapısı, parity, boot logları ve debug console davranışı incelenir. SPI tarafında clock, MOSI, MISO, chip-select, flash command’ları ve bellek transaction’ları ele alınır. I²C’de open-drain yapı, pull-up dirençleri, adresleme, ACK/NACK, timing ve ortak bus davranışı analiz edilir.
Amaç yalnız paket decode etmek değildir. Hattın boot sırasında aktif olup olmadığı, üretim cihazında debug erişiminin açık kalıp kalmadığı, trafikte hassas veri bulunup bulunmadığı, harici flash ile işlemci arasındaki verinin doğrulanıp doğrulanmadığı ve firmware güncelleme akışının bu hatlardan etkilenip etkilenemediği araştırılır.
Firmware analizi hangi seviyede ele alınır?
Firmware yalnızca bir araçla dosya çıkarmak şeklinde değerlendirilmez. Önce firmware’in cihaz içindeki görevi ve hangi işlemci-bellek mimarisi için üretildiği belirlenir.
Dosya formatı, header, section, memory map, reset vector, string’ler, sabitler, fonksiyonlar, register erişimleri, protokol kodu, hata mesajları ve update bileşenleri incelenir.
Ghidra ile mimari ve endianness belirleme, code/data ayrımı, function boundary analizi, cross-reference takibi, control-flow graph incelemesi, donanım register erişimlerinin yorumlanması ve güncelleme fonksiyonlarının bulunması ele alınır.
Decompiler çıktısının orijinal kaynak kod olmadığı; optimizasyon, sembol kaybı ve dolaylı çağrıların analiz sonucunu etkileyebileceği özellikle vurgulanır.
Secure Boot, bootloader ve donanımsal güven zinciri işleniyor mu?
Evet. Cihazın yalnızca çalışan işletim sistemi değil, ilk güç verildiği andan itibaren oluşan güven zinciri incelenir.
Boot ROM, bootloader, firmware image, kernel, recovery ve kullanıcı alanı arasındaki doğrulama ilişkileri ele alınır. Root of trust, imza doğrulama, hash zinciri, rollback protection, recovery politikası ve güncelleme bütünlüğü değerlendirilir.
Bir boot zincirinde her katman güvenli görünse bile zincirin en zayıf doğrulama veya geçiş noktası tüm sistemi etkileyebilir.
Boot ve recovery modlarının cihaz üzerinde hangi veri, kontrol ve güncelleme yüzeylerini açtığı; crash dump ve memory region bilgilerinin nasıl yorumlandığı da ele alınır.
TrustZone, TEE ve güvenli dünya kavramları anlatılıyor mu?
Evet. Normal dünya ile güvenli dünya arasındaki ayrım yalnızca “gizli bölge” şeklinde anlatılmaz.
İşlemci ayrıcalık seviyeleri, secure ve non-secure kaynaklar, exception geçişleri, secure service çağrıları, shared memory ve güven sınırları incelenir.
Bir kullanıcı alanı açığının doğrudan TrustZone kontrolü anlamına gelmediği; gelişmiş zincirlerde uygulama, kernel, secure world ve ayrı güvenlik işlemcisi gibi birden fazla bağlamın aşılması gerekebileceği gösterilir.
Bu yaklaşım, “root oldum, sistemdeki her şeyi kontrol ederim” düşüncesinin neden her platform için doğru olmadığını açıklar.
Fault injection ve voltage glitching gibi donanım saldırıları ele alınıyor mu?
Evet. Fault injection, programın ileri seviye donanım ve firmware güvenliği bölümünde kavramsal, mimari ve savunma odaklı olarak ele alınır.
Voltage glitch, clock glitch, brownout ve beklenmeyen reset gibi fiziksel hata koşullarının işlemci zamanlamasını, instruction yürütmesini, branch kararlarını, exception davranışını ve güvenlik doğrulamalarını nasıl etkileyebileceği incelenir.
Bu konu özellikle Secure Boot ve bootloader güvenliğiyle ilişkilendirilir. İmza veya bütünlük kontrolünün normal koşullarda doğru çalışmasının tek başına yeterli olmadığı; sistemin zamanlama ihlali, yanlış yürütme, kesinti ve reset durumlarında da güvenli davranması gerektiği açıklanır.
Savunma tarafında fail-secure tasarım, bağımsız doğrulama, boot state kontrolü, hassas verinin güvenli biçimde temizlenmesi, reset nedenlerinin kaydedilmesi, watchdog davranışı ve güvenlik kararlarının tek bir kritik zamanlama penceresine bağlanmaması ele alınır.
Cihaza özgü saldırı parametreleri veya yetkisiz sistemlere yönelik uygulama reçeteleri yerine, fiziksel hata enjeksiyonunun hangi güven varsayımlarını bozduğu ve dayanıklı sistemlerin buna karşı nasıl tasarlandığı incelenir.
Android güvenliği hangi seviyede işlenir?
Android güvenliği yalnızca APK açıp permission listesine bakmak şeklinde işlenmez. Android’in uygulama katmanından donanıma kadar uzanan mimarisi incelenir:
Uygulama → Java API Framework → System Service → Binder IPC → HAL → Kernel Driver → Donanım
Her Android uygulamasının ayrı Linux UID ile çalışması, filesystem izinleri, SELinux domain’i, PackageManager kaydı, runtime permission’lar, uygulama imzası ve Binder service kontrolleri birlikte değerlendirilir.
Android sandbox’ın tek bir güvenlik mekanizması olmadığı; Linux UID, SELinux, package signing, Binder permission checks, Verified Boot ve filesystem isolation gibi birden fazla katmandan oluştuğu gösterilir.
APK ve Android uygulama analizi nasıl yapılır?
APK; manifest, DEX bytecode, resource tablosu, native kütüphaneler ve imza yapısından oluşan bir paket olarak incelenir.
Manifest üzerinde activity, service, receiver, provider, intent-filter, exported ve permission ilişkileri değerlendirilir. PackageManager’ın kurulum sırasında imza, paket adı, version, UID ve component kayıtlarını nasıl oluşturduğu ele alınır.
JADX ile DEX yapısı, APKTool ile manifest-resource-Smali, ADB ile canlı package ve process durumu, apksigner ile imza bütünlüğü, Ghidra ile native .so dosyaları incelenir.
WebView, exported component, SharedPreferences, SQLite, dosya alanları, loglar, native JNI katmanı ve istemci tarafı güvenlik kararları analiz edilir. Otomatik analiz raporları sonuç kabul edilmez; manuel ve runtime kontrolleriyle doğrulanır.
Binder, system_server ve Android IPC neden önemlidir?
Android uygulamaları çoğu sistem kaynağına doğrudan ulaşmaz. Kamera, konum, paket bilgisi, pencere yönetimi ve benzeri işlevler system service’ler üzerinden sunulur.
Uygulama API çağrısı yapar; istek Binder IPC ile ilgili servise taşınır. Servis çağıran process’in UID’sini, permission’larını ve policy durumunu değerlendirir; ardından isteği kabul eder veya reddeder.
Bu nedenle Android exploit analizinde yalnız uygulama koduna değil; Binder transaction’a, service giriş noktasına, parcel verisine, çağıran kimliğe ve Binder kernel driver’a kadar uzanan zincire bakılır.
Untrusted app process’indeki bir crash ile system_server veya ayrıcalıklı native daemon içindeki bir memory corruption aynı güvenlik etkisine sahip değildir.
Zygote, Magisk ve Zygisk hangi seviyede anlatılır?
Zygote, Android uygulama process’lerinin doğduğu merkezi runtime process’i olarak ele alınır.
Genel akış şöyledir:
init → Zygote → fork → process specialization → UID/GID → SELinux domain → ART → uygulama kodu
Bir app process’i doğarken UID, GID, supplementary group, resource limit, mount namespace ve SELinux context gibi sınırlar uygulanır. Bu nedenle process specialization öncesi ve sonrası aynı güvenlik bağlamı değildir.
Zygisk, çalışan uygulamaya sonradan bağlanan sıradan bir library injection modeli olarak anlatılmaz. Zygote fork hattına yerleşerek child process’in specialization öncesi ve sonrası aşamalarında kod çalıştırabilen bir lifecycle modeli olarak incelenir.
Magisk tarafında boot image veya init_boot değişikliği, erken init, systemless yapı, mount namespace, daemon, hedefli SELinux policy değişiklikleri, DenyList ve integrity kontrollerinin sınırları ele alınır.
Android boot zinciri ve Verified Boot ne kadar ayrıntılı işlenir?
Android boot süreci; boot ROM, bootloader, vbmeta, boot veya init_boot, kernel, ramdisk, init, system ve vendor katmanları üzerinden incelenir.
AVB ve dm-verity mekanizmalarının image ve partition bütünlüğünü nasıl doğruladığı; hash tree, imza, public key, rollback index ve boot state kavramlarıyla birlikte ele alınır.
Bootloader kilidinin açılması, custom image yüklenmesi, recovery davranışı, systemless root ve kalıcılık girişimleri güven zinciri açısından değerlendirilir.
Amaç yalnızca “root nasıl yapılır?” sorusu değildir. Root of trust’ın nerede başladığı, hangi katmanın bir sonrakini doğruladığı, değişikliğin nerede tespit edildiği ve sistem değişikliğinin hangi forensic izleri bıraktığı araştırılır.
Frida ve dinamik analiz hangi amaçla kullanılır?
Statik analiz uygulamanın ne yapabileceğini gösterir; dinamik analiz belirli bir çalışma anında ne yaptığını gösterir.
Frida ile Java ve native fonksiyonların çağrılması, argümanlar, dönüş değerleri, class loading, JNI geçişleri ve runtime veri akışı gözlemlenir. Reflection veya dinamik yükleme nedeniyle statik analizde görünmeyen davranışlar canlı sistemde incelenir.
Dinamik enstrümantasyon yalnızca bir kontrolü geçersiz kılma aracı olarak kullanılmaz. Uygulamanın güvenlik kararını nerede verdiğini, veriyi nerede dönüştürdüğünü ve hangi native veya sistem servisine geçtiğini anlamak için kullanılır.
Malware ve gelişmiş spyware vakaları nasıl incelenir?
Malware analizi yalnızca zararlı yazılım türlerinin isimlerini öğrenmekten ibaret değildir.
Dosyanın sisteme nasıl ulaştığı, ilk kod yürütmeyi nasıl elde ettiği, hangi process içinde çalıştığı, privilege sınırlarını nasıl geçtiği, kalıcılığı nerede oluşturduğu, hangi verilere eriştiği ve hangi kanaldan dışarı aktardığı incelenir.
Pegasus gibi vaka analizlerinde zincir şu bölümlere ayrılır:
Teslimat → Exploit → Loader → Yetki geçişi → Ajan → Veri erişimi → İletişim → Forensic iz
Amaç belirli bir spyware ürününü ezberlemek değil; gelişmiş bir exploit zincirinin farklı privilege ve trust katmanlarında nasıl ilerlediğini anlayabilmektir.
Ağ ve web güvenliği tamamen geri planda mı kalır?
Hayır. Ağ ve web güvenliği hâlâ eğitimin önemli parçalarıdır; ancak diğer katmanlardan kopuk biçimde işlenmez.
TCP/IP, ARP, DNS, DHCP, socket, routing, firewall, paket analizi, HTTP, cookie, session, origin ve tarayıcı depolama alanları ele alınır.
XSS örneklerinde yalnız payload değil; kullanıcı girdisinin hangi noktada kod olarak yorumlandığı, session bilgisinin localStorage ile HttpOnly cookie içinde saklanması arasındaki fark ve tarayıcı güven sınırları incelenir.
Bu bölüm, sistem seviyesindeki genel güvenlik modelinin ağ ve uygulama katmanındaki karşılığıdır.
Python bilmek zorunlu mudur?
Hayır. Gereken temel Python bilgisi eğitim içinde oluşturulur.
Socket programlama, timeout, hata yönetimi, HTTP istekleri, dosya işlemleri, hash hesaplama, log parsing, IOC çıkarımı, metadata analizi ve yapılandırılmış rapor üretimi ele alınır.
Amaç yalnızca başka araçları çağıran scriptler yazmak değildir. Girdi kontrolü, hata durumu, kaynak yönetimi, timeout, yeniden deneme, false positive ve raporlama davranışı bulunan küçük analiz araçları geliştirilir.
Eğitim exploit geliştirmeyi mi, exploit zincirlerini analiz etmeyi mi öğretir?
Eğitimde exploit kavramı yalnızca hazır bir PoC’nin çalıştırılması olarak ele alınmaz. Bir güvenlik açığının erişilebilirliği, ürettiği primitive, etkilediği privilege seviyesi, aktif mitigation’lar ve zincirin güvenilirliği birlikte değerlendirilir.
Memory corruption, logic flaw, information leak, controlled read/write, sandbox escape ve privilege escalation gibi kavramların birbirinden farklı aşamalar olduğu açıklanır.
Amaç yetkisiz sistemlere yönelik çalışır saldırı reçeteleri üretmek değil; yayımlanmış exploit ve vulnerability iddialarını teknik olarak okuyabilmek, eksik halkaları belirlemek ve savunma mekanizmalarının zinciri nerede durdurduğunu anlayabilmektir.
CVE ve internette bulunan PoC kodları nasıl değerlendirilir?
Bir CVE kaydının kernel veya yazılım sürümüyle eşleşmesi, sistemin kesin olarak savunmasız olduğunu göstermez.
Dağıtımların backport ettiği yamalar, paket revision’ı, build configuration, işlemci mimarisi, aktif mitigation’lar ve exploit ön koşulları ayrıca incelenir.
İnternetten elde edilen PoC kodu doğrudan çalıştırılmaz. Kaynak kodun yaptığı filesystem ve ağ işlemleri, çağırdığı komutlar, sabit adresleri, mimari bağımlılıkları ve dış payload davranışları statik olarak değerlendirilir.
PoC, güvenilir bir program olarak değil; kontrollü ve izole ortamda incelenmesi gereken araştırma materyali olarak kabul edilir.
Eğitim yalnızca red team veya blue team odaklı mıdır?
Hayır. Eğitim saldırı ve savunmayı birbirinden kopuk disiplinler olarak ele almaz.
Bir debug arayüzü, system call, Binder servisi veya bootloader hatası saldırgan için erişim yüzeyi oluştururken savunmacı için loglanması, sınırlandırılması ve doğrulanması gereken bir sistem davranışıdır.
Exploit mekanizması incelenirken aynı anda mitigation, erişim kontrolü, isolation, monitoring, forensic ve recovery davranışları da değerlendirilir.
Bu yaklaşım; reverse engineering, vulnerability research, malware analizi, incident response, mobil güvenlik, firmware güvenliği ve güvenli sistem tasarımı gibi farklı alanlara ortak bir temel sağlar.
Gerçek cihazlar ve fiziksel ölçüm araçları kullanılıyor mu?
Eğitimin donanım ve firmware bölümlerinde gerçek cihaz davranışları; kart üzerindeki haberleşme, debug, güç, reset ve bellek yüzeyleri üzerinden incelenir.
Logic analyzer ile UART, SPI ve I²C sinyalleri yakalanır; gerektiğinde osiloskopla gerilim, zamanlama, clock, reset ve fiziksel hata davranışları değerlendirilir.
Ölçülen sinyal yalnızca ekranda görülen bir dalga şekli olarak bırakılmaz. Sinyalin hangi firmware işlemi, protokol frame’i, boot aşaması veya hata durumu tarafından üretildiği araştırılır.
Amaç yalnızca cihazdan veri çıkarmak değil; fiziksel ölçümü yazılım, firmware ve güvenlik modeliyle ilişkilendirebilmektir.
Android ve Linux güvenliği neden aynı eğitim içinde ele alınıyor?
Android, Linux kernel üzerine kurulmuş olsa da güvenlik modeli yalnızca klasik Linux izinlerinden oluşmaz.
Android uygulamaları Linux UID, filesystem izinleri, SELinux domain’leri, Binder IPC, PackageManager, uygulama imzası, runtime permission’lar, Zygote process modeli ve Verified Boot gibi birden fazla güvenlik katmanı içinde çalışır.
Linux temeli bilinmeden process, UID, system call, memory map, driver veya kernel privilege sınırları anlaşılamaz. Android katmanları bilinmeden de Binder, system_server, Zygote, Magisk, Zygisk, AVB veya platform exploit zincirleri doğru konumlandırılamaz.
Bu nedenle Linux ve Android iki bağımsız konu değil; aynı sistem mimarisinin farklı katmanları olarak birlikte incelenir.