Skip to content

Fix critical and high severity security vulnerabilities#316

Closed
kwsantiago wants to merge 3 commits intoOpenFusionProject:masterfrom
kwsantiago:security-fixes
Closed

Fix critical and high severity security vulnerabilities#316
kwsantiago wants to merge 3 commits intoOpenFusionProject:masterfrom
kwsantiago:security-fixes

Conversation

@kwsantiago
Copy link

@kwsantiago kwsantiago commented Feb 12, 2026

  • Fix buffer overflow in U8toU16 null terminator placement
  • Fix sizeof(text) passing std::string object size instead of buffer size
  • Fix character creation validation bypass (operator precedence bug)
  • Fix duplicateExit allowing any user to disconnect other sessions
  • Fix out-of-bounds array access via unchecked indices in trading/GM give
  • Fix monitor transmit() send() error handling causing infinite loop
  • Fix NULL deref in findAccount when BanReason column is NULL
  • Fix missing else branch in groupMenuChatHandler causing null group deref
  • Fix return vs continue in MobAI loops (useAbilities, onDeath)
  • Fix nullptr EntityRef construction in MobAI retreat transition
  • Add missing null checks for getPlayer() in Groups and BuiltinCommands
  • Replace assert() with runtime checks in release-critical paths
  • Add integer overflow checks for email/trade/vendor/mission money
  • Re-validate trade money at confirmation to prevent manipulation
  • Add per-IP connection limiting (MAXPERIP setting)
  • Add login rate limiting (LOGINLIMIT, LOGINWINDOW settings)
  • Add monitor password authentication (MONITORPASS setting)
  • Use timing-safe comparison for monitor password
  • Use find() instead of operator[] for connectionsPerIP to prevent map bloat
  • Add chat message sanitization (sanitizeText)
  • Fix memory leaks in email attachment handling
  • Remove unused assert includes, add missing climits includes

@kwsantiago kwsantiago force-pushed the security-fixes branch 3 times, most recently from 49ecf02 to 6191ef5 Compare February 12, 2026 17:27
@yungcomputerchair
Copy link
Member

yungcomputerchair commented Feb 17, 2026

We are not going to accept a massive AI-generated pull request of 10+ unrelated changes. Sorry.

If you would like to contribute, I would pick one or two of what you consider to be "critical" vulns and submit a well-documented PR to address it.

@kwsantiago kwsantiago deleted the security-fixes branch February 17, 2026 18:06
@kwsantiago kwsantiago restored the security-fixes branch February 17, 2026 18:07
@kwsantiago
Copy link
Author

kwsantiago commented Feb 17, 2026

@yungcomputerchair totally understand, this is a big diff for one PR.

Here are the most critical fixes imo: #317 #318 #319

If these PRs get accepted, I can bring more fixes from this branch into separate PRs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments