Find a file
Sukchan Lee ad3939296d
Some checks failed
Meson Continuous Integration / Build and Test on Ubuntu Latest (push) Has been cancelled
[nas] Reject malformed IMSIs across 4G and 5G paths
TS 23.003 limits an IMSI to 15 decimal digits, but several identity
conversion paths accepted overlong or non-decimal values.

Validate null-scheme SUCI MSINs before constructing SUCI and SUPI
strings. Centralize SUCI validation in the NAS conversion helper and
propagate failures through AMF Registration Request and Identity
Response handling with 5GMM cause 95. Keep detailed error logging at
each failure stage.

Validate MCC, MNC and MSIN components when reconstructing an IMSI SUPI
in the SBI layer, and improve UDM logging when SUCI conversion fails.

Validate EPS IMSIs before modifying MME context or hash state. Reject
non-decimal BCD values and invalid IMSI lengths in Attach Request and
Identity Response handling.

Also validate the peer-controlled IMSI IE in Gn SGSN Context Request
and Response messages. An 8-octet TBCD value without a filler nibble
decodes to 16 digits plus a trailing NUL, which overflowed the previous
16-byte stack buffer before validation. Use a 17-byte temporary decode
buffer, reject IMSI IEs longer than 8 octets, and continue enforcing the
15-digit IMSI limit after conversion.

Update registration tests to normalize MSIN padding only for
null-scheme SUCIs, preserve protected scheme output, assert successful
test SUCI conversion, record returned GMM causes, and verify rejection
of an overlong SUCI.
2026-07-18 16:28:00 +09:00
.github merge main branch 2026-06-10 09:07:45 +09:00
configs app: extend QoS profiles to PCF and PCRF media types 2026-07-15 13:51:38 +09:00
debian packaging: finalize v2.8.0 release 2026-06-20 13:10:28 +09:00
docker docker: remove deprecated version from docker-compose.yml 2026-02-08 11:55:34 +09:00
docs docs: update hardware list and community documentation 2026-06-29 09:13:39 +09:00
lib [nas] Reject malformed IMSIs across 4G and 5G paths 2026-07-18 16:28:00 +09:00
misc Add roaming type toggle via command line (#4211) 2025-12-23 13:53:53 +09:00
src [nas] Reject malformed IMSIs across 4G and 5G paths 2026-07-18 16:28:00 +09:00
subprojects Tested on FreeBSD-14.1-STABLE (#3350) 2024-08-03 21:45:52 +09:00
tests [nas] Reject malformed IMSIs across 4G and 5G paths 2026-07-18 16:28:00 +09:00
vagrant Tested on FreeBSD-14.1-STABLE (#3350) 2024-08-03 21:45:52 +09:00
webui Release v2.8.0 2026-06-20 12:38:31 +09:00
.clang-tidy [MISC] Add support for static code analysis 2022-07-01 21:38:47 +09:00
.dockerignore [build] Use local sources to build applications (#1583) 2022-06-19 18:18:09 +09:00
.editorconfig editorconfig: new file (#2746) 2023-11-27 22:21:35 +09:00
.gitignore .gitignore: Add install/ dir 2023-10-10 08:03:25 +09:00
LICENSE Change LICENSE to GNU AGPL v3.0 2017-12-18 10:35:54 +09:00
meson.build Release v2.8.0 2026-06-20 12:38:31 +09:00
meson_options.txt [Fuzzing] oss-fuzz support for fuzzing (#2283) 2023-05-05 17:20:11 +09:00
README.md nrf: Fix serving PLMN counter reset on NF register 2026-02-04 20:51:29 +09:00

Open5GS logo

Getting Started

Please follow the documentation at open5gs.org!

Sponsors

If you find Open5GS useful for work, please consider supporting this Open Source project by Becoming a sponsor. To manage the funding transactions transparently, you can donate through OpenCollective.

sponsors

Community

  • Problem with Open5GS can be filed as issues in this repository.
  • Other topics related to this project are happening on the discussions.
  • Voice and text chat are available in Open5GS's Discord workspace. Use this link to get started.

Contributing

If you're contributing through a pull request to Open5GS project on GitHub, please read the Contributor License Agreement in advance.

License

Support

Technical support and customized services for Open5GS are provided by NewPlane at support@newplane.io.