-
Notifications
You must be signed in to change notification settings - Fork 5k
[Filebeat] Do not run o365audit input and o365 module in FIPS builds
#44909
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
Conversation
🤖 GitHub commentsExpand to view the GitHub comments
Just comment with:
|
|
This pull request does not have a backport label.
To fixup this pull request, you need to add the backport labels for the needed
|
3815c3a to
f592d35
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like two PRs, one enabling and one that is what's described on the tin. Could we separate them? Also, please include the import path that leads to the concerning import.
Created #44920 to enable the module exclusion. Will rework this PR here to only be about what's on the tin once the enabling PR is merged. |
Update the PR description. Let me know if that looks good to you. |
Thanks. Crystal clear now. |
|
Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane) |
354eb4c to
0e98f9d
Compare
|
@ycombinator Can you update the title and propose commit message to explain how this works? |
o365audit input and o365 module in FIPS buildso365audit input and o365 module in FIPS builds
Done. Let me know if you want me to include the implementation notes, i.e. use of the |
|
I'd like the implementation details there. |
Added. |
efd6
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks.
(please make sure to appropriately wrap the commit message)
|
I was testing the changes in this PR again this morning and I'm seeing some flaky behavior. Sometimes Filebeat stops with the "Exiting: Failed to start crawler: starting input failed: running a FIPS-capable distribution but input [o365audit] is not FIPS capable" error message as expected but sometimes it just hangs and never exits. Investigating... |
… be excluded from FIPS builds
c185af9 to
daaddd6
Compare
Found a corner-case bug in Filebeat unrelated to this PR: #45034 As such, this PR here is still good to go. |
…lds (#44909) * Return error in FIPS mode if input wants to opt-out of FIPS distributions * Add ability for Filebeat plugins (inputs) to specify that they should be excluded from FIPS builds * Remove ExcludeForFIPS implementation * Make o365 input use FIPSAwareInput interface * Remove debugging statement * Adding godoc comments for implementations of the IsFIPSCapable() method * Add doc about module availability * Reimplementation * Remove duplicate imports (cherry picked from commit e0e464a)
…lds (#44909) * Return error in FIPS mode if input wants to opt-out of FIPS distributions * Add ability for Filebeat plugins (inputs) to specify that they should be excluded from FIPS builds * Remove ExcludeForFIPS implementation * Make o365 input use FIPSAwareInput interface * Remove debugging statement * Adding godoc comments for implementations of the IsFIPSCapable() method * Add doc about module availability * Reimplementation * Remove duplicate imports (cherry picked from commit e0e464a)
…lds (#44909) (#45040) * Return error in FIPS mode if input wants to opt-out of FIPS distributions * Add ability for Filebeat plugins (inputs) to specify that they should be excluded from FIPS builds * Remove ExcludeForFIPS implementation * Make o365 input use FIPSAwareInput interface * Remove debugging statement * Adding godoc comments for implementations of the IsFIPSCapable() method * Add doc about module availability * Reimplementation * Remove duplicate imports (cherry picked from commit e0e464a) Co-authored-by: Shaunak Kashyap <[email protected]>
|
@Mergifyio backport 9.1 |
✅ Backports have been createdDetails
|
Proposed commit message
This PR ensures that the Filebeat
o365auditinput will not start in FIPS-capable distributions of Filebeat, as the input indirectly depends on code that is not FIPS-compliant. Specifically, theo365auditinput depends on thegithub.zerozr99.workers.dev/Azure/azure-sdk-for-go/sdk/azidentitypackage. This package, in turn, depends on thegolang.org/x/crypto/pkcs12package, which is not FIPS-compliant. Further, the SDK doesn't plan to offer a way to disable the use of this package at compile time (see Azure/azure-sdk-for-go#24336).In addition to the
o365auditinput, theo365module will also not start in FIPS-capable distributions of Filebeat, as this module uses theo365auditinput.Attempting to run a FIPS-capable distribution of Filebeat with either the
o365auditinput or theo365module configured will result in Filebeat not starting up and an error in the Filebeat logs like so:The
o365auditinput declares itself as not being FIPS-capable by setting theExcludeFromFIPSfield on thev2.Pluginstruct totrue(see also: #45036).Checklist
I have made corresponding change to the default configuration filesI have added tests that prove my fix is effective or that my feature worksI have added an entry inCHANGELOG.next.asciidocorCHANGELOG-developer.next.asciidoc.Disruptive User Impact
FIPS-capable artifacts of Filebeat will not start the
o365module or theo365auditinput.