12 Commits
Author SHA1 Message Date
Acts1631 d064a83d11 Keep title IDs within host path components
Crafted title IDs could escape serial-derived directories and redirect
recursive cache cleanup outside RPCS3's cache root. Reject structural
path components, escape identifiers used as host names, and make
cleanup matching literal and exact.
2026-10-08 08:02:13 +03:00
Acts1631 e97200a884 Reject invalid RPCN message types
RPCN forwards MessageDetails from other users. The protobuf uint16
wrappers can carry 32-bit values, and narrowing them on the recipient
aborts RPCS3.

Validate both values before casting so malformed messages are
discarded.
2026-10-07 17:30:37 +03:00
Acts1631 cb63cc82ca Validate RPCN room message fields
RPCN room peers control message payloads and destination lists. Values
above the Matching2 limits overflow the recipient's fixed event buffer
and terminate the NP handler.

Reject malformed room message notifications before allocating event
data.
2026-10-07 16:17:15 +03:00
Acts1631 5f8dd1de61 Reject invalid signaling RTT timestamps
Signaling peers control the timestamps used for RTT calculation. A
future timestamp wraps the unsigned delta, and the fatal checked cast
terminates the signaling thread.

Reject future and oversized RTT values before updating peer state.
2026-10-07 15:19:45 +03:00
Acts1631 36eaed481c Abort on parent-directory PKG entries 2026-09-10 18:32:18 +03:00
Acts1631 71e9f4ea57 Bound PKG entry table allocation
PKG file_count was used for vector allocation before validating
that the encrypted package data contained the entry table. Limit the
count and require the entry table to fit in the declared data region
before allocating.
2026-09-10 18:32:18 +03:00
Acts1631 09bb101de1 Fix PKG extraction path traversal
PKG entry names could contain traversal components and escape the
installation directory. Reject absolute and special components, then
require the resolved target to remain below the installation root
before creating or writing files.
2026-09-10 18:32:18 +03:00
Acts1631 7be182e33b Bound Clans member attribute encoding 2026-09-04 09:14:33 +03:00
Acts1631 645458b0fc Validate SELF metadata header sizes 2026-09-03 22:09:02 +03:00
Acts1631 0a85b394ec Reject overflowing ELF section ranges 2026-09-03 18:53:46 +03:00
Acts1631 275c2d4093 Reject overflowing savestate collection counts 2026-09-03 13:03:26 +03:00
Acts1631 df92b1d886 Bounds-check Cg binary byte swapping 2026-09-02 22:13:12 +03:00