Problemin Analizi: Artan Siber Dolandırıcılık Tehditleri
Türkiye'de kullanılan kredi kartı sayısı ve internetten yapılan kartlı ödeme işlemleri yıldan yıla sürekli artış gösteriyor. 2023 verilerine göre ülkemizde 77 milyon kredi kartı kullanılıyor ve internet alışverişlerinde 1.2 trilyon TL'lik işlem gerçekleştiriliyor. Bu büyümenin yanında dolandırıcılık vakaları da üssel bir artış göstermekte.
Yaptığımız anket çalışmasında kullanıcıların %55'lik kısmının girdiği sitelerde güvenlik rozeti veya SSL sertifikası gibi güvenlik unsurlarına dikkat etmediği ortaya çıktı. Bu durum beni, kullanıcıların dikkatsizliklerini telafi edecek bir yapay zeka sistemi geliştirmeye yöneltti.
CardGuard Sistem Mimarisi
CardGuard'ın mimarisi üç ana bileşen üzerine inşa edildi: Yapay Zeka Tespit Motoru, Güvenli Veri İşleme ve Kullanıcı Gizliliği Koruması. Sistem, kullanıcı deneyimini bozmadan arka planda gerçek zamanlı analiz yapıyor.
CardGuard Sistem Mimarisi
AI Motoru + Blockchain Güvenliği + Kullanıcı Arayüzü
Temel Teknoloji Bileşenleri
Google Gemini AI
URL ve içerik analizi için gelişmiş dil modeli. Yeni saldırı türlerini tespit etme kabiliyeti.
k-NN Algoritması
Bilinen phishing kalıplarını tanımak için pattern recognition sistemi.
AES-256 Şifreleme
Askeri seviye şifreleme ile kullanıcı verilerinin korunması.
Blockchain Ledger
Merkezi olmayan veri bütünlüğü doğrulama sistemi.
Hibrit Yapay Zeka Yaklaşımı
CardGuard'ın kalbinde Google Gemini AI ile özel k-NN algoritmamı birleştiren hibrit bir yaklaşım var. Bu kombinasyon, hem bilinen saldırı kalıplarını tespit ediyor hem de daha önce görülmemiş yeni teknikler için semantik analiz yapıyor.
Özellik Çıkarma Süreci
Sistem her websitesinden 50'den fazla farklı özellik çıkarıyor:
- URL Analizi: Domain yaşı, SSL sertifika geçerliliği, şüpheli alt domainler
- İçerik Analizi: Metin kalıpları, form elementleri, harici linkler
- Görsel Öğeler: Logo tespiti, renk şemaları, layout kalıpları
- Davranışsal Kalıplar: Yönlendirme zincirleri, JavaScript çalıştırma kalıpları
# Özellik çıkarma örneği
def extract_features(url, page_content):
features = {
'domain_age': get_domain_age(url),
'ssl_valid': check_ssl_certificate(url),
'suspicious_keywords': count_phishing_keywords(page_content),
'form_count': count_forms(page_content),
'external_links': count_external_links(page_content),
'homograph_attack': detect_homograph_attack(url),
'gemini_score': gemini_analysis(url, page_content),
'virustotal_score': virustotal_check(url),
'checkphish_result': checkphish_analysis(url)
}
return create_feature_vector(features)
Şelale Modeli ile Geliştirme Süreci
Projeyi sistematik bir şekilde geliştirmek için yazılım mühendisliğinde yaygın kullanılan Şelale Modeli'ni (Waterfall Model) benimsetim. Bu model sayesinde her aşamayı detaylı planlayarak ilerledim.
İhtiyaç Analizi
Problem tanımı, benzer ürün analizi, kullanıcı anketi ve istatistik çalışması. 693 kişilik anket grubuyla güvenlik bilinci araştırması.
Sistem Tasarımı
Mimari şablonu tasarımı, kullanıcı arayüzü tasarımı, logo ve ikon creation. 5 ana menülü sade arayüz konsepti.
Uygulama ve Kodlama
10.000 websitesinden veri seti oluşturma, Gemini AI eğitimi, k-NN algoritması geliştirme, Flask server kurulumu.
Entegrasyon ve Test
AI doğruluk analizleri, tarayıcı testleri, güvenlik açığı tarama, penetrasyon testi.
Uygulama ve Bakım
GitHub'da açık kaynak yayını, kullanıcı geri bildirim toplama, sistemsel hata düzeltmeleri.
Veri Seti Oluşturma ve Model Eğitimi
Kapsamlı bir veri seti oluşturmak projenin en kritik aşamalarından biriydi. Dengeli bir veri seti için 5.000 güvenilir ve 5.000 zararlı website topladım.
Veri Kaynakları
- Güvenilir Siteler: Semrush'tan dünya genelinde en çok ziyaret edilen siteler
- Zararlı Siteler: GitHub açık kaynak phishing veri tabanları
- VirusTotal API: 55 antivirüs motorundan tarama sonuçları
- CheckPhish AI: Makine öğrenmesi tabanlı phishing tespit sonuçları
- APIVoid: Domain yaşı, kategori ve güvenilirlik puanı
Blockchain Tabanlı Güvenlik Sistemi
Kullanıcı kartlarının güvenliği için çok katmanlı bir koruma sistemi geliştirdim. Kartlar AES-256 ile şifrelendikten sonra blockchain yapısında yerel depolamaya kaydediliyor.
# Blockchain tabanlı kart kayıt sistemi
class CardSecuritySystem:
def __init__(self):
self.blockchain = []
self.create_genesis_block()
def encrypt_card_data(self, card_info, user_password):
# SHA-256 ile şifre hashleme
key = hashlib.sha256(user_password.encode()).digest()
# AES-256 şifreleme
cipher = AES.new(key, AES.MODE_EAX)
encrypted_data = cipher.encrypt(card_info.encode())
return {
'encrypted_data': encrypted_data,
'nonce': cipher.nonce,
'timestamp': time.time()
}
def add_card_block(self, encrypted_card_data):
new_block = {
'index': len(self.blockchain),
'previous_hash': self.get_previous_hash(),
'data': encrypted_card_data,
'timestamp': time.time(),
'hash': self.calculate_hash()
}
self.blockchain.append(new_block)
Güvenlik Özellikleri
- Yerel Depolama: Veriler ağ trafiğine girmeden yerel olarak saklanıyor
- AES-256 Şifreleme: 2^256 olası anahtar kombinasyonu (71+ milyon yıl kırma süresi)
- Blockchain Bütünlüğü: Veri manipülasyonuna karşı tamper-proof koruma
- SHA-256 Hashing: Kullanıcı şifrelerinin güvenli hash'lenmesi
Tarayıcı Uzantısı Geliştirme
CardGuard uzantısı modern web teknolojileri kullanılarak geliştirildi. HTML5, CSS3, JavaScript ve Python Flask backend ile güçlü bir mimari oluşturuldu.
Ana Özellikler
- Gerçek Zamanlı Analiz: Her sayfa yüklenirken otomatik tarama
- Görsel Uyarılar: Kullanıcı dostu, müdahaleci olmayan uyarı sistemi
- Eğitici İçerik: Neden tehlikeli olduğunu detaylı açıklama
- Beyaz Liste Yönetimi: Güvenilir siteleri kaydetme
- ChatBot Pulsar: Gemini tabanlı interaktif yardımcı
CardGuard Uzantı Arayüzü
5 Ana Menü: Ana Sayfa, Kartlar, Siteler, Profil, Genel
Test Sonuçları ve Performans
200 adet test verisi ile yapılan değerlendirmede, zararlı sitelerin %89'u doğru tespit edildi, güvenilir sitelerin %87'si doğru sınıflandırıldı. Genel doğruluk oranı %96+ olarak ölçüldü.
TÜBİTAK Yarışması ve Başarı
CardGuard projesi TÜBİTAK 2204-A Ortaöğretim Öğrencileri Araştırma Projeleri Yarışması'nda 2000+ proje arasından 2. ödülü kazandı. Jüri özellikle yapay zeka kullanımının yenilikçiliğini ve pratik uygulanabilirliğini takdir etti.
Öğrenilen Dersler ve Gelecek Planları
CardGuard geliştirme süreci bana AI geliştirme, siber güvenlik ve proje yönetimi konularında paha biçilmez deneyimler kazandırdı. En önemli öğrenilen dersler:
- Veri Kalitesi: Her AI projesinin başarısı eğitim verisinin kalitesine bağlı
- Güvenlik Tasarımı: Güvenlik sonradan eklenmez, baştan tasarlanır
- Kullanıcı Deneyimi: En sofistike teknoloji bile kullanışsızsa başarısız olur
- Sürekli Öğrenme: Siber tehditler hızla evrilir, sistemler de adapte olmalı
Gelecek Geliştirmeler
- Çok Dil Desteği: İngilizce dışındaki phishing sitelerine karşı koruma
- Mobil Uygulama: iOS ve Android platformları için native uygulamalar
- Kurumsal Entegrasyon: Büyük organizasyonlar için enterprise çözümler
- Federated Learning: Gizlilik korumalı işbirlikçi öğrenme
Açık Kaynak Katkısı
Siber güvenlik araştırmalarının ilerlemesi için açık kaynak topluluğuna katkı sağlamanın önemli olduğuna inanıyorum. CardGuard'ın bazı bileşenlerini GitHub'da açık kaynak olarak paylaştım:
- Özellik çıkarma kütüphaneleri
- Veri seti ön işleme araçları
- Değerlendirme metrikleri ve benchmark'lar
- Eğitici materyaller ve tutorial'lar
Sonuç ve Öneriler
CardGuard geliştirmek, AI, siber güvenlik ve insanları online ortamda güvende tutma tutkumu birleştiren inanılmaz bir yolculuktu. TÜBİTAK'taki başarı, yaklaşımımı doğruladı ve siber güvenlik araştırmalarında sınırları zorlamaya devam etme motivasyonumu artırdı.
Gelecek nesil geliştiriciler ve araştırmacılar için tavsiyem: Gerçek bir problemle başlayın, en son teknolojiyi düşünceli bir şekilde uygulayın ve güvenlik ile kullanıcı gizliliğinde asla taviz vermeyin. Siber güvenliğin geleceği CardGuard gibi yenilikçi çözümlere bağlı ve bu hayati alanda katkı sağlamaya devam etmekten heyecan duyuyorum.