Dev Arksoft
  • Arksoft Developer Network
  • Ağustos 2023
    • Angularda DOM (Document Object Model) Manipülasyonu
    • Angular’da Routing
    • Representational State Transfer (REST)
    • .Net Framework için Local NugetPackage
    • Agile Nedir?
  • Temmuz 2023
    • Angular HTTP Interceptors
    • Angularda Promise ve Observable
    • Mongo DB Kullanımı
  • Haziran 2023
    • Angular Validators
  • Mayıs 2023
    • Docker Uzerine Redis Kurulumu ve .Net Core ile Redise Erişim
  • Nisan 2023
    • Angular 14 Componentler Arası İletişim
  • Şubat 2023
    • JMeter ile Performans Testi
  • Ocak 2023
    • Windows Giriş Ekranında C# Form Açmak
  • Temmuz 2022
    • Regular Expressions
  • Haziran 2022
    • RSA Şifreleme
    • AutoMapper Kullanımı
    • Permutasyon ve Kombinasyon
    • Generic Repository Pattern
    • Levenshtein Algoritması
    • HTML 5’e Giriş
    • Graph Yapılar
  • Mayıs 2022
    • IQueryable IEnumerable Farklar
    • Sıralama Algoritmaları
  • Şubat 2022
    • ADFS Custom 2FA Integration
    • Reacta Giriş ve Reactın Temel Prensipleri
    • TypeScript Kullanımı
    • Serialization Kullanımı
    • Log4Net Kullanımı
    • Collections Yapıları
    • Windows Service Projesini Debug Etme ve Harici Exe Çalıştırma
    • Culture ve DateTime Kullanımı
    • Reflection Kullanımı
    • Steganografi Teknikleri
    • ElasticSearch Kullanımı
    • SWAGGER ve JWT TOKEN BASED WEBAPI Kullanımı
    • LINQ Komutları Kullanımı
    • Image Processing İşlemleri Kullanımı
Powered by GitBook
On this page
  1. Şubat 2022

Steganografi Teknikleri

Husamettin Elalmis

Merhaba arkadaşlar, bu yazıda sizlere Steganografi tekniklerinden bahsedeceğim,

Steganografi (Steganography) nedir?

  • Bir bilgiyi, açık veya gizli olarak saklamak anlamına gelir.

  • Bir verinin, bir nesne içerisinde gizlenerek veya açık olarak saklanmasıdır.

  • Ses, sayısal resim, video görüntüleri üzerinde veri saklanabilir.

  • Bu veriler metin dosyası olabileceği gibi, herhangi bir media dosyası da olabilir.

Açık veri saklamak? Gizli veri saklamak nedir?

  • Açık veri saklamak, masum görünen bir bilginin içerisinde gizli veri barındırılmasıdır

  • Gizli veri saklamak, saklanan veri gözle görünmez, ek işleme tabi tutulur.

Nerelerde Kullanılır? Önemi nedir?

  • Bilgi güvenliğinin en üst düzeyde olan yerlerde kullanılır

  • Kriptoloji ile yakından ilgilidir

  • Digital bilgilerin şifrelenerek gizlenmesinde ve bilgi sızdırılması işlemlerinde kullanılır

  • Stenografinin belirli bir algoritması yoktur, yazanın veya geliştirenin hayal gücüne kalmıştır, tespit edilmesi imkansıza yakındır denilebilir.

  • Stenografik bir bilginin, mevcut olup olmadığının tespit edilemeyen veya şüpheli görülen durumlarda ilgili digital dosya bilinçli olarak hasara uğratılır (modifie edilir)

Örnek 1: Metin İçerisinde Bilgi Gizleme – Masum Veri (Gizli Veri Saklamak)

"Çoban Kavurma Tarifinin Püf Noktası

Etinizi pişirmeden önce mutlaka dinlenmiş ve fazla kanının çıkmış olduğundan emin olun.İyi bir kekik lezzette fark yaratacaktır. Fakat kekiği en son ekleyerek ısı karşısında yanmasını önleyebilirsiniz.Ne kadar tabanı geniş bir tencere/ tava kullanırsanız o kadar doğru pişirmiş olursunuz. Dilerseniz son anda minik bir tereyağı ilavesi yaparak lezzetine lezzet katabilirsiniz.

Size gelen misafir şaşıracak!"

  • Bu metin, masum bir yemek tarifini anlatmaktadır.

  • Dikkatsiz bir okuyucu gözden kaçırabilir.

  • Bu mesaj karşı tarafa ulaştığında, gizli veri aktarılmış olur.

Soru 1: Nedir Bu Gizli Veri?

  • Bu mesaj içerisinde "ARKSOFT" şifre olarak saklanmış ve karşı tarafa gönderilmiştir.

  • Metin içerisinde tek boşluk ve çift boşluk kullanılmıştır. Bu mesaj, adminin gözünden kaçmıştır (masum rolü)

  • Tek boşluklara 0, çift boşluklara 1 değeri verirsek "01000001010100100100101101010011010011110100011001010100" ikilik sayısını elde ederiz

  • Bu ikilik sayının 10luk sistemde ASCII karşılığı ARKSOFT'dur.

Örnek 2: Metin İçerisinde Bilgi Gizleme – Masum Veri (Gizli Veri Saklamak)

"Çoban Kavurma Tarifi Nasıl Yapılır?

1. Kuzu etlerinin çok ufak olmayan parçalar halinde doğranmış olması gerekiyor.

2. Sıvıyağı ve tereyağı tavada kızdırdıktan sonra etleri içerisine atın ve orta ateşte 10 dakika kadar kavurun.

3. Kabuklarını soyduğunuz arpacık soğanları da ekleyip, 5 dakika kadar soteleyin.

4. Sırasıyla, incecik kıydığınız sarımsakları, iri iri doğradığınız biberleri ve küp küp kestiğiniz domatesleri ekleyip 15 dakika daha soteleyin.

5. Et suyunu ve kekik dışındaki baharatları ekleyip, altını kısıp 20 dakika daha pişirin.

6. Ocaktan almadan hemen önce kekiğini de ekleyin."

  • Bu metin, masum bir kavurma tarifini anlatmaktadır.

  • Burada sonsuz sayıda bilgi saklanıyor olabilir.

Soru 2: Nedir Bu Gizli Veri?

  • Bu mesaj içerisinde PIN şifresi "1231" saklanmıştır.

  • Her satır kendi içerisinde kendi algoritmasına göre değerlendirilmiştir

    • 1.maddede süre geçmiyor, 1 eklenir

    • 2.maddede süre geçiyor, 10 mod 2 = 0 eklenir

    • 3.maddede süre geçiyor, 5 mod 3 = 2 eklenir

    • 4.maddede süre geçiyor, 15 mod 4 = 3 eklenir

    • 5.maddede süre geçiyor, 20 mod 5 = 0 eklenir

    • 6.maddede süre geçmiyor, 1 eklenir

    • Bulgular yanyana yazılır 102301

    • Bulgu sonucundaki 0 olanlar atılır, geriye PIN kalır.

Örnek 3: Metin İçerisinde Bilgi Gizleme – Gizli Veri (Açık Veri Saklamak)

"1289162316674325643644738695093" bu bilgi nedir?

  • Herşey olabilir

  • Kredi kart numarasının şifrelenmiş hali olabilir, PI sayısının bilmem kaçıncı basamağından sonraki haneler olabilir, herşey olabilir

Soru 3: Nedir Bu Açık Veri?

  • Bu mesajda TC kimlik numarası saklanmıştır

  • İlk rakamdan başlayarak 11 haneli sayıyı okuyabiliriz

    • 18121642634'dür.

Örnek 4: Metin İçerisinde Bilgi Gizleme – Açık Veri (Açık Veri Saklamak)

"Çocukların 'Annenin soy Adını' taşıdığı evlenen erkeklerin eşlerinin evine taşındığı dünyanın en büyük anaerkil toplumu olan Minangkabaular hangi ülkede yaşar?

a. Endonezya

b. Brezilya

c. Hindistan

d. Nijerya"

  • Kim 500 milyar ister yarışmasından örnek bir soru.

  • Bu sorunun cevabını Program Sunucunun o an bilmesini isteseydim ne yapardım?

Soru 4: Nedir Bu Açık Veri?

  • Sorudaki tüm "a" harflerini say (büyük küçük farketmez)

    • A harflerinin sayısı 16 dır.

  • Çıkan sayının Mod 4'ünü al. Cevap odur.

    • 16 mod 4 = 0'dır. Cevap A seçeneğidir.

  • Tosun Paşa resmi masum görünümdedir, orjinal halindedir.

  • Resmin içine yazılım kodu saklanmıştır, her iki resmin birbirinden göz ile ayırt edilmesi imkansızdır.

  • Resmin içerisinde SessionLimit'e ait bir kodun tamamı saklanmıştır (ActionController.cs)

  • Algoritma, açık veri saklanacak şekilde kurgulanmıştır.

    • Saklanacak olan kodun her bir karakteri tek tek ikilik sayı sistemine çevrilmiştir

    • Bu sayı sistemindeki bitler, sırasıyla resimde her bir pixel değerine yansıtılmıştır

      • RGB değerleri ile oynanmıştır, gözün bunu tespit etmesi olanaksızdır.

    • Açık veri olarak saklanmasının sebebi, lineer olarak sırasıyla her bir pixelin R,G,B değerlerinin son bitlerine ikilik sayı sisteminden okunan bit değeri basılmıştır. Bu bir açık veridir. Eğer gizli veri olarak basılmasını isteseydik, saklanacak olan kodu önceden şifrelerdik ve şifrelenmiş halde iken bu algoritmayı çalıştırırdık.

  • Bunun tespit edilmesi imkansızdır. Neyin saklandığını neyin saklanmadığını bilemeyiz. Sebebi, bit değerlerinin sadece 1 ve 0'lardan oluşmasıdır. Neye göre 1 basıldığını, neye göre 0 basıldığını algoritmayı yazan haricinde kimse bilmez. Modunu mu almış oraya basmış, random sırayla mı basmış, nasıl basmış bilemeyiz.

Sonuç

  • Steganografy, bilgi güvenliği kapsamında çok ciddi ve önemli bir konudur.

  • Exchange sunucusu üzerinde araya girerek, özellikle resimlerin olası içerisinde bilgi saklanmasına karşın clear(temizleme) işlemleri katmanı oluşturularak dışarıya bilgi sızdırılmasına ilişkin ürün geliştirilebilir

Saygılarımla,

Hüsamettin ELALMIŞ – 06.07.2021

husamettin.elalmis@arksoft.com.tr

PreviousReflection KullanımıNextElasticSearch Kullanımı

Last updated 2 years ago

Örnek 5: Resim İçerisinde Bilgi Gizleme – Gizli Veri (Açık Veri Saklamak)

Soru 5: Nedir Bu Açık Veri?