Live data from Hacker News

Making QUIC Quicker with NIC Offload

dl.acm.org

21–30 of 31 posts

Re: Making QUIC Quicker with NIC Offload

#22
post #18
post #8

Earlier quoted context omitted.

How do you imagine this wiretapping works? This NIC is installed in your servers, and is fed AEAD keys that are derived from key exchange with a client by your TLS stack (and so private keys exist on the host, not on the NIC). This allows the NIC to decrypt/encrypt flows that pass through it and free up CPU cycles. QUIC requires forward secrecy for key exchange, so every flow will use a different AEAD key already, me…

If a special packet from the network -- maybe even just an innocuous-looking magic string in plaintext! – ran some undisclosed software on the NIC, how would you know? If that software then exfiltrated valuable info – session keys, or a digest of hotwords seen, or every string typed into targeted HTML form fields – how would you know? Ask the NIC for a record of all its communication? Do you own separate forensic dec…

The thing is, all your said, applies to all NICs we used these days. There are nothing special in these NICs with advanced offload features.

Re: Making QUIC Quicker with NIC Offload

#23

Have we addressed the privacy issues with QUIC?

What do you mean by privacy issues with QUIC? As I understand it, it’s just another application layer protocol.

Iirc, Brave browser began disabling QUIC because the connected server was able to fingerprint the connecting party, and they deemed it an intentional part of the protocol design. Essentially connecting anonymously to a server is not possible. I'll try and dig up the blog post.

Re: Making QUIC Quicker with NIC Offload

#25
post #22
post #18

Earlier quoted context omitted.

If a special packet from the network -- maybe even just an innocuous-looking magic string in plaintext! – ran some undisclosed software on the NIC, how would you know? If that software then exfiltrated valuable info – session keys, or a digest of hotwords seen, or every string typed into targeted HTML form fields – how would you know? Ask the NIC for a record of all its communication? Do you own separate forensic dec…

The thing is, all your said, applies to all NICs we used these days. There are nothing special in these NICs with advanced offload features.

Yes, it's an attractive place to add surveillance code for all NICs. But not all NICs take over encryption/decryption. And if other components do the encryption/decryption, NICs don't see plaintext - just (lots of) metadata.

If/when they take over encryption/decryption functions, that would make them an even better place for hard-to-detect, user-disloyal surveillance code.

Re: Making QUIC Quicker with NIC Offload

#26
post #16

Earlier quoted context omitted.

Okay, but I'm asking what does it look like? What kind of vulnerability? They presumably aren't using SuperDuper Secret Wifi to mirror data wirelessly to the moon, right? There are a limited number of outcomes at some point. They can't exactly change the encryption algorithms, otherwise clients fail to connect, and modern TLS (and QUIC) are designed to reduce algorithm agility in the name of preventing downgrade atta…

While I don't think it's likely, it's not hard to conceive a scenario where the NIC purposely weakens the security for attackers in the know. Purely theoretical (and I'm not a crypto guy, so please do correct me if this is nonsense), but imagine a scheme whereby the IV is chosen to be the first few bytes of the private key xor the port tuple. This could reduce the difficulty of brute forcing the key, and no extra tra…

> but imagine a scheme whereby the IV is chosen to be the first few bytes of the private key xor the port tuple.

Again, the NIC doesn't choose the IV. It is given an IV by the host system, which is derived from key exchange in software, and that IV must match what the other side of the link derives from its own key exchange operation. It has no choice but to use the IV given. Otherwise, the two parties can't communicate. So the NIC would have to attack the host system somehow to engage in this attack, but then it could just steal a private key anyway and get all communications forever. This is basic Diffie-Hellman/TLS 101.

This kind of "I'm not an expert, but let me make up a scenario completely divorced from reality..." thing is what I'm talking about when I say speculation/FUD. It sounds sufficiently "techie smart" to pass a trivial smell test but otherwise instantly falls apart.

> As to why they'd do this instead of getting a gag order - because they can? Because there's less oversight? Safest to assume that any technical capability will be abused sooner or later.

Any person in your life that you know could suddenly commit a horrible crime, just "because they can." Do you think they will? Is that reason to assume they will? "Because they can" ignores a basic aspect of how decisions are made, which is understanding their motivations and reasoning.

And less oversight from what? These gag orders are already enforced in secret courts. Governments exert pressure on each other, behind closed doors and through agreements like trade sanctions, to force other governments to comply. Theres's already "no oversight" in the process, by design it avoids oversight. Spooks can literally walk into your datacenter and pull a rack out of the cage and there's nothing you can do about it unless you want to get thrown in a dark hole for 500 years. Even if they had to resort to techie tricks, why is the scenario you imagine any more plausible than a thousand simpler, alternative options? Multi-million dollar corporations get ransomware'd all the time, and it's not like the culprits need hardware backdoors to do it.

Again: these agencies have exploits, and for a reason. They certainly use them. They have backdoors. That doesn't mean we just get to turn our brains off the instant something we don't understand mildly spooks us and assign complete impossibilities as the culprit. You're not far from just doing high-brow "lizard people control society" stuff at that point.

Re: Making QUIC Quicker with NIC Offload

#27
post #18
post #8

Earlier quoted context omitted.

How do you imagine this wiretapping works? This NIC is installed in your servers, and is fed AEAD keys that are derived from key exchange with a client by your TLS stack (and so private keys exist on the host, not on the NIC). This allows the NIC to decrypt/encrypt flows that pass through it and free up CPU cycles. QUIC requires forward secrecy for key exchange, so every flow will use a different AEAD key already, me…

If a special packet from the network -- maybe even just an innocuous-looking magic string in plaintext! – ran some undisclosed software on the NIC, how would you know? If that software then exfiltrated valuable info – session keys, or a digest of hotwords seen, or every string typed into targeted HTML form fields – how would you know? Ask the NIC for a record of all its communication? Do you own separate forensic dec…

> If that software then exfiltrated valuable info – session keys, or a digest of hotwords seen, or every string typed into targeted HTML form fields – how would you know?

How does this magical exploit work, exactly? How would it extract keywords from forms, when forms are ridiculously dynamic per-website, per user, and per form? (Many forms aren't even actually that, but text boxes that are fed directly by JavaScript event handlers into a Websocket, these days.) How do they target these groups using and installing these the NICs, and ensure they're all put in the right place? Do they literally backdoor every device that exists? No meaningful backdoors were ever found in Supermicro devices, for instance, despite immense pressure to find them. The same with session keys, what "session keys" are being compromised? Session keys exist at the TLS level, the application level, and conceptually many others. TLS keys already aren't useful for anything beyond their used connections for instance, and flow identification can vary in many ways, so how would they correlate user-to-flow in order to target attacks? If they're not doing targeted attacks, then what are they doing?

How is it going to exfiltrate that data if the NIC is on an isolated network (e.g. in some mesh topology, because it's only used intra-rack)? How do they plan for that, by exploiting the software stack? If they can exploit the software stack already, why not just compromise the host? You're telling me NSA spooks can in advance make sure your datacenter rack is organized so that RF signals can be used to wirelessly transport data on the spectrum and nobody has ever had proof of this, but they can't just, you know, write a software exploit? Issue a gag order? And that they use this capability with some regularity? If it wasn't regular, why do it in the first place when the risk of discovery is higher? How do they predict these ridiculously variable conditions in advance, and how are they not discovered? And above all, why would all this be something you immediately jump to, instead of just, say, normal infosec style attacks? You can literally buy 0days for COTS software, on the market. Your original post was motivated by fear of some Chinese person working for the Chinese government. Why? Because China is a totalitarian government but also they somehow need university students to make backdoor'd NICs, in conjunction with researchers from Europe who wouldn't, like, detect them? The ruling party controls the entire military and governs the internet and can already decrypt all connections, but they need this too?

This kind of stuff is just sci-fi/mil-tech fantasy scenarios. We can all hash out incredibly-specific ridiculous infosec attacks all day that we could pull off in a controlled environment, but that doesn't mean any of them are actually more useful or viable than others. People on this site desperately want to believe the world is filled with action movie sci-fi hacker scenarios that can just be defeated in a technical one-up kind of way, because it means the solution is purely a technical problem, rather than the real alternative: you will get thrown in a dark jail cell for 500 years without appeal if you don't comply with this order to install a backdoor directly in your datacenter.

Re: Making QUIC Quicker with NIC Offload

#28
post #14
post #13

Earlier quoted context omitted.

and they surely weren't the first to do that either, I assume now.

FYI, it's possible to edit comments to add further thoughts. :)

Only for two hours.

As it turns out, my average time to return from distraction to proofread is a little bit more than two hours.

Re: Making QUIC Quicker with NIC Offload

#29

Earlier quoted context omitted.

What do you mean by privacy issues with QUIC? As I understand it, it’s just another application layer protocol.

Iirc, Brave browser began disabling QUIC because the connected server was able to fingerprint the connecting party, and they deemed it an intentional part of the protocol design. Essentially connecting anonymously to a server is not possible. I'll try and dig up the blog post.

This one?

https://content.sciendo.com/configurable/contentpage/journal...

Re: Making QUIC Quicker with NIC Offload

#30
post #28
post #14

Earlier quoted context omitted.

FYI, it's possible to edit comments to add further thoughts. :)

Only for two hours. As it turns out, my average time to return from distraction to proofread is a little bit more than two hours.

Indeed, that does seem to happen often. Though in GGP's case the reply was posted within a minute of the original comment.
Post reply on HN