CyberChef Nedir, Nasıl Kullanılır? CTF İçin 10 Tarif
CyberChef, Birleşik Krallık'ın istihbarat ve siber güvenlik kurumu GCHQ'nun geliştirdiği, tarayıcıda çalışan ücretsiz ve açık kaynak veri dönüştürme aracıdır. Base64 çözme, hex çevirme, XOR, özet alma ve sıkıştırma açma gibi işlemleri tarif denen sıralı zincirlerle uygular. Kurulum istemez ve girdiyi sunucuya göndermez.
CyberChef nedir sorusunun kısa cevabı şu: GCHQ'nun geliştirdiği, tarayıcıda çalışan ücretsiz bir veri dönüştürme aracı. Base64 ya da hex ile kodlanmış bir metni çözmek, XOR uygulamak ya da bir özetin türünü tahmin etmek için kod yazmazsın. İşlemleri sırayla dizip bir "tarif" kurarsın. Bu yazıda arayüzü, Magic işlevini, CTF'de en çok işine yarayacak 10 tarifi ve verini nasıl koruyacağını göreceksin.
CyberChef nedir ve ne işe yarar?
CyberChef, veriyi bir biçimden başka bir biçime çeviren yüzlerce işlemi bir ekranda toplayan bir web uygulamasıdır. GCHQ aracı Kasım 2016'da GitHub'da herkese açtı ve "Siber İsviçre çakısı" adıyla tanıttı. Proje Apache 2.0 lisanslıdır. Kasım 2026 itibarıyla değişiklik günlüğündeki son sürüm 11.5.0'dır (18 Eylül 2026) ve arayüzün işlem listesinde 500'ü aşkın işlem vardır.
Aracın adı mutfaktan gelir. Her işlem bir malzemedir. İşlemleri sıraya dizdiğinde bir tarif olur ve tarif girdiyi adım adım "pişirir". GCHQ'nun tanıtım yazısına göre amaç, teknik bilgisi olan da olmayan da herkesin veri biçimlerini, şifrelemeyi ve sıkıştırmayı sürükle bırak ile keşfedebilmesidir.
CyberChef'i kimin ne için açtığına bakınca aracın genişliği görünür:
| Kim | Ne için kullanır |
|---|---|
| CTF oyuncusu | Kriptografi ve çeşitli kategorilerinde kodlama katmanlarını soymak |
| SOC analisti | Bir betiğe gömülü Base64 komutu okumak, şüpheli adresi Defang URL ile tıklanamaz hâle getirmek |
| Geliştirici | Bir JWT'nin içeriğine bakmak, URL kodlamasını çözmek |
| Öğrenci | Kodlama, şifreleme ve özet arasındaki farkı gözüyle görmek |
Bunu tarayıcıda dene: CTF Arena'nın kriptografi kategorisini seç. Açılan "Nasıl yaklaşmalı" kutusunda önerilen araçlar arasında CyberChef de var. Soruları ücretsiz açıp okursun. Flag göndermek için ücretsiz hesabınla giriş yaparsın ve ilk doğru flag, sorunun puanı kadar XP yazar.
CyberChef nasıl kullanılır?
CyberChef'i kullanmak için resmî adresini açman yeter, kurulum gerekmez. Ekran dört alana bölünür:
| Alan | Yeri | Ne yaparsın |
|---|---|---|
| Operations | Solda | İşlemleri arar, ortadaki tarife sürüklersin |
| Recipe | Ortada | İşlemleri sıraya dizer, her birinin ayarını değiştirirsin |
| Input | Sağ üstte | Metni yapıştırır ya da dosya yüklersin |
| Output | Sağ altta | Tarifin sonucunu okursun |
İlk tarifini şöyle kurarsın:
- Input alanına
bWVyaGFiYQ==metnini yapıştır. - Soldaki arama kutusuna "base64" yaz.
- From Base64 işlemini ortadaki Recipe alanına sürükle.
- Output alanında
merhabasözcüğünü gör.
Auto Bake açıkken girdiyi ya da tarifi her değiştirdiğinde CyberChef sonucu hemen yeniden hesaplar. Büyük bir dosya ekranı yavaşlatırsa bu kutuyu kapatıp BAKE düğmesiyle elle çalıştırırsın. Tarayıcın izin verdiği ölçüde yaklaşık 2 GB'a kadar dosya yükleyebilirsin.
Tarifteki herhangi bir işleme durdurma noktası (breakpoint) koyabilirsin. CyberChef o işleme gelmeden durur, sen de tarifi işlem işlem ilerletirsin. Beğendiğin tarifi Save recipe ile tarayıcının yerel deposuna kaydedersin. Adres çubuğundaki bağlantı hem tarifi hem girdiyi taşır. Bu, bir arkadaşına tarif göstermek için pratiktir, ama hassas veri için bir risktir.
CyberChef ile Base64 nasıl çözülür?
Base64 çözmek için From Base64 işlemini kullanırsın. Bu işlemin "Remove non-alphabet chars" ayarı varsayılan olarak açıktır. Bu yüzden kopyalarken araya giren boşluk ve satır sonları sonucu bozmaz.
Base64'ü şu işaretlerden tanırsın:
- Yalnız A-Z, a-z, 0-9,
+ve/karakterleri var. - Sonunda bir ya da iki
=olabilir. +ve/yerine-ve_görüyorsan URL'ye uygun alfabe kullanılmıştır. Alphabet ayarından "URL safe (RFC 4648 §5)" seçeneğini seç. JWT parçaları bu alfabeyle kodlanır.
Örnek: xZ5pZnJlIGRlxJ9pbA== girdisi From Base64 ile "Şifre değil" metnine döner. Bu metin aslında Base64'ün neden şifreleme olmadığını da gösterir: anahtar yok, herkes geri çevirir. Konunun teorisini Base64 nedir yazısında okuyabilirsin.
CyberChef Magic ne yapar?
Magic, girdinin hangi kodlamada olduğunu tahmin eder ve onu çözecek işlemleri önerir. Önce Base64, hex ve Gzip gibi belirli bir yapısı olan biçimleri desenle arar. Eşleşen işlemleri deneme amaçlı çalıştırır, her sonucu dosya imzasına, geçerli UTF-8 olup olmadığına, entropisine ve dil frekansına göre puanlar.
Magic'i iki yolla kullanırsın:
- Arka planda: Çıktı değiştiğinde Magic kendiliğinden çalışır. İşe yarar bir zincir bulursa Output alanında küçük bir sihir simgesi belirir. Üstüne gelince önerilen işlemleri ve önizlemeyi görürsün, tıklarsan tarife eklenir.
- İşlem olarak: Magic'i tarife ekler, ayarlarını kendin verirsin.
| Ayar | Varsayılan | Ne işe yarar |
|---|---|---|
| Depth | 3 | İç içe kaç katman çözüm deneneceğini belirler |
| Intensive mode | Kapalı | Tek baytlık XOR, bit döndürme ve karakter kodlaması denemelerini ekler. Hız için ilk 100 bayta bakar. |
| Extensive language support | Kapalı | Çıktıyı çok daha fazla dille karşılaştırır |
| Crib | Boş | Çıktıda görmeyi beklediğin metin ya da regex, örneğin CTF\{ |
Magic'in sınırını bil. Yoğun modda bile anahtar olarak yalnız tek baytlık XOR'u dener. Anahtarı bilinmeyen Vigenère, uzun anahtarlı XOR ya da AES onun listesinde yoktur. Metnin yalnız bir kısmı kodluysa öneri karışabilir. Bu durumda Subsection işlemiyle regex'e uyan kısmı ayır. Sonraki işlemler yalnız o eşleşmelere uygulanır.
CTF için en kullanışlı 10 CyberChef tarifi hangileri?
Aşağıdaki tarifler başlangıç seviyesindeki CTF sorularında en sık karşılaşacağın biçimleri kapsar. İşlem adlarını CyberChef'teki İngilizce hâliyle yazdık, arama kutusuna aynen yazabilirsin. Örnek girdiler bu yazı için hazırlandı.
| # | Görev | Tarif | Ne zaman kullanılır |
|---|---|---|---|
| 1 | Base64 çözmek | From Base64 | Q1RGe3RhcmlmX2Jpcn0= gibi, çoğu zaman = ile biten metin |
| 2 | Hex çözmek | From Hex | Yalnız 0-9 ve a-f içeren dizi. Delimiter ayarı varsayılan olarak Auto'dur. |
| 3 | İç içe kodlama | From Base64, ardından From Hex | NDM1NDQ2N2I3NDYxNzI2OTY2NWY2MjY5NzI3ZA== gibi, Base64'ten hex çıkan girdi |
| 4 | Sezar ve ROT13 | ROT13 Brute Force, Crib alanına CTF{ | Harfler kaymış ama boşluk ve noktalama yerinde |
| 5 | Tek baytlık XOR | From Hex, ardından XOR Brute Force (Key length 1, Crib) | Okunmayan bir hex dizi ve küçük bir anahtar şüphesi |
| 6 | Anahtarı bilinen XOR | From Hex, ardından XOR (Key) | Soru anahtarı ayrıca veriyor |
| 7 | İkili, ondalık, sekizlik | From Binary, From Decimal ya da From Octal | 0 ve 1 dizileri ya da 67 84 70 gibi sayılar |
| 8 | Mors alfabesi | From Morse Code | Nokta ve çizgilerden oluşan metin |
| 9 | URL ve JWT okumak | URL Decode ya da JWT Decode | %3D gibi yüzde işaretleri ya da eyJ ile başlayan üç parçalı bir token |
| 10 | Gömülü dosya bulmak | Detect File Type, ardından Extract Files | Girdi metin değil, ikili veri |
Üç küçük not tarifleri daha güçlü yapar. ROT13 işleminin Amount ayarı her kaydırma miktarını kabul eder, yani klasik Sezar şifresi için ayrı bir işleme gerek yoktur. JWT Decode imzayı doğrulamaz, yalnız içeriği okur. İmza kontrolü için JWT Verify ayrı bir işlemdir. Alt alta duran birçok Base64 satırını tek tek çözmek için tarifin başına Fork koyarsın.
Tarifleri Arena'nın çeşitli kategorisinde de dene. Hangi soruya hangi tarifin uyduğunu bulmak alıştırmanın kendisidir. Elindeki verinin adını koymak çözümün yarısıdır. Kategorilerin hangisinden başlaman gerektiğini CTF kategorileri yazısı anlatır.
Tarif doğru çıkmazsa ne yapmalısın?
Tarif anlamsız çıktı veriyorsa sorunun hangi adımda başladığını bularak çözersin. Şu sırayı izle:
- Adım adım ilerle. Şüphelendiğin işleme durdurma noktası koy. Çıktının hangi işlemden sonra bozulduğunu gör.
- Girdiyi temizle. Remove whitespace ve Remove null bytes, kopyalarken araya giren boşluk ve sıfır baytlarını atar.
- Alfabeyi değiştir. Base64 çıkmıyorsa URL safe alfabesini, sonra From Base32, From Base58 ve From Base85 işlemlerini dene.
- Yönü kontrol et. Metin tersten yazılmış olabilir. Reverse işlemini tarifin başına ekle.
- Entropiye bak. Entropy işlemi yüksek bir değer verirse veri şifreli ya da sıkıştırılmış olabilir. Detect File Type bir Gzip imzası bulursa Gunzip ekle.
Türkçe karakterler ayrı bir dikkat ister. ÅŸifre ya da ılık gibi bir metin görüyorsan veri bozuk değildir, yanlış karakter kodlamasıyla okunmuştur. UTF-8'de "ş" iki bayttır. Bu iki bayt Windows-1254 ile okununca ekranda iki ayrı işaret çıkar. Düzeltmek için Encode text işlemini "Windows-1254 Turkish (1254)" ile, ardından Decode text işlemini "UTF-8 (65001)" ile tarife ekle. ÅŸifre yeniden şifre olur. Magic'in yoğun modu da bu tür bozuk kodlamaları dener.
CyberChef güvenli mi, hassas veriyi yapıştırabilir misin?
Resmî CyberChef girdini sunucuya göndermez. GitHub sayfasına göre ne tarif ayarın ne de girdin (metin ya da dosya) web sunucusuna gider. Bütün işlem senin bilgisayarında, tarayıcında yapılır. Yine de üç noktaya dikkat et:
- Paylaşılan bağlantı girdiyi taşır. Bir parolayı ya da müşteri kaydını çözdüysen o sayfanın bağlantısını mesajla gönderme.
- Ağa çıkan işlemler var. HTTP request gibi bir işlemi tarife eklersen tarayıcın gerçekten bir istek gönderir.
- Adresi doğru aç. Aracı GitHub sayfasındaki resmî bağlantıdan aç. Arama sonucunda çıkan bir kopya aynı arayüzü taşıyıp farklı davranabilir.
Kapalı bir ağda çalışıyorsan uygulamanın sol üst köşesindeki bağlantıdan tam bir kopya indirirsin. Docker ile docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest komutunu çalıştırıp tarayıcıda 8080 portunu açarsın. Sürüm 11'den beri kapsayıcı 8080 portunu kullanır, önceden 80'di. İş yerinde kişisel veri içeren kayıtlarla çalışıyorsan kurumunun veri kurallarına uy.
CyberChef yasal bir araçtır. Ama çözdüğün verinin sana ait olması ya da çözme yetkin olması gerekir: CTF'de sana verilen dosya, kendi verin ya da işin gereği yetkili olduğun kayıt. Başkasının oturum anahtarını çözüp kullanmak bilişim suçu sayılabilir. Sınırı Hacking yasal mı yazısında okuyabilirsin.
CyberChef şifre kırar mı, nerede yetersiz kalır?
CyberChef kodlamayı çözer ve anahtarını bildiğin şifreyi açar, ama modern şifreyi anahtarsız kırmaz. Analyse hash işlemi bir özetin türünü yalnız uzunluğuna bakarak tahmin eder. 64 onaltılık karakterlik bir özet için SHA-256 ve SHA3-256 dahil birçok aday listeler, ama özeti geri çevirmez. Özetin neden geri dönmediğini hashing nedir yazısı anlatır.
Özet ile şifreli metni ayırt etmeyi Özet mi Şifre mi labında dene. Lab tarayıcıdaki bir terminalde çalışır, kurulum gerekmez. Bir özeti küçük bir sözlükle tahmin eder, şifreli dosyayı yanındaki anahtarla açarsın.
CyberChef ile Python arasında seçim yaparken şu tabloya bak:
| Durum | CyberChef | Python |
|---|---|---|
| Biçimi belirsiz kısa bir metin | Magic ve birkaç tıklık tarif yeter | Gereksiz uzun sürer |
| İki bayttan uzun XOR anahtarı | XOR Brute Force en çok 2 bayt dener | Anahtar uzunluğunu bulup kırabilirsin |
| Zayıf RSA anahtarı ve sayı kuramı | RSA işlemleri anahtar ister, saldırıya uygun değil | Doğru araç |
| Yüzlerce dosyada aynı işlem | Elle zahmetli | Döngüyle hızlı |
Python'a nereden başlayacağını Siber güvenlik için Python yazısında bulabilirsin. İyi bir alışkanlık şu: önce CyberChef'te tarifi bul, sonra aynı adımları betiğe dök.
Kaynaklar
Sık sorulan sorular
CyberChef ücretsiz mi?
Evet. CyberChef, GCHQ'nun Apache 2.0 lisansıyla yayımladığı açık kaynak bir araçtır. Resmî adresi tarayıcıda açıp hemen kullanırsın, hesap açman ya da program kurman gerekmez. Kaynak kodu GitHub'da herkese açıktır. İstersen tam bir kopyasını indirip kendi bilgisayarında ya da kapalı bir ağda da çalıştırabilirsin.
CyberChef'e yapıştırdığım veri bir yere gönderilir mi?
Resmî CyberChef girdini ve tarifini sunucuya göndermez, bütün işlem senin tarayıcında yapılır. İki istisnayı bil. Adres çubuğundaki bağlantı girdini de taşır, bu yüzden hassas veriyi çözdüğün bağlantıyı paylaşma. HTTP request gibi ağa çıkan bir işlemi tarife eklersen tarayıcın gerçekten istek gönderir.
CyberChef internet olmadan çalışır mı?
Çalışır. Uygulamanın sol üst köşesindeki bağlantıdan CyberChef'in tam bir kopyasını indirirsin. Bu kopyayı sanal makineye, kapalı ağa ya da internetsiz bir bilgisayara koyup tarayıcıda açarsın. Docker kullanıyorsan GCHQ'nun hazır imajını çalıştırıp 8080 portundan da erişebilirsin. İşlemler yine tamamen yerelde yapılır.
CyberChef şifre kırar mı?
Modern şifreyi anahtarsız kırmaz. Kodlamayı çözer, anahtarını bildiğin şifreyi açar, ROT13 ve en çok iki baytlık XOR anahtarlarını kaba kuvvetle dener. Analyse hash işlemi bir özetin türünü yalnız uzunluğuna bakarak tahmin eder, özeti geri çevirmez. Daha uzun anahtar ya da RSA gibi işler için Python betiği yazman gerekir.
CyberChef Magic her zaman doğru sonucu verir mi?
Hayır. Magic bir tahmin aracıdır. Tanıdık desenleri arar, olası işlemleri dener ve sonuçları puanlar. Kısa girdide ya da metnin yalnız bir kısmı kodlanmışsa yanlış zincir önerebilir. Anahtarı bilinmeyen Vigenère ya da uzun anahtarlı XOR gibi şifreleri denemez. Önerisini her zaman çıktıyı okuyarak kendin doğrula.
- CyberChef
- CTF
- Base64
- kriptografi
- kod çözme