[Openvpn-devel,v1] openvpnserv: fix off-by-one input validation

Message ID 20260831184732.3417-1-gert@greenie.muc.de
State New
Headers
Series [Openvpn-devel,v1] openvpnserv: fix off-by-one input validation |

Commit Message

Gert Doering Aug. 31, 2026, 6:47 p.m. UTC
  From: Heiko Hund <heiko@ist.eigentlich.net>

Code checked for a hypothetical third trailing NUL character,
instead of the second. Could read one extra octet beyond the buffer if
it is used up by the data completely.

Discovered and reported by BreachX Zero Day Labs, using Typhon AI Mil v2.
Contributing Researcher: Vivek Parikh.

Reported-by: Vivek Parikh <vivek.parikh@breachx.ai>
CVE: 2026-78221
Change-Id: I1a181d65ad0d5e3765f57373a6ee223ede909dea
Signed-off-by: Heiko Hund <heiko@ist.eigentlich.net>
Acked-by: Razvan Cojocaru <razvanc@mailbox.org>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1888
---

This change was reviewed on Gerrit and approved by at least one
developer. I request to merge it to master.

Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1888
This mail reflects revision 1 of this Change.

Acked-by according to Gerrit (reflected above):
Razvan Cojocaru <razvanc@mailbox.org>
  

Comments

Gert Doering Sept. 1, 2026, 2:27 p.m. UTC | #1
Things you find while fixing something else :-) - technically maybe
not "part of the CVE finding", but since it got fixed in the same
PR I've tagged all commits with it.

Your patch has been applied to the master and release/2.7 branch.

2.6 does not have the NRPT code yet.

commit c5308c026f837215f6f7eccad82b5c3601a7b418 (master)
commit 99f46d12d4607021f8a0bdc55d4e454ecde4df2f (release/2.7)
Author: Heiko Hund
Date:   Mon Aug 31 20:47:26 2026 +0200

     openvpnserv: fix off-by-one input validation

     Signed-off-by: Heiko Hund <heiko@ist.eigentlich.net>
     Acked-by: Razvan Cojocaru <razvanc@mailbox.org>
     Acked-by: Arne Schwabe <arne@rfc2549.org>
     Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1888
     Message-Id: <20260831184732.3417-1-gert@greenie.muc.de>
     URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg38856.html
     Signed-off-by: Gert Doering <gert@greenie.muc.de>


--
kind regards,

Gert Doering
  

Patch

diff --git a/src/openvpnserv/interactive.c b/src/openvpnserv/interactive.c
index 0c6e23f..d2288b9 100644
--- a/src/openvpnserv/interactive.c
+++ b/src/openvpnserv/interactive.c
@@ -2959,7 +2959,7 @@ 
         const char *rdom = msg->resolve_domains;
         size_t rdom_size = sizeof(msg->resolve_domains);
         size_t rdom_len = strlen(rdom);
-        if (rdom_len && (rdom_len + 1 >= rdom_size || rdom[rdom_len + 2] != 0))
+        if (rdom_len && (rdom_len + 1 >= rdom_size || rdom[rdom_len + 1] != 0))
         {
             return ERROR_MESSAGE_DATA;
         }