Android'de belirli bir dosyayı kurtarmak için nasıl silinir?


9

Deneyimlerime göre, bir bilgisayar dosya sisteminden silinen bir dosya, özel bir programın üzerine yazılmadığı sürece (genellikle "parçalama" olarak adlandırılır) kurtarılabilir.

Android tabanlı bir HTC akıllı telefon farklı mıdır? Belirli bir dosya bu akıllı telefondan nasıl silinebilir, böylece dosya kurtarılamaz mı?


Yalnızca telefon tarafından barındırılan seçenekleri mi arıyorsunuz, yoksa telefon bir disk sürücüsü olarak bağlandığında dosyanın silinmesine ilişkin önerileri kabul eder misiniz?
Bernhard Hofmann

@Bernhard Hofmann: Eğer bir sürücü olarak bağlanmak böyle bir eylemi kolaylaştırırsa - hiç yoktan çok daha iyi.
Sharptooth

Yanıtlar:


8

Maalesef bu o kadar kolay değil.

Dosyaların güvenli bir şekilde silinmesi için API olmadığından , depolama cihazına blok düzeyinde erişim sağlamak için "güvenli silme uygulaması" için kök gerekir . Silinen dosya bloklarına Sadece erişim sonunda bir uygulama rastgele verilerle dosyanın kalanlar üzerine sağlar. Sonunda, flash depolama cihazı aşınma seviyelendirmesi yapabileceğinden . Bu durumda, # 42 bloğu her zaman aynı fiziksel blok olmaz, bu da sistem çağrılarını etkisiz hale getirir.

Bence bu yüzden henüz android için güvenli bir silme çözümü yok. En azından XDA'da bir tane bulamadım .


Bir program varolan bir dosyayı açıp çöp kutusunun üzerine yazabilir, dosyayı kapatıp silebilir mi?
Sharptooth

Sen olabilir o programlamak. Ancak işe yaramaz olacaktır, çünkü üzerine yazma işleminin mevcut verilerle aynı fiziksel bloklarda gerçekleşeceği garanti edilmez.
akış

1
Dosya sisteminin veya başka bir varlığın yeni yazılı verileri şeffaf bir şekilde yeni bir yere taşıyacağı ve daha önce işgal edilen yeri boş olarak işaretleyeceği anlamına mı geliyorsunuz?
Sharptooth

1
Evet, çeşitli nedenlerle (parçalanma, vb.) Yeni veri yazmak istediği işletim sisteminin seçimi ve neredeyse her modern işletim sisteminin bunu yapması. Olmasa bile, hala aşınma dengelemesinin gerçekleşebileceği katman vardır.
Akış

3

Basit bir çözüm, dosyayı silmek ve daha sonra silinen dosyanın sahip olduğu alanın üzerine yazılacağından emin olmak için belleği diğer verilerle doldurmak olacaktır.

Bellek dolduktan sonra, dolgu için kullanılan dosyalar kaldırılabilir ve alan tekrar serbest bırakılabilir - yalnızca kurtarma denemeleri orijinal silinmiş dosyayı değil, yalnızca dolgu dosyasını bulur.

Bunun sadece basit ev kurtarma araçlarıyla mücadele etmek için tasarlandığını unutmayın testdisk. Teoride, en azından parçaları, hatta orijinal dosyanın tamamını kurtarmanın hala yolları olabilir - ancak bazı gelişmiş ileri teknoloji analiz yöntemlerine ihtiyaç duyacaklardır. Böyle bir yöntemin bir örneği, flaş aşınma seviyelendirmesi nedeniyle bazı verilerin korunup korunmadığını analiz etmektir . Ancak bu kolayca yapılmaz ve AFAIK, bellek kartını bir tür özel okuyucu cihazına bağlamayı gerektirir ve hatta bellek cihazını ayırmayı bile gerektirebilir.


Çoğu Flash ortamında aşınma seviyelendirme, dosyanın üzerine yazmanın bellekte aynı fiziksel konuma yazacağını her zaman garanti etmez . en.wikipedia.org/wiki/Wear_leveling
Chahk

@Chahk, Evet, katılıyorum, bu yüzden "sofistike yöntemler" feragatnamesini dahil ettim. Önemli olan, normal bir şekilde silinen bir dosyayı ev araçlarını kullanarak kurtarmak önemlidir testdisk. Flah aşınma seviyesinden dolayı bağışlanan içeriği kurtarmak için kullanımı kolay bazı ev aletleri varsa, bunları hiç duymadım. Bu veri taşkınının mutlak bir yöntem olacağını söylemediğimi , ancak muhtemelen sorucunun ihtiyaçları için yeterince güçlü bir
Ilari Kajaste

Cevabımı geliştirmek için sorumluluk reddine daha fazla ayrıntı ekledim ve şimdi olası bir saldırı vektörünün bir örneği olarak flaş aşınma seviyelendirmesini analiz etmekten bahsediyorum.
Ilari Kajaste

1

Aygıtınızı bir disk sürücüsü olarak bağlarsanız, dosyaları güvenli bir şekilde silmek için Windows'ta sdelete gibi bir yardımcı program kullanabilirsiniz. http://technet.microsoft.com/en-us/sysinternals/bb897443

Web sayfasından: "SDelete, SDelete ile silindikten sonra dosya verilerinizin sonsuza dek gittiğine dair güven vermek için Savunma Bakanlığı'nın standart DOD 5220.22-M temizleme ve sanitasyonunu uygular."


Bu cevapta belirtilen aşınma seviyelendirmesine karşı yardımcı olacak mı android.stackexchange.com/questions/14739/… ?
sharptooth

Dürüst olmak gerekirse, hiçbir fikrim yok. Aşınma seviyelendirme uygulayan herhangi bir Android cihaz olup olmadığını bile bilmiyorum. Orijinal sektörlerin üzerine yazdığı için, aşınma seviyesinden etkilenmesini beklerdim.
Bernhard Hofmann

Aşınma tesviye varsa bu program etkilenir - sihir yok, sadece yazmak için dosyayı açar (diğer herhangi bir program gibi) ve orada çöp yazar, sonra dosyayı kapatır. Aşınma dengelemesi varsa, program bunu bilmiyor - normal işletim sistemi ilkellerini kullanıyor.
sharptooth

Temiz seçeneği birkaç kez kullanmanın aşınma seviyesine karşı koruma sağlayıp sağlamadığını merak ediyorum. Kontrolümüzün ötesinde olduğundan, boş alanı birkaç kez temizlemek serbest kalan sektörleri "bulmalı" ve silmeli.
Bernhard Hofmann

Belki, ama sanırım çok zaman alacaktı.
sharptooth

1

Dosya bir sdcard açıksa o zaman dizüstü kart okuyucu ve kullanıma Sdcard'ı eklemek olabilir srm, sdeleteya da her türlü genellikle güvenli dosya silme için masaüstünüzde kullanın.

Dosya dahili bellekteyse, muhtemelen herhangi bir izini (ve telefonda her şeyi) tamamen silmenin tek güvenilir yolu Ayarlar> Güvenlik'te tam telefon şifrelemeyi etkinleştirmek olacaktır, her şey şifrelenene kadar bekleyin (yaklaşık bir saat) ) seçin ve ardından fabrika ayarlarına sıfırlayın.

Oyun mağazasında DoD seviyesi algoritmalarıyla boş alanı silebileceği iddia edilen uygulamalar da var, ancak ne kadar iyi olduklarını veya nasıl çalıştıklarını bilmiyorum.

Ve btw, flash belleğin sınırlı sayıda okuma-yazma döngüsüne sahip olduğunu unutmayın, bu nedenle bu uygulamaları çok sık çalıştırmak bellek yongasının ömrünü azaltabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.