-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
x-pack/auditbeat/module/system/socket: stratify sockets and connections by PID #28713
Conversation
Pinging @elastic/security-external-integrations (Team:Security-External Integrations) |
This pull request does not have a backport label. Could you fix it @efd6? 🙏
NOTE: |
…ns by PID Previously it was possible for two processes to be assigned to the same socket and so flow due to socket sharing. This change prevents that by keying on PID as well as socket and network address.
548037d
to
9b540d7
Compare
💔 Tests Failed
Expand to view the summary
Build stats
Test stats 🧪
Test errors
Expand to view the tests failures
|
Entire collections of socket connections need to be identified when a socket is destroyed so we need to be able to get the actual socket. This approach uses the pid=0 socket as the marker for the socket as a resource as opposed to the pid≠0 which are the executable-socket bindings.
/test |
Checking if the failed test is flaky as tests are passing locally |
This pull request is now in conflicts. Could you fix it? 🙏
|
This pull request is now in conflicts. Could you fix it? 🙏
|
Abandoned |
What does this PR do?
Previously it was possible for two processes to be assigned to the same socket and so flow due to socket sharing. This change prevents that by keying on PID as well as socket and network address.
Why is it important?
The previous state of the code made determination of the processes involved in network flows unreliable in some circumstances reducing its utility significantly in those cases.
Checklist
I have made corresponding changes to the documentationI have made corresponding change to the default configuration filesCHANGELOG.next.asciidoc
orCHANGELOG-developer.next.asciidoc
.Author's Checklist
How to test this PR locally
Test the efficacy of the change by running heavy network traffic with the possibility of address collisions. I achieved this by running multiple (10s) concurrent instances of
nmap
doing repeated complete port scans while also running opensnitch. This usually results in a failure within a couple of minutes in the failing case.Related issues
Use cases
N/A
Screenshots
N/A
Logs
N/A