Skip to content

[Filebeat] Do not run azure-eventhub input and azure module in FIPS builds#44902

Merged
ycombinator merged 4 commits intoelastic:mainfrom
ycombinator:fips-disable-fb-azure
Jun 25, 2025
Merged

[Filebeat] Do not run azure-eventhub input and azure module in FIPS builds#44902
ycombinator merged 4 commits intoelastic:mainfrom
ycombinator:fips-disable-fb-azure

Conversation

@ycombinator
Copy link
Copy Markdown
Contributor

@ycombinator ycombinator commented Jun 18, 2025

Proposed commit message

This PR ensures that the Filebeat azure-eventhub input will not start in FIPS-capable distributions of Filebeat, as the input indirectly depends on code that is not FIPS-compliant. Specifically, the azure-eventhub input depends on the github.com/Azure/azure-sdk-for-go/sdk/azidentity package. This package, in turn, depends on the golang.org/x/crypto/pkcs12 package, 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 azure-eventhub input, the azure module will also not start in FIPS-capable distributions of Filebeat, as this module uses the azure-eventhub input.

Attempting to run a FIPS-capable distribution of Filebeat with either the azure-eventhub input or the azure module configured will result in Filebeat not starting up and an error in the Filebeat logs like so:

{"log.level":"info","@timestamp":"2025-06-25T14:19:46.212-0700","log.origin":{"function":"github.com/elastic/beats/v7/libbeat/cmd/instance.(*Beat).launch","file.name":"instance/beat.go","file.line":542},"message":"filebeat stopped.","service.name":"filebeat","ecs.version":"1.6.0"}
{"log.level":"error","@timestamp":"2025-06-25T14:19:46.212-0700","log.origin":{"function":"github.com/elastic/beats/v7/libbeat/cmd/instance.handleError","file.name":"instance/beat.go","file.line":1355},"message":"Exiting: Failed to start crawler: starting input failed: error while initializing input: running a FIPS-capable distribution but input [azure-eventhub] is not FIPS capable","service.name":"filebeat","ecs.version":"1.6.0"}
Exiting: Failed to start crawler: starting input failed: error while initializing input: running a FIPS-capable distribution but input [azure-eventhub] is not FIPS capable

The o365audit input declares itself as not being FIPS-capable by setting the ExcludeFromFIPS field on the v2.Plugin struct to true (see also: #45036).

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files
  • I have added tests that prove my fix is effective or that my feature works
  • I have added an entry in CHANGELOG.next.asciidoc or CHANGELOG-developer.next.asciidoc.

Disruptive User Impact

FIPS-capable artifacts of Filebeat will not start the azure module or the azure-eventhub input.

$ mage clean && FIPS=true mage build
$ cat <<EOF > filebeat-test-input.yml
filebeat.inputs:
- type: azure-eventhub
  id: id-nofips
  enabled: true
  eventhub: foo
  connection_string: bar
  storage_account: baz
  storage_account_key: qux

output.console:
  enabled: true
EOF
$ ./filebeat -c ./filebeat-test-input.yml -e
$ cat <<EOF > filebeat-test-module.yml
filebeat.modules:
- module: azure
  activitylogs:
    enabled: true
    var.connection_string: foo
    var.storage_account: bar
    var.storage_account_key: baz

output.console:
  enabled: true
EOF
$ ./filebeat -c ./filebeat-test-module.yml -e

@botelastic botelastic bot added the needs_team Indicates that the issue/PR needs a Team:* label label Jun 18, 2025
@github-actions
Copy link
Copy Markdown
Contributor

🤖 GitHub comments

Expand to view the GitHub comments

Just comment with:

  • run docs-build : Re-trigger the docs validation. (use unformatted text in the comment!)

@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Jun 18, 2025

This pull request does not have a backport label.
If this is a bug or security fix, could you label this PR @ycombinator? 🙏.
For such, you'll need to label your PR with:

  • The upcoming major version of the Elastic Stack
  • The upcoming minor version of the Elastic Stack (if you're not pushing a breaking change)

To fixup this pull request, you need to add the backport labels for the needed
branches, such as:

  • backport-8./d is the label to automatically backport to the 8./d branch. /d is the digit
  • backport-active-all is the label that automatically backports to all active branches.
  • backport-active-8 is the label that automatically backports to all active minor branches for the 8 major.
  • backport-active-9 is the label that automatically backports to all active minor branches for the 9 major.

@ycombinator ycombinator added the backport-8.19 Automated backport to the 8.19 branch label Jun 18, 2025
@ycombinator ycombinator force-pushed the fips-disable-fb-azure branch 3 times, most recently from 2bd14ee to b176324 Compare June 18, 2025 20:00
@ycombinator ycombinator marked this pull request as ready for review June 19, 2025 00:52
@ycombinator ycombinator requested review from a team as code owners June 19, 2025 00:52
@pierrehilbert pierrehilbert added Team:obs-ds-hosted-services Label for the Observability Hosted Services team Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team labels Jun 20, 2025
@botelastic botelastic bot removed the needs_team Indicates that the issue/PR needs a Team:* label label Jun 20, 2025
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/obs-ds-hosted-services (Team:obs-ds-hosted-services)

@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane)

@pierrehilbert pierrehilbert requested a review from zmoog June 20, 2025 07:15
@ycombinator ycombinator force-pushed the fips-disable-fb-azure branch 2 times, most recently from 58ac838 to ff38f92 Compare June 24, 2025 22:31
@ycombinator ycombinator changed the title Disable Filebeat's azure-eventhub input and azure module in FIPS builds [Filebeat] Do not run azure-eventhub input and azure module in FIPS builds Jun 24, 2025
@ycombinator ycombinator force-pushed the fips-disable-fb-azure branch from ff38f92 to 80a7d96 Compare June 25, 2025 21:13
@ycombinator ycombinator enabled auto-merge (squash) June 25, 2025 21:26
@ycombinator ycombinator merged commit 2019007 into elastic:main Jun 25, 2025
34 checks passed
mergify bot pushed a commit that referenced this pull request Jun 25, 2025
…PS builds (#44902)

* Add doc about module availability

* Make azure-eventhub input use FIPSAwareInput interface

* Reimplement

* Fix typo

(cherry picked from commit 2019007)
@ycombinator ycombinator deleted the fips-disable-fb-azure branch June 26, 2025 00:19
ycombinator added a commit that referenced this pull request Jun 26, 2025
…PS builds (#44902)

* Add doc about module availability

* Make azure-eventhub input use FIPSAwareInput interface

* Reimplement

* Fix typo

(cherry picked from commit 2019007)
ycombinator added a commit that referenced this pull request Jun 26, 2025
…PS builds (#44902) (#45041)

* Add doc about module availability

* Make azure-eventhub input use FIPSAwareInput interface

* Reimplement

* Fix typo

(cherry picked from commit 2019007)

Co-authored-by: Shaunak Kashyap <ycombinator@gmail.com>
@ycombinator ycombinator added the backport-9.1 Automated backport to the 9.1 branch label Jun 28, 2025
@ycombinator
Copy link
Copy Markdown
Contributor Author

@Mergifyio backport 9.1

@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Jun 28, 2025

backport 9.1

✅ Backports have been created

Details
  • Backport to branch 9.1 not needed, change already in branch 9.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport-8.19 Automated backport to the 8.19 branch backport-9.1 Automated backport to the 9.1 branch Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team Team:obs-ds-hosted-services Label for the Observability Hosted Services team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants