1362 Commits

Author SHA1 Message Date
R.B. Boyer
00d74abc4a
metadata: memoize the parsed build versions (#22113)
There will only be a small set of consul build versions that a single consul
server will witness. Inside of metadata.IsConsulServer we use a very
expensive function in the hashicorp/go-version library to parse these into
read-only *version.Version structs all over Consul.

Memoize these in a package cache map. Likely the thing will only have like
2 keys in it ever over the life of the process.
2025-02-03 16:22:10 -06:00
Nathan Coleman
3e0c098890
Consume latest version of consul-awsauth dependency (#22109)
* Consume latest version of consul-awsauth dependency

* Add changelog entry
2025-01-30 18:13:26 -05:00
Deniz Onur Duzgun
a9ff9e016f
sec: bump go and deps versions (#22084)
* security: bump go and deps versions

* add changelog

* fix go toolchained version

* update changelog message
2025-01-21 11:32:08 -05:00
Anita Akaeze
88539f1b7e
NET-11798: Set APIGateway TLSConfig if unset or empty (#21984)
* NET-11798: Set APIGateway TLSConfig if unset or empty

* add changelog

* update golden file tests

* add missing golden files

* Update .changelog/21984.txt

Co-authored-by: Nathan Coleman <nathan.coleman@hashicorp.com>

* remove use of reflect library and check if object is empty instead

---------

Co-authored-by: Nathan Coleman <nathan.coleman@hashicorp.com>
2025-01-15 09:13:28 -08:00
sarahalsmiller
a5c7ecc540
[Security] Bump net packages to resolve GO-2024-3333 (#22021)
* bump net packages

* add changelog
2024-12-18 22:55:56 +00:00
sarahalsmiller
2e337ed58e
Suppress redhat linux CVEs (#22015)
suppress redhat linux CVEs
2024-12-18 17:24:28 +00:00
sarahalsmiller
a1f00e4548
Update UBI Image (#22011)
* update image

* change log
2024-12-17 15:56:00 -06:00
sarahalsmiller
c181a533fc
[Security] Bump crypto libraries (#22001)
* update crypto libraries

* update crypto libraries

* add changelog, suppress vulnerability that hasn't been fixed yet
2024-12-16 15:21:10 -06:00
Anita Akaeze
4b7f7a8a16
[Security] SECVULN-8621: Fix XSS Vulnerability where content-type header wasn't explicitly set in API requests (#21930)
* Fix XSS Vulnerability where content-type header wasn't explicitly set in API requests

* fix failing unit test
2024-11-27 09:30:14 -08:00
R.B. Boyer
c81dc8c551
state: ensure that identical manual virtual IP updates result in not bumping the modify indexes (#21909)
The consul-k8s endpoints controller issues catalog register and manual virtual ip
updates without first checking to see if the updates would be effectively not
changing anything. This is supposed to be reasonable because the state store
functions do the check for a no-op update and should discard repeat updates so
that downstream blocking queries watching one of the resources don't fire
pointlessly (and CPU wastefully).

While this is true for the check/service/node catalog updates, it is not true for
the "manual virtual ip" updates triggered by the PUT /v1/internal/service-virtual-ip.
Forcing the connect injector pod to recycle while watching some lightly
modified FSM code can show that a lot of updates are of the update list of ips
from [A] to [A]. Immediately following this stray update you can see a lot of
activity in proxycfg and xds packages waking up due to blocking queries
triggered by this.

This PR skips updates that change nothing both:

- at the RPC layer before passing it to raft (ideally)
- if the write does make it through raft and get applied to the FSM (failsafe)
2024-11-22 11:16:38 -06:00
John Murret
3c3bdba926
NET-11737 - sec vulnerability - remediate ability to use bexpr to filter results without ACL read on endpoint (#21950)
* NET-11737 - sec vulnerability - remediate ability to use bexpr to filter results without ACL read on endpoint

* add changelog

* update test descriptions to make more sense
2024-11-20 16:26:12 -07:00
Dhia Ayachi
21cca2dc5b
Fix PeerUpstreamEndpoints and UpstreamPeerTrustBundles to only Cancel watch when needed, otherwise keep the watch active (#21871)
* fix to only reset peering watches when no other target need watching

* remove unused logger

* add changelog

* Update .changelog/21871.txt

Co-authored-by: Nitya Dhanushkodi <nitya@hashicorp.com>

---------

Co-authored-by: Nitya Dhanushkodi <nitya@hashicorp.com>
2024-11-19 09:36:13 -05:00
sarahalsmiller
6662e48363
Update JWT to resolve CVE-2024-51744 (#21951)
* update jwt package

* add changelog
2024-11-18 13:51:35 -06:00
sarahalsmiller
32ce33825d
[Security] Secvuln 8633 Consul configuration allowed repeated keys (#21908)
* upgrade hcl package and account for possiblity of duplicates existing already in the cache

* upgrade to new tag

* add defensive line to prevent potential forever loop

* o mod tidy and changelog

* Update acl/policy.go

* fix raft reversion

* go mod tidy

* fix test

* remove duplicate key in test

* remove duplicates from test cases

* clean up

* go mod tidy

* go mod tidy

* pull in new hcl tag
2024-11-14 09:57:08 -06:00
R.B. Boyer
a2e69236a2
v2: remove HCP Link integration (#21883)
Also prevent de-registered retired v2 types from being restored from a
snapshot, such as these hcp resources. Without doing this, anyone with
any of these types in their state store will retain them forever with no
avenue to remove them.
2024-11-07 11:47:55 -06:00
Yasmin Lorin Kaygalak
32515c77f2
Added the docs for all the grafana dashboards. (#21795)
* Added the docs for all the grafana dashboards.

 Author:   Yasmin Lorin Kaygalak <ykaygala@villanova.edu>

Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>

Co-authored-by: Blake Covarrubias <blake@covarrubi.as>
2024-11-05 10:06:29 -05:00
Tom Davies
31aae80389
Allow multiple endpoints in Envoy clusters configured with hostnames (#21655)
* xds: allow multiple endpoints for strict_dns

* xds: fixes typo in multi hostname warning
2024-10-28 12:18:04 -07:00
Michael Zalimeni
d9206fc7e2
[NET-1151 NET-11228] security: Add request normalization and header match options to prevent L7 intentions bypass (#21816)
mesh: add options for HTTP incoming request normalization

Expose global mesh configuration to enforce inbound HTTP request
normalization on mesh traffic via Envoy xDS config.

mesh: enable inbound URL path normalization by default

mesh: add support for L7 header match contains and ignore_case

Enable partial string and case-insensitive matching in L7 intentions
header match rules.

ui: support L7 header match contains and ignore_case

Co-authored-by: Phil Renaud <phil@riotindustries.com>

test: add request normalization integration bats tests

Add both "positive" and "negative" test suites, showing normalization in
action as well as expected results when it is not enabled, for the same
set of test cases.

Also add some alternative service container test helpers for verifying
raw HTTP request paths, which is difficult to do with Fortio.

docs: update security and reference docs for L7 intentions bypass prevention

- Update security docs with best practices for service intentions
  configuration
- Update configuration entry references for mesh and intentions to
  reflect new values and add guidance on usage
2024-10-16 12:23:33 -04:00
Yasmin Lorin Kaygalak
738acfee1a
Adds grafana dashboards (#21806) 2024-10-09 13:30:28 -04:00
R.B. Boyer
1986c558a8
api: remove dependency on proto-public, protobuf, and grpc (#21780) 2024-09-23 15:14:39 -05:00
Dhia Ayachi
39104a3ce1
Update raft to 1.7.0 and add configuration for prevote (#21758)
* update raft to 1.7.0

* add config to disable raft prevote

* add changelog
2024-09-20 10:35:48 -04:00
Dhia Ayachi
fe820d561a
Upgrade ubi image to 9.4 (#21750)
* upgrade go to 1.23.1, upgrade ubi image to 9.4

* add changelog

* revert go version upgrade
2024-09-17 11:48:02 -04:00
Phil Renaud
d315ff1df8
[ui] Pin ansi-html to 0.0.8 (#21735)
Pin ansi-html to 0.0.8
2024-09-16 11:22:00 -04:00
Phil Renaud
f924a017b2
[ui] Codemirror resolution pinned in package.json (#21715)
Codemirror pinned
2024-09-13 20:32:02 +00:00
Michael Zalimeni
c40eecf8f9
security: update alpine base image to 3.20 (#21729)
* security: update alpine base image to 3.20

* security: update scan config to remove old triage exceptions
2024-09-13 19:02:11 +00:00
Phil Renaud
de281cbfb7
[ui] codemirror lint removal (#21726)
* ui: remove json linting dependency

* Remove modes from codemirror change hooks

* Modes and line numbers re-added, linting still removed, old underscore removed

* Changelog added

---------

Co-authored-by: dduzgun-security <deniz.duzgun@hashicorp.com>
2024-09-13 13:59:40 -04:00
Phil Renaud
9bab2ed939
[ui] Markdown-it pinned (#21717)
Markdown-it pinned
2024-09-12 18:15:12 -04:00
Phil Renaud
0cc0fa7188
[ui] Simple url sanitization for get-env and document.cookie (#21711)
Simple url sanitization for get-env and document.cookie
2024-09-12 12:27:22 -04:00
John Maguire
a3ac555a5e
[NET-10952] fix cluster dns lookup family to gracefully handle ipv6 (#21703)
* update jwks cluster creation to gracefully handle ipv6

* update unit tests for dns lookup family

* Add changelog
2024-09-12 15:37:36 +00:00
sarahalsmiller
320b708b9f
Bump Envoy, remove support for unsupported versions (#21616)
* bump envoy

* changelog

* drop breaking change note

* update docs

* udpate port tests
2024-09-12 15:32:18 +00:00
Phil Renaud
35ffb312b0
[ui] Pin a newer version of Braces (#21710)
Pin a newer version of Braces
2024-09-11 16:24:58 -04:00
sarahalsmiller
07fae7bb0b
[Security] Fix XSS Vulnerability where content-type header wasn't explicitly set (#21704)
* explicitly add content-type anywhere possible and add middleware to set and warn

* added tests, fixed typo

* clean up unused constants

* changelog

* fix call order in middleware
2024-09-11 14:23:21 -05:00
Anita Akaeze
7653ffb0a5
security: Upgrade Go to 1.22.7 (#21705)
* security: Upgrade Go to 1.22.7

* add changelog
2024-09-10 15:07:05 -07:00
R.B. Boyer
3e6f1c1fe1
remove v2 tenancy, catalog, and mesh (#21592)
* remove v2 tenancy, catalog, and mesh

- Inline the v2tenancy experiment to false

- Inline the resource-apis experiment to false

- Inline the hcp-v2-resource-apis experiment to false

- Remove ACL policy templates and rule language changes related to
  workload identities (a v2-only concept) (e.g. identity and
  identity_prefix)

- Update the gRPC endpoint used by consul-dataplane to no longer respond
  specially for v2

- Remove stray v2 references scattered throughout the DNS v1.5 newer
  implementation.

* changelog

* go mod tidy on consul containers

* lint fixes from ENT

---------

Co-authored-by: John Murret <john.murret@hashicorp.com>
2024-09-05 08:50:46 -06:00
Deniz Onur Duzgun
64683180f3
security(deps): bump aws-sdk-go to v1.55.5 (#21684)
* security(deps): bump aws-sdk-go to v1.55.5

* add changelog

* edit changelog
2024-08-29 17:04:51 +00:00
Nitya Dhanushkodi
ed738a6f98
fix: use Envoy's default for validate_clusters to fix breaking routes when some backend clusters don't exist (#21587) 2024-08-19 22:39:28 -07:00
John Maguire
1fa428552b
[NET-10719] Fix cluster generation for jwt clusters for external jwt providers (#21604)
* Fix cluster generation for jwt clusters for external jwt providers

* add changelog
2024-08-14 15:41:02 -04:00
sarahalsmiller
929d602dbb
ui: Upgrade d3 packages to update color dependency (#21588)
* upgrade d3 packages to update color dependency

* yarn package bump

* deps moved into devdeps

---------

Co-authored-by: Phil Renaud <phil@riotindustries.com>
2024-08-12 09:52:16 -04:00
John Maguire
c0faddbe1f
[NET-10246] use correct enterprise meta for service name for LinkedService (#21382)
* use correct enterprise meta for service name for LinkedService

* add changelog
2024-07-10 10:55:53 -04:00
Nathan Coleman
8d2370da76
[NET-10290] Update ENVOY_VERSIONS (#21524)
* [NET-10290] Update ENVOY_VERSIONS

* Add changelog entry

* Link to CVE for more info in changelog entry

Co-authored-by: Deniz Onur Duzgun <59659739+dduzgun-security@users.noreply.github.com>

---------

Co-authored-by: Deniz Onur Duzgun <59659739+dduzgun-security@users.noreply.github.com>
2024-07-08 18:59:51 -04:00
Phil Renaud
dce6241869
[ui] File-specified deps for consul-ui (#21378)
* Namespaced and file-specified deps

* Pinning to a specific version of tailwind and setting config for js packages to come from npmjs

* Pin glob instead of reverting tailwind or any other (grand)parent dependency

* ember-cli-build fixed path resolution for now-namespaced submodules

* Dropping the namespace prefix and relying on relative pathing
2024-07-08 16:36:29 -04:00
Dan Stough
a251f8ad80
fix(dns): spam ttl logs for prepared queries (#21381) 2024-07-08 10:34:00 -04:00
Dan Stough
763cd0bffb
fix(txn): validate verbs (#21519)
* fix(txn): validate verbs

* changelog
2024-07-05 14:51:20 -04:00
sarahalsmiller
f3649e16a7
NET-10288-Bump-go-to-resolve-CVE-2024-24791 (#21507)
* bump go version

* changelog

* Update .changelog/21507.txt

* Update go.mod

Co-authored-by: Deniz Onur Duzgun <59659739+dduzgun-security@users.noreply.github.com>

* go mod tidy

---------

Co-authored-by: Deniz Onur Duzgun <59659739+dduzgun-security@users.noreply.github.com>
2024-07-03 12:47:20 -05:00
sarahalsmiller
6f31bfebbe
Update retryable-http-client to resolve CVE-2024-6104 (#21384)
* update retryable-http-client

* changelog
2024-07-02 10:12:13 -05:00
Dan Stough
a4a3aec567
fix(dns): bug with standard lookup tags not working; SRV questions returning duplicate hostnames (#21361) 2024-06-25 13:42:25 -04:00
sarahalsmiller
c18c911ac8
[Security] Close cross scripting vulnerability (#21342)
* close vulnerability

* add changelog
2024-06-17 13:54:37 -04:00
Deniz Onur Duzgun
7a19d2e7a4
security: fix AliasCheck panic (#21339)
* security: fix AliasCheck panic

* add changelog
2024-06-14 11:03:10 -04:00
sarahalsmiller
2cdc387bd3
Bump Envoy Versions (#21277)
* update envoy versions

* add changelog

* update nightly integrations
2024-06-10 15:29:26 +00:00
Dhia Ayachi
2631ec843a
update go version to 1.22.4 (#21265)
* update go version to 1.22.4

* add changelog
2024-06-06 10:46:05 -04:00