VYPR
Medium severity6.5NVD Advisory· Published Mar 27, 2026· Updated Apr 20, 2026

CVE-2026-33904

CVE-2026-33904

Description

Ella Core is a 5G core designed for private networks. Prior to version 1.7.0, a deadlock in the AMF's SCTP notification handler causes the entire AMF control plane to hang until the process is restarted. An attacker with access to the N2 interface can cause Ella Core to hang, resulting in a denial of service for all subscribers. Version 1.7.0 adds deferred Radio cleanup in serveConn SCTP server so that every connection exit path removes the radio. Remove the stale-entry scan from SCTP Notification handling.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
github.com/ellanetworks/coreGo
< 1.7.01.7.0

Affected products

1

Patches

1
999f606c5cae

fix: radio cleanup on SCTP notification (#1141)

https://github.com/ellanetworks/coreGuillaume BelangerMar 20, 2026via ghsa
2 files changed · +8 13
  • internal/amf/ngap/dispatcher.go+0 13 modified
    @@ -9,7 +9,6 @@ package ngap
     
     import (
     	"context"
    -	"reflect"
     
     	amfContext "github.com/ellanetworks/core/internal/amf/context"
     	"github.com/ellanetworks/core/internal/amf/sctp"
    @@ -232,18 +231,6 @@ func HandleSCTPNotification(conn *sctp.SCTPConn, notification sctp.Notification)
     		return
     	}
     
    -	amf.Mutex.Lock()
    -
    -	for _, amfRan := range amf.Radios {
    -		errorConn := sctp.NewSCTPConn(-1, nil)
    -		if reflect.DeepEqual(amfRan.Conn, errorConn) {
    -			amf.RemoveRadio(ran)
    -			ran.Log.Info("removed stale entry in AmfRan pool")
    -		}
    -	}
    -
    -	amf.Mutex.Unlock()
    -
     	switch notification.Type() {
     	case sctp.SCTPAssocChange:
     		ran.Log.Info("SCTPAssocChange notification")
    
  • internal/amf/ngap/service/service.go+8 0 modified
    @@ -15,6 +15,7 @@ import (
     	"sync"
     	"syscall"
     
    +	amfContext "github.com/ellanetworks/core/internal/amf/context"
     	"github.com/ellanetworks/core/internal/amf/ngap"
     	"github.com/ellanetworks/core/internal/amf/sctp"
     	"github.com/ellanetworks/core/internal/logger"
    @@ -105,6 +106,13 @@ func (s *Server) serveConn(ctx context.Context, conn *sctp.SCTPConn) {
     
     	defer s.wg.Done()
     	defer s.conns.Delete(fd)
    +	defer func() {
    +		amf := amfContext.AMFSelf()
    +		if ran, ok := amf.FindRadioByConn(conn); ok {
    +			amf.RemoveRadio(ran)
    +			logger.AmfLog.Info("removed radio on connection close", zap.Int("fd", fd))
    +		}
    +	}()
     	defer func() {
     		if err := conn.Close(); err != nil && err != syscall.EBADF {
     			logger.AmfLog.Error("close connection error", zap.Error(err))
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

5

News mentions

0

No linked articles in our index yet.