-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Crash dumps and/or stack traces #1617
Comments
These scanners don't matter at all for security, they are supposed to be used only as hints where could be bugs (and more often just spam false-positives). What's important is to not introduce a security issue when adding this feature. Not to make automatic scanners happy. Also, writing down what I said on the today's call: (plus some more thoughts)
From my side I'd recommend trying to reproduce the issue locally / on test deployment instead and just plug GDB (but yes, it requires significantly more effort than just looking at logs from production, unfortunately). |
Will "encrypt to mrsigner" be simple enough to work in the corrupted memory state? |
I think this may indeed simplify the encryption flow (by e.g., skipping DEK generation + encryption if using KEM) and mitigate the risk of the encryption key corruption when in a corrupted memory state. However, the dump encryption may still occur unreliably or insecurely during a crash, e.g., the data used by the encryption routine or the keyrequest used by the hardware key retrieval can be corrupted. |
Please also see the notes from our discussion: #1616 (first topic).
I disagree in the sense that vulnerability scanners (and their final reports) matter for customers, especially in strictly regulated areas. So the request to "make scanners happy" is legitimate in certain business areas. |
But you originally said:
Which completely twists the priorities. The most important thing is to not have security vulnerabilities, not to hide them from scanners or silence scanners. |
Ok, I guess I formulated that sentence wrong. I agree with @mkow; the original sense in my sentence was to "get rid of security vulnerabilities, and then make sure nothing is flagged by security scanner tools". |
Description of the feature
This is a request from a particular Gramine user.
There is a C++ application that runs on Gramine in a production environment. Analysis of crashes in production traditionally relies on a core dump. Developers and operators are familiar with GDB and know how to root cause crashes using GDB.
Gramine does not support core dump. Given the threat model of SGX, it is unclear how exactly to produce a core dump -- what does it mean to produce a secure core dump? Or if the core dump cannot be made secure, how to lower the possibility of accidental data leaks on crashes?
Alternatively, Gramine could support logging crash stack traces.
Caveats:
There are various open source libraries such as backward-cpp. But it's not clear that the handlers (the code in that library) to print stack traces is async-safe.
TLDR: Several questions:
Why Gramine should implement it?
It's a reasonable request from customer.
The text was updated successfully, but these errors were encountered: