Skip to content

Session seq is raw epoch millis; duration is masked with Math.abs #5580

Description

@runningcode

Audit finding C2 — theoretical, LOW-MEDIUM.

Session uses raw epoch millis for seq and Math.abs for duration (sentry/src/main/java/io/sentry/Session.java):

  • seq is set from getSequenceTimestamp(), which returns timestamp.getTime() (raw epoch millis) — Session.java:309, invoked from the session-update path at :227. A backward clock step between updates → the newer update has a smaller seq → the server can discard the latest session state (lost end/error counts).
  • calculateDurationTime uses Math.abs``(timestamp.getTime() - started.getTime()) (Session.java:240), which masks negative durations rather than surfacing them.

Source: JAVA-557 §C2.

Metadata

Metadata

Assignees

No one assigned
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions