I understand traditional methods don’t work with modern SSD, anyone knows any good way to do it?

  • WhatAmLemmy@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    6 months ago

    For all average user requirements that just involve backups, PII docs, your sex vids, etc (e.g. not someone who could be persecuted or prosecuted for their data) your best bet (other than physical destruction) is to encrypt every usable bit in the drive.

    1. Download veracrypt
    2. Format the SSD as exFAT
    3. Create a new veracrypt volume on the mounted exFat partition that uses 100% of available space (any format).
    4. open up a notepad and type out a long random ass throwaway password e.g. $-963,;@82??/@;!3?$.&$-,fysnvefeianbsTak62064$@/lsjgegelwidvwggagabanskhbwugVg, copy it, and close/delete without saving.
    5. paste that password for the new veracrypt volume, and follow the prompts until it starts encrypting your SSD. It’ll take a while as it encrypts every available bit one-by-one.

    Even if veracrypt hits a free space error at the end of the task, the job is done. Maybe not 100%, but 99.99+% of space on the SSD is overwritten with indecipherable gibberish. Maybe advanced forensics could recover some bits, but why the fuck would they go to that effort for a filthy commoner like yourself!?! You don’t really need to bother destroying the header encryption key (as apple and android products do when you wipe a device) as you don’t know the password and there isn’t a chance in hell you or anyone else is gonna guess, nor brute force, it.

    • Skull giver@popplesburger.hilciferous.nl
      link
      fedilink
      arrow-up
      0
      ·
      6 months ago

      Because of wear management and the way flash storage works, overwriting disks is even more useless for wiping data than it was on hard drives. Even on spinning rust there were plenty of files in relocated sectors, but on SSDs you get relocation behaviour and copied files without any actual damage to the disk.

      You can overwrite a file on your SSD with random numbers supposedly filling the entire file’s space, but under the hood the SSD could be like “erasing this block would wear down the disk too much, let’s just copy the block some place else and map the data offset to this new set of cells”. Modern SSDs also have extra storage capacity so that wear leveling can be done without reducing your storage space in the process, and cells the SSD deems to be too unstable will be copied and unmapped. Their data will still be there, but it won’t be accessible to the computer, even if you overwrite the entire drive.

      If you want to erase data, physically destroy the disk. If you want to prevent having to erase data, encrypt it (it’s on by default in Windows, Mac, and most Linux distros) so you only need to destroy the encryption key to make the data unreadable.

      • otp@sh.itjust.works
        link
        fedilink
        arrow-up
        0
        ·
        6 months ago

        If you want to keep/sell the drive…

        1. Fill up the rest of the usable space
        2. Encrypt the drive
        3. Throw away the encryption key/password
        4. Hard format (writing zeroes to every bit, sorry if that’s the wrong term

        Is that the best strategy? Or is anything outside of 2 and 3 redundant?

        • Skull giver@popplesburger.hilciferous.nl
          link
          fedilink
          English
          arrow-up
          0
          ·
          6 months ago

          “Best” depends on your needs.

          I’m not sure if filling up the entire drive is necessary. Nothing wrong with doing a dd if=/dev/urandom of=/dev/nvme1 to randomise the drive itself, but I don’t think most people are affected by the kind of information you can derive from what sectors are/aren’t written to.

          Writing zeroes to every bit is useless because of the automatic remapping; it mostly serves to wear down the device if you use decent encryption. There are only so many write+erase cycles each cell can go through before it breaks, so I try to avoid doing large writes on purpose. Try a secure erase from either your UEFI GUI, but good encryption prevents the need for a full format.

          Personally, I let my drives fill up over time. I trust LUKS enough to handle the encryption, and I don’t think anyone who’s going to be buying this SSD off me is going to send it off to a forensic data lab to analyse what the average size of the files I worked on was. So, my personal approach:

          1. Buy a drive from a reputable brand with no known obvious firmware bugs (Sandstorm, anyone?)
          2. Encrypt the drive
          3. Throw out backup key(s)
          4. Issue secure erase command
        • Brkdncr@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          6 months ago

          You can’t fill the drive. The drive decides when to use its buffered free storage blocks. It’s at the hardware level and only the Secure Erase command will clear it.

          • otp@sh.itjust.works
            link
            fedilink
            arrow-up
            0
            ·
            6 months ago

            Right, I read some more of the comments and realized that’s what some of the “unreported space” is used for. Makes sense, thanks!

          • _edge@discuss.tchncs.de
            link
            fedilink
            arrow-up
            0
            ·
            6 months ago

            You fill up the usable space. Or the visible space. No one will disamble the device and read from the raw storage.

      • WhatAmLemmy@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        6 months ago

        a) why the fuck would they go to that effort for a filthy commoner like yourself, and b) what are the chances that 0.01% of recoverable data contains anything useful!?!

        Nobody is gonna bother doing advanced forensics on 2nd hand storage, digging into megabytes of reallocated sectors on the off chance they to find something financially exploitable. That’s a level of paranoia no data supports.

        My example applies to storage devices which don’t default to encryption (most non-OS external storage). It’s analogous to changing your existing encrypted disks password to a random-ass unrecoverable throwaway.

        • Skull giver@popplesburger.hilciferous.nl
          link
          fedilink
          arrow-up
          0
          ·
          edit-2
          6 months ago

          When we’re talking SSDs, we’re not talking a fee megabytes of relocated sectors. We’re talking numbers between 4½-560GB of spare capacity, almost guaranteed to be used, especially if you start filling up the drive.

          If you’re assuming nobody is going to dig through the SSD, save yourself some time and issue a secure erase/crypto erase command and let the firmware figure it out. It’s faster and more reliable. If you have TRIM enabled (should be on by default on most operating systems), you may even be able to get away with simply clearing the recycling bin.

  • Skull giver@popplesburger.hilciferous.nl
    link
    fedilink
    arrow-up
    0
    ·
    6 months ago

    Physical damage is the most reliable. Drill through the flash chips, chuck the whole thing into an old microwave, then throw it all in a fire.

    If you want to resell the SSD, use secure erase. If that doesn’t work (some broken firmware doesn’t erase on secure erase, you’ll know when you reboot and the data is still there), you can try overwriting all storage as a last resort.

    If the drive was encrypted, either with a hardware backed key or a very secure password, throw out the encryption key and delete the backup key. That should suffice, unless a powerful country with access to advanced quantum computers will be targeting you in the next ten or twenty years.

    Overwriting storage is rarely good enough to wipe all files, but there’s a good chance most of the files you want deleted will be gone. If all files on the drive are sensitive, you should’ve probably encrypted the drive (lesson for next time!) and shouldn’t rely on overwriting to actually erase the data you’re trying to destroy.

  • CyberDine@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    6 months ago

    NSA requires the use of a industrial shredder that can grind the components into pieces less than 2mm.

    https://ameri-shred.com/portfolio-items/2mm-ssd-solid-state-drive-hammer-mills/

    If you can’t do that, you should incinerate the drive at over 700 degrees.

    As far as wiping goes, a 3 pass overwrite alternating 0s and 1s is good enough as long as it’s done over the entire drive, not just the partition.

    BCWipe is good enough for this

  • Felix@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    6 months ago

    If it’s really sensitive shit, you should beat the shit out of it with a sledgehammer and make sure you got all the nand modules(see diagram online), then throw parts of it into a large body of water, deeper the better

  • Captain Aggravated@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    If it’s really an issue where “if the data on this SSD falls into the wrong hands, lives will be ruined” sort of thing, my favorite data security tool for this job is a bench grinder. Difficult to put the data back together when the flash chips are powder scattered throughout 14 different shop surfaces and at least two lungs.

    • Scholars_Mate@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      6 months ago

      No. Modern SSDs are quite sophisticated in how they handle wear leveling and are, for the most part, black boxes.

      SSDs maintain a mapping of logical blocks (what your OS sees) to physical blocks (where the data is physically stored on the flash chips). For instance, when your computer writes to the logical block address 100, the SSD might map that to a physical block address of 200 (this is a very simplified). If you overwrite logical block address 100 again, the SSD might write to physical block address 300 and remap it, while not touching the data at physical block address 200. This let’s you avoid wearing out a particular part of the flash memory and instead spread the load out. It also means that someone could potentially rip the flash chips off the SSD, read them directly, and see data you thought was overwritten.

      You can’t just overwrite the entire SSD either because most SSDs overprovision, e.g. physically have more storage than they report. This is for wear leveling and increased life span of the SSD. If you overwrite the entire SSD, there may be physical flash that was not being overwritten. You can try overwriting the drive multiple times, but because SSDs are black boxes, you can’t be 100% sure how it handles wear leveling and that all the data was actually overwritten.

    • Goat@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      0
      ·
      6 months ago

      No, “overwritten” data doesn’t actually get erased right away due to wear levelling. As SSDs get esoterically smart with how they prevent unnecessary erase operations, there’s no way to be sure without secure erase.

  • Greg Clarke@lemmy.ca
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    Fill the drive 100% using data duplicator then delete everything on the drive. Repeat a few times to ensure you scrub all blocks. There is no need to physically destroy the drive.

    • ramble81@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      6 months ago

      That doesn’t work with SSDs anymore. Their controllers map “bad” blocks which are put in an RO state and writes no longer go there but data still exists. There is usually a buffer of extra space so you do see the capacity loss, but if you bypass the controller you can still read the data there.

      • Greg Clarke@lemmy.ca
        link
        fedilink
        English
        arrow-up
        0
        ·
        6 months ago

        That’s fair, I can appreciate an attack vector in cases where there are bad blocks and the drive was unencrypted. Luckily bad blocks are less common with modern SSDs and assuming the disk was encrypted, a few bad blocks are unlikely to expose any contents. So knowing the number of bad blocks and what data was stored would inform if a fill and empty approach would be suitable to sanitize the drive.

  • Brkdncr@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    6 months ago
    • Secure erase using the drive OEMs tool.
    • If you were using something like bitlocker then simply dump the key.
    • Wood chipper or some other form of absolute physical destruction.