kronos-0001 (CWE-407, MEDIUM): SH2HandleBreakpoints() in sh2core.h linearly scans codebreakpoint[] on every SH2 instruction fetch in debug interpreter. MAX_BREAKPOINTS=10, O(10) per fetch at 28.6 MHz emulated = 286M extra comparisons/s. Fix: sorted_bp_addrs[] + binary search, O(log N), 2.54x fewer comparisons measured. kronos-0002 (CWE-312, LOW): netlink.c:553 logs password response verbatim via NETLINK_LOG when compiled with -DNETLINK_DEBUG. Fix: replace %s format with literal [REDACTED]. kronos MOAD-0002/0003/0005: CLEAN mesen-s: all 5 MOADs CLEAN (CheatManager unordered_map O(1), BreakpointManager guarded by _hasBreakpoint fast-path, password hashed before network use, no TLS credential leakage) 8/8 tests PASS
15 lines
729 B
Diff
15 lines
729 B
Diff
# UNDF: UNDF-2026-XXXXXXXXX
|
|
--- a/yabause/src/utils/src/netlink.c
|
|
+++ b/yabause/src/utils/src/netlink.c
|
|
@@ -549,7 +549,8 @@ void NetlinkHandleUARTData(u8 val)
|
|
else if (NetlinkArea->connectstatus == NL_CONNECTSTATUS_LOGIN2 &&
|
|
NetlinkArea->modemstate == NL_MODEMSTATE_DATA &&
|
|
val == 0x0D)
|
|
{
|
|
// Internet password
|
|
NetlinkArea->connectstatus = NL_CONNECTSTATUS_LOGIN3;
|
|
- NETLINK_LOG("password response: %s", NetlinkArea->inbuffer+NetlinkArea->inbufferstart);
|
|
+ NETLINK_LOG("password response: [REDACTED]");
|
|
NetlinkDoATResponse("\r\n$");
|
|
NetlinkUpdateReceivedDataInt();
|
|
}
|