Update dependency esphome to v2025 [SECURITY]#225
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
Conversation
1988ea0 to
675616a
Compare
768e1ee to
61c7ee4
Compare
4449fb6 to
3544ef1
Compare
cb8797d to
ded02f0
Compare
400d897 to
42a00bd
Compare
cf297cd to
2f198dc
Compare
38b50fd to
9361987
Compare
9361987 to
efc1b05
Compare
auto-merge was automatically disabled
January 23, 2026 14:32
Pull request was closed
efc1b05 to
1903b9d
Compare
auto-merge was automatically disabled
March 27, 2026 02:14
Pull request was closed
1903b9d to
9eae489
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==2024.10.3→==2025.8.1Warning
Some dependencies could not be looked up. Check the warning logs for more information.
GitHub Vulnerability Alerts
CVE-2025-57808
Summary
On the ESP-IDF platform, ESPHome's
web_serverauthentication check can pass incorrectly when the client-supplied base64-encodedAuthorizationvalue is empty or is a substring of the correct value (e.g., correct username with partial password). This allows access toweb_serverfunctionality (including OTA, if enabled) without knowing any information about the correct username or password.Details
The HTTP basic auth check in
web_server_idf'sAsyncWebServerRequest::authenticateonly compares up toauth.value().size() - auth_prefix_lenbytes of the base64-encodeduser:passstring. This means a client-provided valuer likedXNlcjpz(user:s) will pass the check when the correct value is much longer, e.g.,dXNlcjpzb21lcmVhbGx5bG9uZ3Bhc3M=(user:somereallylongpass).Furthermore, the check will also pass when the supplied value is the empty string, which removes the need to know (or brute force) the username. A browser won't generally issue such a request, but it can easily be done by manually constructing the
Authorizaztionrequest header (e.g., viacurl).PoC
Configure ESPHome as follows:
In a browser, you can correctly log in by supplying username
userand passwordsomereallylongpass... but you can also incorrectly log in by supplying substrings of the password whose base64-encoded digest matches a prefix of the correct digest. (For example, I was able to log into an ESPHome device so configured by supplying passwordsome... or even justs.)You can also use a tool like
curlto manually set anAuthorizationrequest header that always passes the check without any knowledge of the username:Impact
This vulnerability effectively nullifies basic auth support for the ESP-IDF
web_server, allowing auth bypass from another device on the local network with no knowledge of the correct username or password required.Remediation
This vulnerability is fixed in 2025.8.1 and later.
For older versions, disabling the
web_servercomponent on ESP-IDF devices may be prudent, particularly if OTA updates throughweb_serverare enabled.Severity
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NRelease Notes
esphome/esphome (esphome)
v2025.8.1Compare Source
USE_API_HOMEASSISTANT_SERVICESif usingtag_scannedaction esphome#10316 by @jesserockzv2025.8.0Compare Source
Full list of changes
New Features
set_min_power&set_max_poweractions forFloatOutputesphome#8934 by @DjordjeMandic (new-feature)switch.controlautomation action esphome#10105 by @edwardtfn (new-feature)control()method to API esphome#10118 by @edwardtfn (new-feature)on_stateesphome#10108 by @edwardtfn (new-feature)device_idto be blank on entities esphome#10217 by @jesserockz (new-feature)New Components
New Platforms
Breaking Changes
touch_pad_read_filteredesphome#9957 by @bdraco (breaking-change)throttlewith native filters esphome#10019 by @kbx81 (breaking-change)throttlewith native filters esphome#10196 by @kbx81 (breaking-change)All changes
Show
Arudinotypo esphome#9404 by @ximexbrighrnessesphome#9491 by @ximexby-code-ownerlabelling esphome#9589 by @jesserockzneeds-docslabelling esphome#9591 by @jesserockzconst.pyesphome#9741 by @DT-art1millis_64_rollover monotonic on SMP esphome#9716 by @RubenKelevraprocess_batch_using stack-allocated PacketInfo array esphome#9703 by @bdracoempty_esphome#9743 by @bdracogneneralanddivisonesphome#9808 by @ximexon_receiveto const esphome#9811 by @jesserockzlooping_components_before setup blocking phase esphome#9820 by @bdracoi2c_master_probeto scan i2c bus esphome#9831 by @jesserockzDeduplicatoresphome#9855 by @kbx81accuracy_decimals=0as default for "target" entities esphome#9842 by @bharvey88Deduplicatorfor sensors esphome#9584 by @kbx81Deduplicatorfor sensors esphome#9863 by @kbx81set_min_power&set_max_poweractions forFloatOutputesphome#8934 by @DjordjeMandic (new-feature)throttle_with_priorityesphome#9937 by @kbx81touch_pad_read_filteredesphome#9957 by @bdraco (breaking-change)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.