Slashdot Mirror


Data Breach Flaw Found In Gnome-terminal, Xfce Terminal and Terminator

suso writes "A design flaw in the VTE library was published this week. The VTE library provides the terminal widget and manages the scrollback buffer in many popular terminal emulators including gnome-terminal, xfce4-terminal, terminator and guake. Due to this flaw, your scrollback buffer ends up on your /tmp filesystem over time and can be viewed by anyone who gets ahold of your hard drive. Including data passed back through an SSH connection. A demonstration video was also made to make the problem more obvious. Anyone using these terminals or others based on libVTE should be aware of this issue as it even writes data passed back through an SSH connection to your local disk. Instructions are also included for how to properly deal with the leaked data on your hard drive. You are either encouraged to switch terminals and/or start using tmpfs for your /tmp partition until the library is fixed."

13 of 184 comments (clear)

  1. Skynet by Talderas · · Score: 5, Funny

    We have a means to strike back at Skynet using this breach in the Terminator systems!

    --
    "Lack of speed can be overcome. In the worst case by patience." --Znork
  2. tmpfs by Sloppy · · Score: 4, Insightful

    You are either encouraged to switch terminals and/or start using tmpfs for your /tmp partition until the library is fixed.

    Once you go tmpfs, why would you ever go back, VTE flaws or not? tmpfs kicks ass.

    Then encrypt your swap (random key every boot; you don't even need to know a key to be coerced from you) and you have a safe /tmp.

    --
    As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
    1. Re:tmpfs by Ceriel+Nosforit · · Score: 4, Informative

      In some countries, it is illegal for you not to divulge the key to properly warranted authorities - even if you don't know what it is.

      So what? In my country blasphemy is illegal. I'm not from the Middle East either, I'm a Finn. - Sometimes you just have to, grow a backbone, fuck Jesus in the ass and break the law.

      --
      All rites reversed 2010
  3. Not a bug by Anonymous Coward · · Score: 5, Insightful

    This is not a bug. This is exactly how /tmp is meant to be used. It is no different from sensitive data from your internet cache being stored on the hard drive.

    If your garbage data is sensitive, you should encrypt /tmp, or mount a tmpfs there.

  4. Re:How is this *really* a problem? by jesseck · · Score: 4, Informative

    While the system is running, yes, you either need to be root or run an exploit which escalates your privileges so you can see the temp file. When the disk is removed from the system you don't need to be root to read the files. Nor would you need to be root if you booted from a LiveCD.

  5. Re:How is this *really* a problem? by fuzzyfuzzyfungus · · Score: 5, Informative

    If you are using a persistent /tmp, 'root' is anybody who mounts the HDD...

    Now, if you want scrollback data to be persistent across reboots, you have to suck it up and dump it to disk somewhere(user home might be a slightly better idea, since support for encrypting your home directory is slightly easier than for encrypting the entire disk); but if that isn't a requirement you probably don't want it touching the disk at all(unless you are in a very memory constrained and swapless environment where getting OOM killed every time something unexpectedly verbose happens would be really annoying).

  6. Re:How is this *really* a problem? by skids · · Score: 4, Informative

    It's a particular problem if you A) don't run on entirely encrypted partitions, and B) have your kit stolen or get rooted. Your biggest problem is that you had your kit stolen or got rooted, however, this problem effects the damage control process.

    Usually when you have a compromise you assume that only data that is "on the host" is compromised, and any data from other hosts is only compromised if it happened to be viewed after you got rooted (because the attacker could have been keylogging.) With cleartext from encrypted sessions hitting disk, this means that data could be sitting around in unused block in /tmp for years, so once you get rooted you have to assume everything ever done on other machines using a terminal on that machine has been exposed. So if you edited your corporate HQ's VPN PSK 2 years ago, that may still be on your disk.

    tmp is less likely to be on an encrypted media than other filesystems, because it is usually expected to be a performance bottleneck.

    The good news is that in many cases the data never got flushed back to disk and stayed in the filesystem buffers, but for high security concerns this is little consolation.

  7. Re:Umm by gzipped_tar · · Score: 4, Insightful

    The problem is your terminal history may include data from other hosts, decrypted. Therefore it's not just "your" worries.

    --
    Colorless green Cthulhu waits dreaming furiously.
  8. Overblown by AliasMarlowe · · Score: 4, Insightful

    ...to have my command history stolen!

    That would be in your .bash_history file (or whatever you name it locally).

    Really, this is way overblown by calling it a "data breach": it's not as if your data is compromised to a remote attacker. It requires that somebody else has your disk. As we all know, if your hardware is stolen/confiscated/impounded/seized/whatever, only encryption can keep your data safe. Apparently, even that can be circumvented by legal compulsion.

    --
    Those who can make you believe absurdities can make you commit atrocities. - Voltaire
    1. Re:Overblown by behdad · · Score: 5, Informative

      That's misinformed. Vte creates files in /tmp, and immediately delete them. So, the space will be reclaimed as soon as the terminal tab in question is closed. I know this is how it works, because that's how I wrote it.

  9. I'd be a little miffed by DarkOx · · Score: 5, Insightful

    If I were the author of this library I'd be a little annoyed. The article is written as if the library does something wrong. It does not. It stores data on /tmp, which is there to be used as scratch space. To read the file you have to be the owner or root, which has been true of every process that has written there since before my years. This is perfect correct.

    Okay some uses might not expected their terminal emulator to keep temporary files. Yes if your disk is appropriated someone not root in your environment might be able to read it. Which is true of basically any process that writes anything to disk anywhere; even ones that don't. Suppose my system is under enough VM pressure that my good old fashion xterm gets paged out? Why scroll back buffer data, which might even have come from SSH would be right there on my disk! OH! NOS!

    If you are dealing with a system that is physically insecure, like a laptop, or machine in a public spot, or information that is so sensitive you'd be more concerned about it being out there than the fact that your hard disk or entire system has gone missing; there is a solution for that. Its called disk encryption! If you use Linux it won't even cost you anything!

    --
    Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
  10. Re:Umm by behdad · · Score: 5, Informative

    You have to read the bugzilla report carefully to see what this story is about. I'm the developer being [bf]lamed. I offered to find time on a weekend and fix the issue. But the reporter ignored my offer and went ahead to post this on as many places as it could. In the report, he masks that, and instead says I don't consider it a bug. The report is intentionally written misinformed IMO. Which makes me think the true story is that he wanted to get some publicity...

  11. Re:Yet another reason to switch to KDE permanently by behdad · · Score: 4, Informative

    Anonymous Coward,

    You may want to read the end of this comment before jumping to conclusions:

        https://bugzilla.gnome.org/show_bug.cgi?id=664611#c10

    Ie. I offered to fix it, before the report was published. And the report is deliberately misinformed to make it look like I said I don't have any intention to fix it. And the report author tweetted [1] "Apparently not a lot of people read Slashdot anymore or RTFA. I've only had 971 hits to the article so far. :-(", which makes me believe that his true intention was to get Slashdot / Reddit / Hacker News bragging rights. Comes handy if you are a sysadmin I guess...

    behdad

    [1] https://twitter.com/#!/climagic/status/177796284755873793