Skip to content

Openfire

v5.1.0 Security

This release includes 4 security fixes for security teams reviewing exposed deployments.

Published 17h Communication & Email
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →
This release patches 4 known CVEs

Topics

collaboration jabber java openfire xmpp xmpp-server

Affected surfaces

auth crypto_tls deps breaking_upgrade

Summary

AI summary

Updates SANs, room, and org.xmpp.packet.JID across a mixed release.

Full changelog

Improvement

  • [OF-536] - Upgrade JmDNS from pre 1.0 to 3.6.3
  • [OF-1927] - Show TCP port used for server-to-server connections
  • [OF-2694] - Add support for channel binding
  • [OF-2970] - Have Cache-control headers on HTTP responses
  • [OF-3037] - Admin console page to review failed S2S connection attempts
  • [OF-3074] - Prevent hardcoded IV when encrypting parameters
  • [OF-3075] - Weak SHA1 hash used as key for blowfish
  • [OF-3102] - Improve Embedded DB error handling
  • [OF-3105] - Improve MUC Avatar support
  • [OF-3111] - Gracefully stop Jetty
  • [OF-3115] - Improve detection of improperly ending user session
  • [OF-3122] - Stop by default using Common Name based identities
  • [OF-3128] - PluginMonitor to immediately reload parent/child plugins
  • [OF-3150] - Eliminate unnecessary database lookups for MUC service identifiers by relying on in-memory mucServices data.
  • [OF-3154] - Disable automatic kicking of inactive MUC occupants by default; make behavior configurable.
  • [OF-3159] - Limit iteration over certificate Subject Alternative Names (SANs)
  • [OF-3169] - Fix concurrency, ordering, and flush correctness issues in CachingPubsubPersistenceProvider
  • [OF-3176] - Offload blocking operations from Netty event loop threads to improve performance
  • [OF-3179] - Enforce deterministic ordering of ConnectionCloseListener execution
  • [OF-3181] - Allow static configuration of cluster node ID
  • [OF-3182] - Reuse EventLoopGroup and EventExecutorGroup for outbound S2S connections
  • [OF-3184] - Have a healthcheck in the Docker image
  • [OF-3185] - Improve error handling when inbound S2S does not offer any auth mechanism
  • [OF-3186] - Generate less verbose log messages for network scanners
  • [OF-3195] - Avoid writing closing stream stanza when Netty channel is inactive
  • [OF-3196] - DefaultPubSubPersistenceProvider.loadNodes() has O(n²) complexity causing multi-hour startup times at scale
  • [OF-3202] - Replace queue-emptiness check in PacketsProcessor.isDone() with an explicit completion flag
  • [OF-3203] - HappyEyeballsResolver's 'done' method name can be confusing
  • [OF-3204] - readSerializableMap incorrectly casts key type to String, violating Serializable contract
  • [OF-3206] - Upgrade OJDBC from 23.7.0.25.01 to 23.26.2.0.0
  • [OF-3211] - Make plugin directory destruction timeout configurable
  • [OF-3214] - Check that the payload size does not exceed the node's configured maximum (XEP-0060 §7.1.3.5)
  • [OF-3220] - Server does not parse client ACKs from BOSH requests
  • [OF-3233] - Add timeout/fallback for synchronous cluster statistics request in admin page
  • [OF-3240] - Modernize DB capability detection in DbConnectionManager to reduce stale hard-coded assumptions
  • [OF-3242] - Add partial wildcard support to dnsutil.dnsOverride (for example *.external.com)
  • [OF-3245] - DefaultPubSubPersistenceProvider should use DbConnectionManager large-text helpers for payload columns
  • [OF-3250] - Support Recursive Re-lookup for DNS Override Resolution
  • [OF-3251] - Add explicit IPv6 support to DNS Override
  • [OF-3252] - Update org.apache.commons:commons-dbcp2 from 2.9.0 to 2.14.0 and commons-pool2 from 2.9.0 to 2.13.1
  • [OF-3257] - Guard against timing attacks in ScramSha1SaslServer
  • [OF-3258] - Guard against user enumeration in ScramSha1SaslServer
  • [OF-3260] - Support RFC 7239 Forwarded header in addition to X-Forwarded-*
  • [OF-3261] - Add configuration for trusted reverse proxies when using forwarded headers
  • [OF-3262] - Replace IP-only login tracking with per-username + IP tracking
  • [OF-3264] - IpUtils: handle IPv6 zone/scope ID suffixes in string-based address methods
  • [OF-3268] - Refactor inbound S2S SASL EXTERNAL flow to remove duplicate post-auth checks in SASLAuthentication
  • [OF-3273] - SASLAuthentication accepts mechanisms not advertised for the current connection/session
  • [OF-3275] - Update log4j from 2.25.4 to 2.26.0
  • [OF-3283] - Improve clustered outgoing session setup to reuse routes created by other nodes
  • [OF-3286] - Replace fragmented/inconsistent locking strategy in GroupManager
  • [OF-3288] - Unify cache clearing of paginated and non-paginated group names

Story

  • [OF-3170] - Implement configurable rate limiting for new connections (C2S and S2S)

Task

  • [OF-2554] - Merge docker documentation
  • [OF-2957] - Upgrade to Netty 4.2
  • [OF-3163] - Remove code marked to be removed in Openfire 5.1.0
  • [OF-3207] - Update database used by unit tests (to 38)
  • [OF-3235] - Fix malformed link markup in installation guide (hre instead of href)
  • [OF-3237] - Add Firebird database support to Openfire
  • [OF-3238] - Add CockroachDB database support to Openfire
  • [OF-3239] - Add MariaDB database support to Openfire
  • [OF-3253] - Update org.jsmpp:jsmpp library from version 2.3.10 to 3.0.2
  • [OF-3254] - Update Jaxen
  • [OF-3259] - Phase out legacy property self-signed certificate acceptance
  • [OF-3271] - Improve admin UI labels for idle user kick and ping settings
  • [OF-3289] - Bump slf4j 2.0.17 -> 2.0.18
  • [OF-3290] - Update junit from 6.0.3 to 6.1.0
  • [OF-3291] - Upgrade org.json:json from 20231013 to 20260522
  • [OF-3292] - Remove ResourceServlet (dead code)
  • [OF-3293] - Bump com.twelvemonkeys.imageio 3.12.0 -$gt; 3.13.1
  • [OF-3294] - Bump org.apache.httpcomponents:httpclient 4.5.13 -$gt; 4.5.14
  • [OF-3295] - Update all maven build plugins to latest releases

New Feature

  • [OF-2034] - Add support for XEP-0398 User Avatar to vCard-Based Avatars Conversion
  • [OF-2684] - Add 'demoboot' to Windows distribution
  • [OF-2879] - Add support for XEP-0440 SASL Channel-Binding Type Capability
  • [OF-3099] - PubSub event listening
  • [OF-3101] - Show Profile / vCard data in admin console
  • [OF-3129] - PluginMonitor to offer blocking plugin reload
  • [OF-3141] - Extend JMX to Include All Monitoring Statistics and Expose via Web API
  • [OF-3188] - Add generic support for Service Discovery Extensions
  • [OF-3210] - Support Java 25
  • [OF-3244] - Add page to manage DNS override
  • [OF-3277] - Helper method to determine which keyword to use for limiting an SQL result set

Sub-task

  • [OF-3171] - Implement core rate limiting for new connections
  • [OF-3172] - Add configuration UI for connection rate limiting in the Admin Console
  • [OF-3173] - Expose metrics in Statistics API

Bug

  • [OF-1387] - PubSub Admin Console - No confirmation dialogue when deleting a subscriber
  • [OF-2309] - NPE at bootup when not loading a plugin
  • [OF-3077] - Potential padding oracle CBC-mode encryption
  • [OF-3094] - Client-to-Server SASL EXTERNAL incorrectly queries for authzid
  • [OF-3119] - MacOS HappyEyeballs testAllResultsWhenPreferredHostProvidedSecondButWithinResolutionDelay failures
  • [OF-3121] - Parent plugin classloader destroyed before plugin unloaded
  • [OF-3131] - Chatroom subject not always sent upon join
  • [OF-3142] - Rate-Type Statistic Reads Are Destructive and Affect Other Consumers
  • [OF-3152] - loadHistory(room) does not respect HistoryStrategy's max
  • [OF-3168] - Admin console opens wrong default page when item order attribute differs from XML definition
  • [OF-3187] - AuthCheckFilter exclusions are lost when AdminConsolePlugin restarts
  • [OF-3189] - Fix missing DOAP entries for Service Discovery Extensions
  • [OF-3192] - concurrent.TimeoutException in WebsocketFramePingTask.run
  • [OF-3193] - Silent packet loss when delivering to a closed outgoing server-to-server session
  • [OF-3194] - EntityCapabilitiesManager sends duplicate disco#info requests to clients on login
  • [OF-3199] - loadNode() (single-node overload) throws NullPointerException when loading a node that has a parent
  • [OF-3201] - outgoingServerSessionCreated not called when exception occurs after addOutgoingDomainPair, leaving orphaned route in routing table
  • [OF-3208] - Plugin unloading fails on Windows due to JVM file locks on extracted plugin files
  • [OF-3209] - PluginManager fails to unload/reload plugins on Windows due to orphaned plugin directories being reloaded
  • [OF-3212] - null rootCollectionNode in pubsub.CollectionNode.getSubscription(org.xmpp.packet.JID)
  • [OF-3215] - Invoking Purge on a collection node should not throw exception
  • [OF-3216] - Missing node attribute in disco#info requests breaks XEP-0115 compliance
  • [OF-3217] - Improper handling of extended data forms leads to invalid capability processing
  • [OF-3218] - Missing validation allows malformed disco#info responses to be accepted
  • [OF-3219] - BOSH overactivity detection rejects valid requests
  • [OF-3221] - Server includes redundant ACK attributes in BOSH responses
  • [OF-3243] - DNS Wildcard Pattern Matching in DNSUtil.isNameCoveredByPattern() Needs Dot-Boundary Validation
  • [OF-3256] - Plugin icon missing for some plugins
  • [OF-3272] - Concurrency issue in CSI
  • [OF-3276] - Autosetup should not update admin user when no data provided
  • [OF-3285] - Changes to group sharing visibility are not immediately reflected in users' contact lists
  • [OF-3287] - Group members' user cache not evicted for non-shared groups
  • [OF-3296] - Encrypted XML properties can lose encryption during database migration
  • [OF-3297] - Manual migration code overwrites already-migrated SystemProperty values with their defaults

sha256sum values

0686b30d4fb5e6f7c43bff7071ac425e45a19bbd528e301df065ef8d60355ef5  openfire-5.1.0-1.noarch.rpm
90b21993ba65d98357154183fd12e938547e68cbc59301f69b8506f483580269  openfire_5.1.0_all.deb
5fff05c4a689ae3431d5578f594e37cf7a68a2c0f36380b76d132d79217913c0  openfire_5_1_0.dmg
f72d766957eb09bedcbe8a5f64c38db85684af62bf5282534a162385f7b449ed  openfire_5_1_0.exe
0cc848b56339f07fdcbcbb92dea73a35c00661576d68f1908640ecf7c3b6febc  openfire_5_1_0.tar.gz
a830b0451770d6c8f8db81b3584299f54c48ca8c6d4bf42671325fef0b74c878  openfire_5_1_0_x64.exe
8b3f30505b3996b4b8261a99710ac2387131dac9b5a75fbbf65e9e3419aa22f5  openfire_5_1_0.zip

Security Fixes

  • Guard against timing attacks in ScramSha1SaslServer (OF-3257)
  • Guard against user enumeration in ScramSha1SaslServer (OF-3258)
  • Prevent hardcoded IV when encrypting parameters (OF-3074)
  • Weak SHA1 hash used as key for Blowfish encryption is removed (OF-3075)

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Openfire

Get notified when new releases ship.

Sign up free

About Openfire

Real time collaboration (RTC) server.

All releases →

Related context

Related tools

Beta — feedback welcome: [email protected]