Sabit sürücüyü nasıl güvenle silebilirim?


209

Şu anda depolanan şifreleri ve banka bilgileri içeren eski bir Ubuntu kurulumu içeren bir USB harici sabit disk satmayı planlıyorum.

Sürücüyü satmadan önce nasıl güvenle silebilirim?


2
Ayrıca, çoklu işletim sistemlerini kapsayan kapsamlı bir açıklama için bu EFF sayfasına bakınız .
Tom Brossman

@Lekensteyn 'Anahtar yerlerini kaldır'? AU’yu aradım ve bu kısmen ilgili soru- cevaptan başka bir şey almadım . Bunu yeni bir soru olarak mı sormalıyım yoksa burada mı ele alınıyor?
Tom Brossman

Güvenli bir parolanız varsa, sürücünüzü kaybettiğinizde dünya kaybolmaz. Ancak, anahtar alanlarını code.google.com/p/cryptsetup/wiki/… adresinin 5.3 bölümünde açıklandığı şekilde temizlemeniz önerilir . Devam edin ve şifreli diskleri silme hakkında sorun.
Lekensteyn

Yanıtlar:


225

Bir depolama cihazını güvenli bir şekilde silme

shredBir dosyadaki veya rastgele bitli bir cihazdaki verilerin üzerine yazan ve kurtarmayı neredeyse imkansız kılan bir komut satırı yardımcı programı var .

Her şeyden önce, cihazın adını tanımlamanız gerekir.

Gibi bu bir şey olabilir /dev/sdbveya /dev/hdb(ama değil mi /dev/sdb1, bu bir bölme var). Sen kullanabilirsiniz sudo fdisk -lbağlı tüm depolama aygıtlarını listelemek için ve orada harici sabit sürücü bulunamadı.

NB Doğru cihazın doğru olduğundan emin olun, yanlış cihazın seçimi silinecektir.

Varsa, o aygıtta şu anda monte edilmiş olan tüm bölümleri çıkarın. Ardından /dev/sdX, cihazınızın ismiyle değiştirerek aşağıdakileri çalıştırın :

sudo shred -v /dev/sdX

Bu, cihazdaki tüm blokların üzerine üç kez rasgele veri -vyazacak , bayrak ayrıntılı olarak kullanılacak ve geçerli ilerlemeyi yazdıracaktır.

Büyük kapasiteli cihazlarda zaman kazanmak -nNiçin, yalnızca bu N kere yapma seçeneğini ekleyebilirsiniz . Harici sabit sürücünüzün boyutuna bağlı olarak bu işlem biraz zaman alabilir (4 GB flash sürücüm için yirmi dakika kadar sürebilir).

Son yineleme işleminden sonra tüm bitleri de sıfıra ayarlayarak seçenek ekleyerek -zbunu yapmayı tercih ederim.

sudo shred -v -n1 -z /dev/sdX

Bundan sonra, aygıtı yeniden bölümlendirmeniz gerekir. En kolay yol GParted'i kurmak ve kullanmaktır:

sudo apt-get install gparted
gksu gparted

Cihazınızı sağ üst köşedeki listeden seçin. Ardından Device -> Create partition tablecihazda bir bölüm tablosu oluşturmayı seçin .

Ardından fat32, dosya sistemi olarak seçerek, cihazdaki tüm ayrılmamış alanı kullanan tek bir bölüm ekleyin . Araç çubuğundaki Uygula düğmesine (yeşil onay işareti) tıklayarak değişiklikleri uygulayın .

İpuçları

  • Manpage'i shredçevrimiçi olarak veya man shredterminale yazarak okuyun .
  • Diskinizin bazı kısımlarının silinmeyeceğine dikkat edin - bir diski uygun şekilde temizlemek için, sürücü yazılımı (hdparm gibi) "SECURE ERASE" komutunu kullanın.

31
Buradaki en iyi uygulama: tüm sabit sürücülerinizin bağlantısını kesin, harici sürücüyü takın ve ardından önemli olan herhangi bir şeyi etiketleme olasılığını önlemek için canlı CD'den yukarıdakileri yapın.
Nick Pascucci,

30
Bu cevabın, sürücünün kendisini silmesini istemek için SECURE ERASE yöntemi ile kullanımdan kaldırıldığını unutmayın. Bu, tüm olası verilere dikkat etmeli ve sisteminize gereksiz yere vergi vermeyecektir. hdparmYardımcı programı kullanarak sürücünün kendini sildiği güvenli bir silme işlemi gerçekleştirebilirsiniz . Bu yöntem, bozuk kesimler de dahil olmak üzere tüm sürücüyü silmeye çalışır. Üstelik normal yolun üzerine yazmaktan çok daha hızlı. Aynı zamanda shredson derece kötü bir fikir olan SSD sürücüler için önerilen yöntemlerdir .
Maarten Bodewes

6
@owlstead: Ayrıntılı olabilir misiniz? GÜVENLİ ERASE nedir ve nasıl kullanılır? Daha iyi bir cevabınız varsa, ayrı bir cevap verirseniz takdir edilir.
Mads Skjern

17
ATA Secure Erase komutunu kullanma hakkında yorum yanıltıcıdır. SE kullanımı ile ilgili ciddi sorunlar var (satıcılardan gelen tutarlı destek eksikliği ve süreçte şeffaflık eksikliği). İlgili: security.stackexchange.com/questions/62253
MV.

2
@Fiksdal Bilmiyorum, bu cevabı yazdığımdan bu yana beş yıl geçti ve bu şekilde ifade etme motivasyonlarımı hatırlamıyorum. Bu, "bugün pratik olarak imkansız ama gelecekte yeterince teknolojik gelişme ile mümkün olan mümkün" çizgileri boyunca demek istediğimi düşünüyorum.
Frxstrem

94

Sadece 'sıfır' ddaracını kullanarak :

  1. Disk Yardımcı Programını kullanarak başlatın. System > Administration > Disk Utility
  2. Diski sol panelde bulun, seçin ve sağdaki aygıt yolunu bulun (örn. /dev/sdX)
  3. Bir gnome-terminal aşağıdaki komutu (Uygulamalar> Aksesuarlar> Terminal) çalıştırın:

    sudo dd if=/dev/zero of=/dev/sdX bs=1M

    Eğer doğru cihaz yolunu kullanmak ve emin olun değil sadece bu çizgiyi kopya!

Bu, tüm diskin üzerine sıfır yazacak ve gigabayt rasgele veri üretmekten çok daha hızlı olacaktır. Diğer tüm araçlar gibi, bu herhangi bir nedenden dolayı haritalanan bloklarla ilgilenmeyecek (yazım hataları, rezerve edilmiş vb.), Ancak alıcınızın bu bloklardan bir şeyleri kurtarmak için gerekli araçlara ve bilgiye sahip olması pek olası değildir.

Not: Sizden önce Bruce Schneier taraftarları bana oy verdi: Sıfırların üzerine yazılmış eski olmayan dönme sabit disklerinden veri kurtarmanın mümkün olduğunu kanıtlamak istiyorum. Başka türlü yorum yapmayı bile düşünme! : P


6
Bruce Schneier için +1 (ve gerçekten mükemmel bir araç olan DD)
n3rd

6
Bunun en güçlü "kanıt" olduğunu söylememek ama Gutmann yöntemi bir nedenden dolayı var. Bildiğim kadarıyla, modern sabit diskler, sıfır tarafından yazılmışsa, verilerinin kurtarılmasına hala teorik olarak hassastırlar. Hala geçerli olsun ya da olmasın, umarım / dev / random ya da bu amaç için belirli bir algoritma kullanarak üzerine yazarak incinmeyeceğini kabul edersiniz.
Cerin

13
Hayır, acı vermeyecek, çok fazla zaman alacaktır (özellikle / dev / random: P kullanıyorsanız). Bu konuda okuduğum son yazı (üzgünüm, detay yok, sanırım 2008'den geldiğini düşünüyorum) - gerçek donanımla yapılan testlerden elde edilen verilere dayanarak - tek bir bit kurtarma şansının <% 50 olduğu anlamına gelir → Bir bozuk para atmak kullanarak her bit "kurtarma" hata oranı. Bu yüzden, sıfırlamanın yeterli olmadığına dair bir kanıt olmadığı sürece (şu anda "belki" değil, "friggin" yolu yok), bu benim için tercih edilen bir yöntem.
htorque

12
Benim anlayış @Cerin orada olmasıdır asla bu paranoyak veri kurtarma fantezileri dahi mümkün olduğunu bir kanıt olmuştur. İşaret edildiği gibi "Eleştiri" Bağlı makalenin bölümünde yaptığı algoritması "kullanılmıştır nasıl Guttman kendisi eleştiriyor sürücü kodlama teknikleri teknik analizin sonucu daha kötü ruhları kovmak için daha voodoo sözler bir tür olarak " . Bir sürücüyü sıfırdan fazla silmenin tek nedeni duygusaldır ... yani daha iyi hissetmenizi sağlar ... teknik değil.
irrasyonel John

4
Güzel, ama niçin bs=1Mparametreyi neden koyduğunu açıklar mısın ? Bunu okuyabilirim manve IIUC'yi sadece 1 megabayt ile tamponu sınırlandırıyorsunuz; neden bu kadar arzu edilir?
gaazkam

20

Güvenlik Yığın Değişimi hakkındaki bu kesin soruya bir göz atın

Sabit sürücüdeki tüm bilgileri nasıl güvenle silebilirim?

Bu, çeşitli güvenli silme seçeneklerini, fiziksel yıkım ve silmeyi tartışır, böylece hangi seçeneğin en iyi bahis olacağına karar verebilirsiniz.

Farklı depolama için mevcut kurtarma durumunun şu şekilde olduğunu unutmayın:

  • Çok eski sabit diskler: İzler arasında boşluklar vardı, bu boşluklara potansiyel olarak kan akıtabilirdiniz (eğer tarama elektron mikroskobunuz varsa). Birden çok kez üzerine yazmak potansiyel olarak yararlı oldu.
  • Yeni sabit diskler: Üzerine tek bir yazma işleminden sonra bile okuyan hiçbir teknoloji mevcut değildir.
  • Yarıiletken sabit sürücüler: aşınma dengeleme, güvenli bir şekilde üzerine yazamayacağınız anlamına gelir. Bunun yerine, tüm birimi şifrelersiniz ve silmek için anahtarı elden çıkarırsınız veya cihazı yok edersiniz.

Örneğin 30 yıl önceki çok eski tanımı nedir?
Motive,

10Mb MFM yaklaşık 20-25 yıl öncesinden sürüş gerçekleştiriyor, evet
Rory Alsop

Bunun cep telefonları ve tabletler gibi aygıtlardaki sürücülerle ilgisi nedir?
Motive

@Motive Telefonların ve tabletlerin flash bellek kullandığı göz önüne alındığında, SSD'ler ile aynı cevap olabilir, ancak emin değilim. Daha iyi bilgi için Süper Kullanıcı'ya sorabilirsiniz .
wjandrea

20

Genelde kullanarak yıkıcı bir okuma-yazma testi kullanıyorum badblocks -w. İki büyük avantaj

  • temel sistemin bir parçası ve hemen hemen her kurtarma sisteminin bir parçası olduğu için Ubuntu yükleyicisinin kurtarma kabuğundan elde edilebilir
  • sonunda diskte kötü bloklar olup olmadığını bir rapor alırsınız

Rapor bir sorun olduğunu gösterirse, yakında başarısız olacağı için diski satmayacağımı unutmayın.

Kullanım örneği (diskiniz varsa sdd):

sudo badblocks -wsv /dev/sdd

( svilerleme çubuğu + ayrıntılı için eklendi )


11

Şimdi, Disks ( gnome-disks) aracında ATA Güvenli Silme özelliği var . Sabit sürücünüzü silmek için kullanabilirsiniz. Komut satırı aracını kullanarak bu cevapta açıklanan aynı seçenek hdparm.

  1. Diskleri aç aracı → Hedef diski seçin
  2. Menüden: Diski Biçimlendir ...
  3. Açılan kutudan seçin, Sil: ATA Gelişmiş Güvenli Silme
  4. Biçim

ATA Gelişmiş Güvenli Silme 1 ATA Gelişmiş Güvenli Silme 2


2
Bu genellikle en iyi seçenek olmasına rağmen, USB üzerinden uygulanmaz (yukarıdaki soruda sorulduğu gibi). Ata.wiki.kernel.org/index.php/ATA_Secure_Erase adresinde bununla ilgili uyarılar ve feragatnameler var . Yine de, Gnome sayısında bunu sordum .
colan,

1
@colan Anladığım kadarıyla tam destedeki özellik desteğine bağlı (Diskler - Çekirdek - Sürücü - Denetleyici - Sürücü). Durumum iki HDD için uygun olsa da (WD USB3 HDD ve WD w / SATA-USB3 aktif adaptör), her durumda olmadığını onaylıyorum, kodlanmış blok hizalamalı bazı SATA-USB3 adaptörleri gördüm (512b ile okuma) & 4k bloğu aynı görüntüleri oluşturmaz), bazıları da bazı uzun çalıştırma komutları olan SMART'ı desteklemez, Bazı USB Sürücüleri parola korumalı / şifreli bölümler için standartlaştırılmamış / bükülmüş bir uygulamaya sahiptir (Başka bir USB adaptörüyle kullanmak kırmak)
user.dz

8
  • Sürücünün tüm içeriği üzerinde / dev / random çalışan bir geridöngü aygıtı oluşturmanız gerekir.
  • Bu, tüm sürücüyü neredeyse tamamen rastgele verilerle dolduracak. Sonra, tüm bitleri dd ile tekrar 0'a ayarlayabilirsiniz.

  • Aslında, dd tüm bilgileri rastgele seçebilmelidir.

  • Bankacılık bilgilerini sabit diskinizde sakladığınızı söylediniz. Bu nedenle, aşağıdaki komutlardan herhangi birini canlı bir cd'den çalıştırmanızı öneririm (burada hdX , sabit sürücünüzdür ).

    dd if=/dev/zero of=/dev/hdX

    dd if=/dev/random of=/dev/hdX

    dd if=/dev/urandom of=/dev/hdX

  • Sabit diskinizin boyutuna bağlı olarak bu ne kadar uzun zaman alacaktır.

Bilginize:

Aşağıdaki bağlantılara bakın,

Not:

  • Rasgele rasgele bit kullanır ve sıfır 0 bit kullanır.
  • Urandom, rastgele yarı rastgele bir sürümüdür.

Rastgele gerçekten gerekli mi? Tüm bitleri 1 ile ve sonra 0 ile değiştirmek yeterli olmaz mı?
Buck

7

silme kullanabilirsiniz

Kurulum

sudo apt-get install wipe

Bu yazılımı kullanabilir veya aşağıdaki komutu kullanabilirsiniz:

shred -vfz -n ? (drive)

"" Miydi? , sürücüyü parçalamak istediğiniz süreyi, ardından “(sürücü)” olduğu için, parçalamak istediğiniz sürücüyü yerleştirin. Bir kez yaptıktan sonra, ne istersen yap. Sürücünüze ne yapıldığını kontrol edebildiğiniz ve anında sonuç alabileceğiniz için bu yöntemin daha etkili olduğunu düşünüyorum.

Bağlantılar

  1. http://wipe.sourceforge.net/
  2. http://www.howtogeek.com/howto/15037/use-an-ubuntu-live-cd-to-securely-wipe-your-pcs-hard-drive/
  3. http://ubuntuforums.org/showthread.php?t=817882

6
Neden birini diğerinin üzerinde kullan, silme veya parçalama?
Mads Skjern

7

ATA sürücülerinin güvenli silme işlevini kullanmak en iyisidir. Güvenli silme, sürücüyü bellenim düzeyinde siler. Daha güvenli olamıyorum.

İlk önce güvenli silme işleminin desteklenip desteklenmediğini kontrol edin:

sudo hdparm -I /dev/sdX | grep -i security

(sdX'i, diskiniz ne olursa olsun, sda / sdb / sdc ile değiştirin).

Çıktı göremiyorsanız, sadece dd kullanın:

sudo dd if=/dev/zero of=/dev/sdX bs=1M

Çıktı görürseniz, cihazın donmamış olup olmadığını kontrol edin:

sudo hdparm -I /dev/sdX | grep -i frozen

Dondurulmuş değilse, şifrenizi "Eins" olarak ayarlayın:

sudo hdparm --user-master u --security-set-pass Eins /dev/sdX

İsteğe bağlı: Bunun ne kadar süreceğini bilmek isteyebilirsiniz:

sudo hdparm -I /dev/sdX | awk '/for SECURITY ERASE UNIT/'

Ardından silme işlemini gerçekleştirin:

sudo hdparm --user-master u --security-erase Eins /dev/sdX

Sonra bekle. Görünüşe göre 1 TB disk için bu 3 saat veya daha uzun sürebilir.

Bir var adımları otomatik güzel senaryo .


6

DBAN kullanabilirsiniz . Vikipedi :

Darik's Boot ve Nuke (genellikle DBAN olarak bilinir) [...], veriler kalıcı olarak silinene ve artık kurtarılamaz hale gelinceye kadar bir sabit diski güvenli bir şekilde silmek için tasarlanmıştır; bu, Mersenne twister veya ISAAC ( bir PRNG). Gutmann yöntemi, Hızlı Silme, DoD Kısa (3 geçiş) ve DOD 5220.22-M (7 geçiş) Veri aktarımını işlemek için seçenekler olarak dahil edilmiştir.

DBAN disket, CD, DVD veya USB flash sürücüden başlatılabilir ve Linux'a dayanır. PATA (IDE), SCSI ve SATA sabit sürücüleri destekler. DBAN, sistemde gördüğü her bir sabit diski otomatik olarak silerek, katılımsız veri imha senaryoları için çok faydalı olacak şekilde yapılandırılabilir. DBAN, Intel x86 ve PowerPC sistemleri için var.

DBAN, diğer veri silme yöntemleri gibi, bilgisayar bağışlamak veya satmak gibi kişisel veya ticari durumlar için bilgisayar geri dönüşümünden önce kullanılmaya uygundur [2]. Kötü amaçlı yazılım bulaşması durumunda, bir diski üretime almadan önce DBAN kullanılabilir.


3

Bu senaryoda shd'ye göre bir daha avantajı: Bir değişim için satıcıya geri göndermem gereken hatalı bir diskim var.

dd ilk kötü blokta durur ve gerisini durduramaz (her durduğunda ileriye atlamak için zekice skip = ... kullanmazsam).

Shred, yazma hatalarını yoksayar ve bu durumda mutlu bir şekilde devam eder.


0

Kök git ve

dd if=/dev/random of=/dev/(your usb drive device here); dd if=/dev/zero of=/dev/(your usb drive device here)

Doğru sürücüye sahip olduğunuzdan emin olun!


7
Bu tür işlemler için asla / dev / random kullanmayın. / dev / random, bir entropi havuzu kullanarak rasgele veri üretir ve bu entropi havuzu boşsa işlemi engeller. Bu nedenle, yeni rastgelelik oluşturmak için bilgisayarınızla hiçbir şey yapmazsanız, işlem sonsuza dek sürecektir. Bunun yerine / dev / urandom kullanın. Ayrıca bakınızman random
htorque

2
Muhtemelen komutun önekini yapmanız gerekir sudo. Ayrıca, ddvarsayılandan daha büyük bir blok boyutu kullanıldığında daha erken bitme eğilimindedir. Bu yüzden çok dikkatli bir şekilde kullanarak önermek istiyorum :sudo dd if=/dev/random bs=1m of=/dev/sdX
irrasyonel John

ah, demek istediğim sudo dd if=/dev/urandom bs=1m of=/dev/sdXAh, peki.
irrasyonel John


0

Parçalamayı önerenler kötü tavsiyeler veriyorlar. Shred'in kendi sayfası, dosya sistemi varsayılanlarını değiştirmezseniz Ubuntu'nun neredeyse kullanılacağının garantili olduğu günlüklü dosya sistemlerinde etkili olmadığını söylüyor (ext3 ve ext4 günlüklüdür. .).

Parçalamanın bir disk tamamen boşaltılması veya rasgele hale getirilmesi için tamamen yararsızdır, çünkü yalnızca tek tek dosyalar veya dosyalar üzerinde çalışır (Dosya sistemi düzeyinde, ham veri düzeyinde değil). Bir diski güvenli bir şekilde silmek istiyorsanız, üzerine hiçbir şey takılı değilken sürücünün ana aygıt düğümünde dd kullanmanız gerekir (Örneğin: / dev / sdc1 yerine / dev / sdc).

Biraz zaman alacak, ancak parçalamanın aksine tamamen ve MBR'den son sektöre bir sabit diski IRREVERSIBLY ile silecektir. Ayrıca, dd üzerindeki BÜYÜK UYARI, doğru aygıtta kullandığınızdan emin olun, yoksa en azından PARTIALLY yanlış diski silersiniz. Yanlışlıkla bir sistem sürücüsünde dd kullanırsanız, bu yalnızca felaket haline getirmez, aynı zamanda sürücüdeki herhangi bir bölümü geri dönüşü olmayan bir şekilde bozabilir. Bu ona "disk destroyer" adını verdi.

Shred, bir sürücüyü güvenli bir şekilde silmek için güvenilir bir alet DEĞİLDİR. Bilgisayarı satıyorsanız veya satıyorsanız, sürücüyü boşaltmak için DOĞRU yolu sıfırlamak veya dd ile rastgele yapmaktır ve asla, asla shred kullanmayınız, çünkü dosya sistemi dergileri parçalanmış dosyaları hiç çaba harcamadan etkili bir şekilde geri yükler.


9
Bir dosyayı parçalamıyorsun. Cihazın tamamına yönlendirirsin. Dosya sistemi alakasız.
David,

1
@DavidGiven Teknik olarak bir dosya sisteminin içindeki sadece bir dosyayı parçalayabilirsiniz ve bu parçalama sayfasının çoğunlukla konuştuğu şeydir. Yaro'nun uyarıları bu durumda geçerli olurdu. Ama evet, bütün bir bölümü parçalamak tamamen farklı bir şeydir; Bu durumda, dosya sistemi gerçekten önemli değil.
Alois Mahdal,

0

Bunu yapmanın en kolay yolu kullanmaktır:

sudo shred -fv /dev/xxx

xxx nerede cihazdır, hangi cihaza sahip olduğunuzdan emin olmak için şunu yazın:

sudo fdisk -l

Cihaz sonra belirtilir diski kelime ve kolon char : , örneğin:

Disk /dev/sde: 500.1 GB etc...

İstediğiniz diskin dosya sistemlerini silmeyin. Shred istediğiniz zaman yapmaz. -z seçeneği silme gizlemek için 0 ile son çalıştırma içindir ve verileri silmek için gerekli değildir.

En iyi yol, önceki kullanıcıları yazdığı gibi dd kullanmaktır:

sudo dd if=/dev/urandom of=/dev/xxx bs=1M

rastgele desen elde etmek için daha modern ve daha iyi bir yol olduğundan, urandom cihazı kullanın .

Şu anda diğer araçlar daha yaşlı olabilir ve daha az insan tarafından gelişebilir. Shred Linux'un çekirdek uygulamasında.

Şu örneğe bakın: 2009'u silin http://lambda-diode.com/software/wipe/ . Ama bu bilinen bir uygulama. Çamaşır suyu kullanmak mümkündür, ancak denediğim gibi uzun zaman aldı.


-1

DD cmd çalışmıyorsa, verileri silmek için yeniden yönlendirme yöntemini kullanabilirsiniz.

Sevmek,

cat /dev/urandom > /dev/sd**a**   # depends on your hdd location 

veya

alternatif olarak, önceki verilerin üzerine yazmak için cp (kopya cmd) kullanabilirsiniz.

cp /dev/urandom /dev/sd**a**      # depends on your hdd location 
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.