Hah tamam, simdi daha acik oluyor…
Bu sorulari soruyorum cunku guvenlik analizi yaparken bilinmesi gereken seyler. Mesela kullaniciyi kendisinden, veya telefonu ele gecirmis kotu niyetli bir aktorden koruyacak miyiz. Telefonda sakli her bite potansiyel erisimi olan Google’dan veya telefon operatorlerinden, bunlari kontrol eden devletlerden koruyacak miyiz…
Oncelikle: Android hakkinda cok sey bilmiyorum. Tek bildigim, ozellikle son versiyonlarda, sandboxing’in guclendirildigi. Yani kotu niyetli bir programin bir baska programin dosyalarina erismesi mumkun, veya en azindan kolay degil. Incelenmesi gerek.
Hatta su aralar bir suru program guvenli verileri isletim sistemi destekli biyometrik dogrulama arkasinda tutuyor. Muhtemelen oyle bir sey cok kolay ve cok yeterli olacaktir ve bosuna tartisiyoruz.
Ama PC uygulamasi yapan, ve guvenlik ve sifreleme islemleriyle ilgilenen bir suru insan var, o yuzden Android’e ozgun bu guzellikleri bir kenara koyalim:
Ben de bu tarz insanlardan biriyim. Garanti parolam, butun guvenlik tavsiyelerine meydan okuyacak sekilde, #####1 → #####2 → #####8 → #####7 → #####5 ⮌ olarak degisiyor. Fakat Kongregate parolam Fx8PvExZSrm7lCZK
.
Bu noktada “parola kasasi” (password vault) uygulamalarini incelemek lazim (orn. KeePassXC) Surada baya detayli bilgi var. Daha basit olarak bir KDF (mesela PBKDF2) ve urettigi key ile encryption (AES256) kullanilabilir. Tabi KDF’e girdi olacak gizli bir sey lazim.
Anahtari kodda istediginiz kadar tutun, aciga cikmasi engellenemeyecektir. Buna uygulamali ornek gormek isteyen veya algoritmasini test etmek isteyen varsa bana gonderebilir; crackme cozmeyeli baya oldu, ozluyorum.
Ama zaten amac bilgiye erismekse anahtari ogrenmeye gerek yok; calismakta olan programin hafizasi okunup bilgiye erisilebilir. Hatta bu noktada rastgele bir anahtar uretilip bir dosyaya yazilmasi daha guvenli olabilir: En azindan baskasinin veritabani dosyasina sahip biri onu acamaz.
Sanirim en mantiklisi KeePass tarzinda master password ile calisan bir db ("vt"yi “virtual terminal” olarak okuyorum). Master password’un unutulmasina karsi db’nin baska sekilde sifrelenmis kopyalari kullanilabilir. Ilk olarak aklima private key’i baskasinda olan bir asimetrik sifreleme sistemi geldi ama guvenlik uzmani degilim, oncelikle mevcut yontemleri arastirmak gerekeir.