Python Forensics - Mobil Adli Tıp

Sabit diskler gibi standart bilgisayar donanımının adli araştırması ve analizi, kararlı bir disipline dönüşmüştür ve standart olmayan donanım veya geçici kanıtları analiz etme tekniklerinin yardımıyla takip edilmektedir.

Akıllı telefonlar dijital araştırmalarda giderek daha fazla kullanılsa da, yine de standart dışı kabul ediliyor.

Adli analiz

Adli soruşturmalar, akıllı telefondan gelen aramalar veya aranan numaralar gibi verileri arar. Metin mesajları, fotoğraflar veya diğer suçlayıcı kanıtlar içerebilir. Çoğu akıllı telefon, parolalar veya alfasayısal karakterler kullanan ekran kilitleme özelliklerine sahiptir.

Burada, Python'un bir akıllı telefondan veri almak için ekran kilitleme şifresini kırmaya nasıl yardımcı olabileceğini göstermek için bir örnek alacağız.

Manuel Muayene

Android, PIN numarası veya alfasayısal şifre ile şifre kilidini destekler. Her iki parolanın sınırı 4 ila 16 basamak veya karakter arasında olmalıdır. Bir akıllı telefonun şifresi Android sisteminde adı verilen özel bir dosyada saklanır.password.key içinde /data/system.

Android, şifrenin tuzlu bir SHA1 hashsum'unu ve MD5 hashsum'unu depolar. Bu şifreler aşağıdaki kodla işlenebilir.

public byte[] passwordToHash(String password) {

   if (password == null) { 
      return null; 
   }

   String algo = null;
   byte[] hashed = null;

   try { 
      byte[] saltedPassword = (password + getSalt()).getBytes(); 
      byte[] sha1 = MessageDigest.getInstance(algo = "SHA-1").digest(saltedPassword);
      byte[] md5 = MessageDigest.getInstance(algo = "MD5").digest(saltedPassword); 
      hashed = (toHex(sha1) + toHex(md5)).getBytes(); 
   } catch (NoSuchAlgorithmException e) { 
      Log.w(TAG, "Failed to encode string because of missing algorithm: " + algo); 
   }
   
   return hashed;
}

Şifrenin yardımıyla şifreyi kırmak mümkün değil dictionary attack karma parola bir salt file. Busalt64 bitlik rasgele bir tamsayının onaltılı gösteriminden oluşan bir dizedir. Erişmek kolaydırsalt kullanarak Rooted Smartphone veya JTAG Adapter.

Köklü Akıllı Telefon

Dosyanın dökümü /data/system/password.key SQLite veritabanında şu altında saklanır: lockscreen.password_saltanahtar. Altındasettings.db, parola saklanır ve değer aşağıdaki ekran görüntüsünde açıkça görülebilir.

JTAG Adaptörü

JTAG (Ortak Test Eylem Grubu) adaptörü olarak bilinen özel bir donanım, salt. Benzer şekilde, birRiff-Box veya a JIG-Adapter aynı işlevsellik için de kullanılabilir.

Riff kutusundan elde edilen bilgileri kullanarak, şifrelenmiş verilerin konumunu, yani salt. Kurallar aşağıdadır -

  • İlişkili "lockscreen.password_salt" dizesini arayın.

  • Bayt, tuzun gerçek genişliğini temsil eder; length.

  • Bu, akıllı telefonların kayıtlı şifresini / pinini almak için aslında aranan uzunluktur.

Bu kurallar dizisi, uygun tuz verilerini elde etmeye yardımcı olur.