SeNZeRo
Özel Üye
- 8 Eyl 2016
- 5,100
- 14
Foto Forensics
Bugün bir çok CTF yarışmasında genellikle hep soru gelen Resim Analizi (Foto Forensics) konusunu anlatacağım. CTF yarışmalarınında çıkan Foto Forensics sorularında en çok kullanılan teknikleri bu konuda anlatacağım. Forensics (adli bilişim) nedir, ne için kullanılır vb. gibi soruları geçiyorum. Forumda bir çok konu var bilmeyen arkadaşlar onlara bakabilir.
Konuda Kullanacağımız Web Siteleri:
FotoForensics
https://29a.ch/photo-forensics/
Foto Forensicsde Kullanılan Bazı Teknikler:
https://29a.ch/photo-forensics/
Kullanılan Bazı Araçlar:
Exiftool
Binwalk
Strings
File Komutu
Binwalk
Strings
File Komutu
Foto Forensicsde Kullanılan Bazı Teknikler:
- Métadata Analizi
- Error Level Analizi
- Noise Analizi
Métadata Analiz Nedir, Nasıl Yapılır ?
Çoğu görüntü dosyası sadece resim içermez. Resim ile ilgili bir çok veriyi (méta veri) de içerir. Bu verilerde resimin hangi kamera ile çekildiğini, gps bilgilerini, copyright haklarını vb. gibi bir çok veriyi içerir. Bu verileri belirli programlarla veya sitelerle analiz ederek resim hakkında bilgi sahibi olabiliriz. CTF sorularında da flagı bu métadataların içine yerleştirebiliyorlar. Mesela bir CTF yarışmasında copyright yerine yerleştirmişlerdir. Veya comment yerine yerleştirenler de oluyor.
Basit olarak hiçbir araç kullanmadan indirdiğiniz resim üzerinde sağ tık yapıp özelliklerden ayrıntılar bölümüne girerseniz detaylı olmasa da resim hakkında kısa bilgi sahibi olabilirsiniz.
Basit olarak hiçbir araç kullanmadan indirdiğiniz resim üzerinde sağ tık yapıp özelliklerden ayrıntılar bölümüne girerseniz detaylı olmasa da resim hakkında kısa bilgi sahibi olabilirsiniz.
Métadata analizi için kullanılan bir çok araç var. Bu araçlardan en çok kullanılanı exiftool. Daha önceden Exiftollun kullanımını anlattım, aracın kullanımını o konuda öğrenebilirsiniz. Bu işlemi web sitesi kullanarak online olarak da yapabilirsiniz. Yukarıda verdiğim sitelerden métadata verilerine ulaşabilirsiniz.
File Komutu İle Dosya Türünü Öğrenme:
Bir dosyayı uzantısından ne olduğunu bilemediğimizde file komutunu kullanırız. Mesela dosya uzantısı resim dosya uzantısıdır fakat resim görüntüleyici araçla açtığımızda açılmıyordur. Bu tür durumlarda file komutu bize yardım eder. Dosya uzantısının .jpg, .png vb. gibi resim uzantısı olması bizi yanıltabilir. Resim dosyasının içine başka dosyaları gömerek sorular çıkabiliyor. Bunların hangi uzantıda olduğunu öğrenmek için file komutunu kullanıyoruz.
Kod:
[COLOR="white"]file[/COLOR] resimismi
Binwalk Aracının Kullanımı:
Binwalk aracıda file komutu ile aynı işlevde sayılır. Firmware analizinde bize yardımcı olur. Dosya uzantısının bize verdiği bilgi dışında o dosyaya başka bir dosya gömülüp gömülmediğini analiz eder, HEXADECIMAL değerlerini bize verir. Eğer dosyanın içinde başka dosya varsa bu araç sayesinde öğrenmiş oluyoruz.
Kod:
[COLOR="white"]binwalk[/COLOR] dosyakonumu
Eski CTF lerde çıkmış sorulardaki binwalk kullanım örnekleri. Binwalk ile baktığımızda resim dosyasının içinde zip, txt, html vb. gibi dosya uzantılarının olduğunu görürüz.
Strings Aracının Kullanımı:
Bazı CTF lerde flaglar resimin string değerinin içine yerleştirilebiliyor. Exiftool, binwalk vb gibi araçlarla incelediğimizde bu flagı bulamayız. Bundan dolayı burada strings aracı devreye giriyor. Bu araç sayesinde dosyaların string değerlerine ulaşabiliriz. Sadece strings aracı ile değil normal bir yazı editörü ile de bu değerlere ulaşmamız mümkün.
Strings aracını kullanarak belli bir stringi bulmak için grep komutunu kullanırız. Mesela örnek olarak strings resim.jpg | grep kelime şeklinde istediğimiz değere ulaşabiliriz.
Strings aracını kullanarak belli bir stringi bulmak için grep komutunu kullanırız. Mesela örnek olarak strings resim.jpg | grep kelime şeklinde istediğimiz değere ulaşabiliriz.
Kod:
[COLOR="White"]strings[/COLOR] resim.jpg
Belli bir değeri aramak için kullanılan komut:
Kod:
strings resim.jpg | [COLOR="white"]grep[/COLOR] flag
Error Level Analizi
Error Level analizinin ne olduğunu anlatan daha önceden açılmış bu konuya bakabilirsiniz. O konuda detaylı anlatıldığı için ben detaya girmiyorum. Resimlerin kontrast değeriyle oynama yaparak flag bulunur. https://29a.ch/photo-forensics/ Sitesinden resimleri analiz edebilirsiniz. Kendiniz kurcalayarak resim içindeki gizli flagı bulabilirsiniz. Ek olarak bir resim üzerinde sonradan ekleme - çıkartma yapılıp yapılmadığını, resim ile ilgili herhangi bir oynama yapılıp yapılamadığını bu yöntem sayesinde öğrenebilirsiniz.
Bu konumda CTF' kerde çıkan resim analizi sorularında en çok kullanılan tekniklerini anlattım. Bir sonraki konuda görüşmek üzere. Esen kalın.