Görüntüleyici.com

Ana sayfa/Blog/Dosya formatları

Dosya Uzantısı ile Gerçek Dosya Türü: Farkı ve Nasıl Anlaşılır?

Bir dosyanın adındaki uzantı yalnızca bir etikettir; gerçek türü dosyanın ilk baytlarında yazar. Uzantıları görünür yapmayı, dosya imzalarını okumayı ve çift uzantı hilesini fark etmeyi anlatıyoruz.

Görüntüleyici.com Editör Ekibi5 dk okuma

Ekranında kod görünen masaüstü bilgisayarda çalışan kişi
Görsel: kaynak ve lisans bilgisi

Dosya uzantısı, dosya adının sonundaki birkaç harftir ve işletim sistemine "bunu hangi programla açayım" diye ipucu verir. Dosyanın gerçekte ne olduğunu ise içindeki baytlar belirler. İkisi çoğu zaman aynı şeyi söyler; söylemediği anda "dosya açılmıyor" sorunları ve bazen de güvenlik riskleri başlar.

Uzantıyı değiştirmek dosyayı dönüştürmez

Microsoft'un Windows dosya uzantılarıyla ilgili destek sayfası bunu tek cümleyle söyler: uzantıyı değiştirebilirsiniz, ama bu dosyayı başka bir biçime dönüştürmez; dosya adı dışında hiçbir şeyi değiştirmez. Apple da Mac yardım belgesinde yeniden adlandırırken uzantıya dokunmamanızı, aksi halde dosyayı oluşturan uygulamayla açamayabileceğinizi yazar ve biçim değiştirmek için dosyayı oluşturan uygulamanın kullanılmasını önerir.

Örnek: rapor.docx dosyasının adını rapor.pdf yaparsanız PDF okuyucu onu açmaya çalışır, içinde PDF yapısı bulamaz ve hata verir. Dosya bozulmamıştır; yalnızca yanlış kapıya gönderilmiştir. Adını geri .docx yapınca Word yine açar.

Windows'ta uzantıları görünür yapmak

Windows, bilinen dosya türlerinin uzantılarını varsayılan olarak gizler. Uzantıları görmeden tür sorunlarını teşhis etmek zordur. Microsoft'un tarif ettiği adımlar:

  • Windows 11: Dosya Gezgini'ni açın, Görünüm › Göster › Dosya adı uzantıları seçeneğini işaretleyin.
  • Windows 10: Dosya Gezgini'nde Görünüm sekmesindeki "Göster/gizle" grubunda Dosya adı uzantıları kutusunu işaretleyin.

Bu ayarı açık tutmanızı öneririz. Aşağıda anlatacağımız çift uzantı hilesine karşı en basit savunma budur.

Mac'te uzantıları görünür yapmak

Apple'ın yardım belgesine göre macOS da uzantıları genellikle gizler. Tüm dosyalar için: Finder'da Finder › Ayarlar › İleri Düzey bölümüne gidip "Tüm dosya adı uzantılarını göster" seçeneğini işaretleyin. Bu seçenek açıkken tek tek dosyalarda "Uzantıyı gizle" seçili olsa bile uzantılar görünür. Aynı panelde "Uzantıyı değiştirmeden önce uyar" seçeneği de vardır; açık bırakmak yanlışlıkla ad değiştirmeyi önler. Tek bir dosya için Dosya › Bilgi Al penceresindeki "Ad ve Uzantı" bölümü kullanılır. Menü adlarının Türkçe karşılıkları macOS sürümüne göre küçük farklar gösterebilir.

Dosyanın gerçek kimliği: ilk baytlar

Çoğu dosya biçimi, dosyanın en başına sabit bir imza yazar. Bu imzaya "magic bytes" (sihirli baytlar) ya da dosya imzası denir. Programlar uzantıya değil bu imzaya bakarak dosyayı tanıyabilir. En sık karşılaşılanlar:

İlk baytlar (onaltılık)Metin olarakNe olduğu
25 50 44 46%PDFPDF belgesi
50 4B 03 04PKZIP kabı: .zip, .docx, .xlsx, .pptx, .epub, .udf
89 50 4E 47.PNGPNG resmi
FF D8 FF(okunmaz)JPEG resmi
52 61 72 21 1A 07Rar!RAR arşivi
37 7A BC AF 27 1C7z7z arşivi
D0 CF 11 E0 A1 B1 1A E1(okunmaz)Compound File: eski .doc/.xls, Outlook .msg

Tablodaki "PK" satırı özellikle öğreticidir. ZIP biçiminin tanımına göre yerel dosya başlığı imzası 0x04034b50 değeridir; dosyaya küçük uçlu (little-endian) yazıldığı için ilk baytlar 50 4B 03 04, yani "PK" harfleriyle başlar. Word'ün DOCX biçimini tanımlayan ECMA-376 standardı, Office belgelerini Open Packaging Conventions adlı ZIP tabanlı bir paket yapısıyla saklar. UYAP'ın UDF dosyaları da ZIP kabı kullanır. Bu yüzden bu dosyaların hepsi aynı iki harfle başlar ve birbirinin yerine geçmiş gibi görünebilir.

Son satır da benzer bir karışıklığın kaynağıdır: eski Word .doc, eski Excel .xls ve Outlook .msg dosyaları aynı Compound File imzasını taşır. İmza "bu bir Compound File kabı" der, içindekinin Word mü e-posta mı olduğunu söylemez. Kesin tür için kabın içine bakmak gerekir.

İlk baytlara nasıl bakılır?

Programlama bilmeden de mümkün. Küçük bir dosyayı Not Defteri ile açıp ilk karakterlere bakabilirsiniz: %PDF ya da PK hemen görünür. İkili dosyalarda gerisi anlamsız karakterlerdir, bu normaldir. Dosyayı kesinlikle kaydetmeden kapatın; metin düzenleyici ikili dosyayı kaydederken bozabilir.

Daha rahat yol ana sayfadaki dosya görüntüleyiciyi kullanmaktır. Araç dosyayı tarayıcıda, sunucuya yüklemeden inceler ve tanıdığı türün etiketini gösterir. Nasıl karar verdiğini bilmek sonucu doğru yorumlamanızı sağlar:

  1. Uzantı tanınıyorsa araç önce uzantıya güvenir ve uygun görüntüleyiciyi açar. Metin türü uzantılı ama içeriği açıkça ikili olan dosyalarda imzaya bakar.
  2. Uzantı yoksa ya da tanınmıyorsa ilk baytlardaki imzayı kontrol eder.
  3. İmza da tanınmazsa içeriğin metin olup olmadığına bakar; değilse dosyanın ilk 64 KB'ını onaltılık (hex) görünümde gösterir.

Bundan çıkan pratik ipucu: adı yanlış olduğundan şüphelendiğiniz bir dosyanın kopyasını alın, kopyanın uzantısını silin (ya da .bin yapın) ve görüntüleyiciye bırakın. Araç uzantı yerine imzaya bakar; PDF ise PDF, ZIP ise arşiv görünümü açılır. Tanıyamazsa onaltılık görünümde ilk baytları kendiniz yukarıdaki tabloyla karşılaştırabilirsiniz.

ZIP imzalı bir dosyanın Word mü, UDF mi yoksa düz arşiv mi olduğunu anlamak için kopyasını ZIP görüntüleyici ile açın. İçinde word/document.xml varsa DOCX'tir. Kökte content.xml görüyorsanız UDF ya da OpenDocument (ODT) olabilir; ODT paketlerinde ayrıca mimetype adlı küçük bir dosya bulunur.

İmza da her şeyi söylemez

İlk baytlara bakmak uzantıya güvenmekten iyidir, ama iki sınırı var. Birincisi, imza yalnızca dosyanın başındaki birkaç baytı kontrol eder; dosyanın geri kalanının eksiksiz ya da sağlam olduğunu göstermez. Yarım inmiş bir PDF de %PDF ile başlar. İkincisi, imza dosyanın zararsız olduğunu kanıtlamaz: gerçek bir PDF ya da gerçek bir Word belgesi de kötü amaçlı içerik taşıyabilir.

Uzantısız gelen dosyalarda bu bilgi özellikle işe yarar. Bazı mesajlaşma uygulamalarından ya da kurumsal sistemlerden indirilen dosyalar adında uzantı olmadan, örneğin yalnızca belge ya da download adıyla kaydedilir. İlk baytlar PDF diyorsa dosyaya .pdf uzantısı eklemek bu kez doğru bir düzeltmedir; çünkü adı içeriğe uydurmuş olursunuz, tersini değil.

Güvenlik: çift uzantı hilesi

Uzantıların gizli olması saldırganların işine yarar. MITRE ATT&CK bilgi tabanı bu tekniği "Double File Extension" (çift dosya uzantısı) adıyla tanımlar: Dosya.txt.exe gibi bir ad, bazı görünümlerde yalnızca Dosya.txt olarak görünür. MITRE bunun Windows'un bilinen uzantıları varsayılan olarak gizlemesinden yararlandığını ve genellikle e-posta ekleriyle dağıtıldığını belirtir; önerdiği önlemlerden biri de uzantı gizleme ayarını kapatmaktır.

Somut örnek: e-postayla gelen fatura_eylul.pdf.exe dosyası uzantılar gizliyken fatura_eylul.pdf diye görünür, üstelik simgesi bir PDF simgesine benzetilmiş olabilir. Çift tıkladığınızda PDF okuyucu değil, program çalışır. Aynı risk .scr, .lnk, .js, .vbs, .hta gibi uzantılarda da vardır.

Beklemediğiniz bir ekte iki uzantı görüyorsanız ya da "belge" diye gelen dosyanın uzantısı .exe, .scr, .js gibi çalıştırılabilir bir türse açmayın. Göndereni başka bir kanaldan arayıp teyit edin. Sitedeki araçlar dosyayı yalnızca gösterir; bir dosyanın zararlı olup olmadığına karar vermez ve antivirüs yazılımının yerini tutmaz.

"Açılmıyor" sorunlarında sık görülen tür uyuşmazlıkları

  • Web sayfası kaydedilmiş: İndirme bağlantısı süresi dolmuş bir oturuma gitmiş, .pdf adıyla aslında HTML hata sayfası inmiştir. Dosya birkaç KB'tır ve metin düzenleyicide <html ile başlar.
  • HEIC fotoğraf .jpg adıyla: Bazı aktarım yöntemleri adı değiştirir ama içeriği değiştirmez. Çözüm için HEIC fotoğraf Windows'ta açılmıyor yazısına bakın.
  • UDF dosyası .zip olarak inmiş: İçerik doğru, uzantı yanlış. Ayrıntısı WhatsApp UDF ZIP rehberinde.
  • Eski .doc dosyası .docx adıyla: İmza D0 CF 11 E0 ile başlıyorsa dosya DOCX değildir. Word içeriğe bakıp yine açabilir, ama yalnızca DOCX okuyan araçlar (sitedeki Word görüntüleyici dahil) açamaz.
  • Açılmayan ek winmail.dat: Bu bir tür uyuşmazlığı değil, Outlook paketlemesidir; winmail.dat yazısında anlattık.

Bu yazıdaki araçlar

Dosyanız sunucuya yüklenmeden, tarayıcınızda çalışır:

Kaynaklar

  1. Microsoft Destek — Common file name extensions in Windows
  2. Apple Destek — Show or hide filename extensions on Mac
  3. MITRE ATT&CK — Masquerading: Double File Extension (T1036.007)
  4. PKWARE — .ZIP File Format Specification (APPNOTE.TXT)
  5. Ecma International — ECMA-376 Office Open XML File Formats

Yazıların nasıl hazırlandığını metodoloji sayfasında anlatıyoruz.

Sık sorulan sorular

Uzantıyı değiştirerek bir dosyayı PDF'e çevirebilir miyim?

Hayır. Microsoft'a göre uzantıyı değiştirmek dosyanın biçimini değiştirmez, yalnızca adını değiştirir. Dönüştürme için dosyayı oluşturan uygulamayı veya bir dönüştürücü kullanmak gerekir.

DOCX ve ZIP dosyaları neden aynı imzayla başlıyor?

DOCX, ECMA-376 standardındaki Open Packaging Conventions yapısıyla ZIP kabı içinde saklanır. Bu yüzden ilk baytları ZIP imzası olan PK ile başlar. XLSX, PPTX, EPUB ve UDF için de aynısı geçerlidir.

Windows 11'de dosya uzantılarını nasıl gösteririm?

Dosya Gezgini'nde Görünüm › Göster › Dosya adı uzantıları seçeneğini işaretleyin. Windows 10'da aynı seçenek Görünüm sekmesindeki Göster/gizle grubundadır.

Çift uzantılı dosya neden tehlikeli?

Uzantılar gizliyken fatura.pdf.exe gibi bir dosya fatura.pdf diye görünür. Çift tıklandığında belge değil program çalışır. MITRE ATT&CK bu tekniği Double File Extension adıyla tanımlar.

Görüntüleyici bir dosyanın zararlı olup olmadığını söyler mi?

Hayır. Görüntüleyici dosyayı çalıştırmadan gösterir ve türünü tahmin eder, ancak zararlı içerik taraması yapmaz. Şüpheli dosyalar için güvenlik yazılımı kullanın ve göndereni teyit edin.

İlgili yazılar