josefdlange 9 years ago

Stranger is that they feel like they need to open a "hidden" browser instance to connect to the internet. A browser isn't really a necessary part of establishing a connection -- unless there's some missing context here. Is my grandmother running the CIA data ops division?

Edit: it's been made clear to me that of course this is one of few viable vectors when approaching outbound network with a really restrictive firewall (like Little Snitch). If a browser is already approved on making a given connection, then using a headless instance to do network talking is a smart way to do it. If you roll your own net code, a tool like LS will notify user and/or block. Dumb me!

  • 65827 9 years ago

    I mean they could just write some net code that sends packets to whatever port, but launching IE and doing everything over HTTPS or whatever is much more stealthy when it comes to network monitoring and system logs.

    • josefdlange 9 years ago

      But why not spend ten minutes and make their net code use SSL and then avoid it altogether?

      I guess one could argue that the footprint of adding SSL client behavior to a sneaky hidden tracker might be shitty to do and make it more identifiable. But also SSL libraries are typically linkable on the host system anyway, no compilation past the headers needed.

      It's just a weird "workaround" on their part if that's the intention.

      • foota 9 years ago

        Consider perhaps Windows firewall. I believe it can be configured to block connection by opening program.

      • Alupis 9 years ago

        Perhaps bots are more easily discernible from a human user who's using a real browser. If the goal is to be stealthy, then they'd want to appear as human-like as possible.

      • josteink 9 years ago

        Windows has very sophisticated firewalling and network access can be filtered on a per-process, per-network basis.

        Restrictive companies will only allow pre-approved applications, for specific ports, like I.E. doing HTTP/S over ports 80 and 443, and only on approved/trusted networks.

        • josefdlange 9 years ago

          Yeah, realized the folly in my logic -- see my edit on my top-level comment. This strategy is pretty much how LS works on macOS as well.

  • Someone 9 years ago

    I would guess that the hidden browser could have access to data (login cookies, browser history, combined with another vulnerability maybe even anything the user enters in other browser windows) that a separate program would not have accesss to.

  • anilr 9 years ago

    Little Snitch will warn you (ask permission) if a new process wants to connect to the internet. If the beacon can pass information through an browser process though, I expect most people have Little Snitch rules to allow their browser to send any traffic without warnings.

  • ryanlol 9 years ago

    Intent is to evade firewalls that allow per-application rules, such as Little Snitch (I think?) and Windows firewall.

    • josefdlange 9 years ago

      Oh, duh. Wow, dumb me. One of those "can't see the forest for the trees" mistakes on my part. Thanks for the reality check!

    • tetrep 9 years ago

      > such as Little Snitch (I think?)

      Correct. It is likely users allow their primary browser full access to all hosts on ports 80 and 443, if not all ports.

      Additionally, launching the browser gives you easy access to all the tastey session cookies and access to their keychain (I assume a lot of people give their default browser on OSX keychain access).

  • sly010 9 years ago

    Exactly. Firewalls like Little Snitch primarily filter traffic primarily based on the binary initiating the connection, and only secondarily based on the target port or address. When little snitch pops up the 10th time in 30 seconds, you will just approve all traffic from your browser, so using the browser to send all traffic is great way to avoid being caught.

    As for what "injecting into little snitch" means, it could either mean injecting code into little snitch, because little snitch probably doesn't filter itself OR injecting a rule into little snitch.

    • kordless 9 years ago

      Casually browsing the archive, I saw something related to injecting payloads into OSX applications. The application that did this required the latest version of XCode to compile, according to the installation and build docs.

      • lostlogin 9 years ago

        Are you suggesting that this indicates recent activity on the project?

    • nathancahill 9 years ago

      Little Snitch does filter itself, but the Allow rules are there by default. I remember on a previous version, one of the steps to pirate LS was adding a rule to block it from connecting to it's servers.

      • 15155 9 years ago

        They've added internal protection against this in recent versions.

  • HashThis 9 years ago

    Hackers are going to hack (a solution).

  • diryawish 9 years ago

    What if they use it to establish an unsavory browsing history on a target's computer without their knowledge?

    • subroutine 9 years ago

      Could you imagine.

      deletes browsing history

      If there is a page stating the CIA can create an unsavory browsing history, let me know, just for future reference.

      • diryawish 9 years ago

        Lol good point. I meant to imply the history that the ISP would see, not the local one. Although a hidden browser wouldn't be necessary for that anyway. Never mind :)

        • wavefunction 9 years ago

          Hidden browser would be good for establishing a "history that the ISP would see" as well.

  • jcoffland 9 years ago

    Also it helps get you through proxies.

tptacek 9 years ago

This is clownish:

1. Only a tiny minority of macOS users use Little Snitch, and they're not necessarily the most sensitive/interesting targets.

2. If you're competent and you have enough privileges to inject a DLL into anything, the odds are overwhelming that you also own the kernel. Why would you waste time with a goofy firewall add-on package?

I joked on Twitter but I'm "ha ha only serious" about this: if you had this entire portfolio of tools and exploits 2 years ago, I'm not sure you could have gotten a job at Immunity. The leak is fascinating. The technical details: not so much.

I thought the Shadow Brokers/Equation Group dump demonstrated a not-especially-skillful group of inexperienced-seeming pentesters who happened to have acquired some interesting bugs on the black market. Today's dump shows a team that's way less impressive even than that.

  • javajosh 9 years ago

    Little Snitch users are the kind of people who can and would expose CIA beacon signals. It's not so much that LS users are juicy targets, but rather that they are substantial exposure risks.

    You might say, well, just piggy-back the signal on something else. Indeed, that is better. But that solution is far more complicated because you have to control (cooperatively, or coercively) a legitimate end-point.

    Ergo, I don't think it's clownish at all for the CIA to target LS, it addresses a real threat (to them).

    • tptacek 9 years ago

      Using kernel implants to hide signals from these kinds of network security tools is literally 1990s-grade hacker opsec. It's the actual, precise use case for which "amodload" was written, in 1996, by a 20-year-old, for a closed-source OS. I stand by my assessment.

      • ghshephard 9 years ago

        ...But what if you can implant into the kernel? Also, what if you don't want to use a full-featured zero-day kernel exploit if you can get your target with a somewhat lower tech exploit?

        Clever to just recover all your data using a browser process which has (likely) already been fully authorized to exfiltrate data.

      • javajosh 9 years ago

        So, rather than targeting LS they would target the kernel with a patch to make LS (and all tools like it) blind to their traffic.

        Clearly that's a neater and more complete approach, but there still might be reasons to target a specific app instead of the kernel. It might just be easier and less error prone. (Monkey-patching a running kernel's networking innards has got to pose serious risk to the underlying system's stability, increasing the likelihood that the target will simply reinstall the OS. That's fine for a DoS attack, but not for something like this).

    • rudolf0 9 years ago

      That's not what he was saying. Yes, it would of course be a good idea to try to hide the malware implants from tools like Little Snitch. It's just that the method they propose of going about it is really dumb.

      What tptacek is saying is that instead of writing some hand-tailored userspace code to specifically fool Little Snitch, they should just be using a kernel module that will hide the network and process activity from all analysis tools. That's what most nation-state malware does (or tries to do).

  • bm1362 9 years ago

    I don't swim in these circles so forgive my ignorance -- What is significant about Immunity? Are you saying these exploits are trivial and/or old news?

    • therein 9 years ago

      He is saying the latter. They indeed are. They are cool infection vectors but nothing new.

  • chatmasta 9 years ago

    Plot twist: the dump is a list of summer intern projects

    • slizard 9 years ago

      Hypothetical or real? If real, link to source please.

      • r3bl 9 years ago

        He started his comment with words "plot twist". I'm pretty sure he wasn't really considering that as a legit option.

  • deft 9 years ago

    The whole wiki that this leak released is full of the most basic configuration options for vim/VS etc. They have version control tutorials. They can't be hiring pros.

  • emmelaich 9 years ago

    I think you're over-reacting. It's just a discussion (powerpoint?)

    I would consider it negligent if no-one in the CIA was asking these questions.

    [edit:grammar/clarification]

burntwater 9 years ago

I'm just a little weirded out how this list is, in style, identical to many of the lists I've created and have open right now. I need this to be a bit more "henchmanny" and a bit less "average Joe/Jane sitting at their desk under the florescent lights drinking coffee and idly thinking about the workweek ahead."

  • urs2102 9 years ago

    This actually made me burst out laughing and conveyed my thoughts exactly. It's like when you become old enough to realize your parents are fallible and have been winging it the whole time.

Kalium 9 years ago

It's possible I've misunderstood, but I don't think they're trying to inject Little Snitch. I think they're trying to inject into Little Snitch, in order to evade its restrictions.

  • tptacek 9 years ago

    You haven't misunderstood. That's what they're talking about. This is a bad headline.

    • Kalium 9 years ago

      That's what I figured. It probably makes sense if you don't know what "inject" means in a context like this.

    • dang 9 years ago

      Ok, we injected an 'into' into 'inject Little Snitch'.

aaron695 9 years ago

Little Snitch is a host-based application firewall for Mac OS X. It can be used to monitor applications, preventing or permitting them to connect to attached networks through advanced rules.

https://en.wikipedia.org/wiki/Little_Snitch

Darthy 9 years ago

If you only need to send data once per week, and that data is less than 2K, simply encrypt it, make it part of a URL that you control, then tell the default browser to open that URL. Nearly everybody has configured Little Snitch so that the browser can connect to anything (because the popups quickly annoy). Then do a redirect on your server to something innocuous, and the user will quickly forget.

  • _nalply 9 years ago

    Or even better use window.close() then the user will only see the browser window open briefly. Of course if the user has JavaScript disabled, use HTTP 302 Found or HTML meta refresh to redirect, blah blah.

golergka 9 years ago

So, apart from not demonstrating very high skill level (already discussed in other comments written by people that seem knowledgeable), how is this even remotely morally shady? They clearly discuss penetrating particular target systems — isn't that exactly what you would expect your intelligence/counter-intelligence service to do?

karmakaze 9 years ago

Why LS and not one of many other programs? Is it for the humour value of its name to specifically alter it?

  • DaiPlusPlus 9 years ago

    I'd wager LS users are more tech-savvy and less likely to be using more mainstream tools like Norton or McAfee - they want one tool that gives them control over what programs have network access, not a bloated adware platform.

neoncontrails 9 years ago

"Inject into" is their wording. The meaning is unclear. Is the goal to disable a working installation of Little Snitch?

  • Kalium 9 years ago

    Their goal is to suborn and evade it. In context, "inject into" should be understood to mean "to inject code or configuration of choice into a software package".

  • rurban 9 years ago

    Adding their proxy/reverse shell/network tool to the firewall whitelist, most likely.

Exuma 9 years ago

Hmm... lame