Security context

What an agent needs to avoid regressing past fixes and find the next vuln in this repo.

sinonjs/lolex
main @ 466d18e
3
Fixes
0
CVEs
MEDIUM
Peak severity
Highlights
Denial of Service: 2 prior fixes. Scrutinize any change in this area.
src/fake-timers-src.js: most-fixed (3 issues). Treat as high-risk during review.
0 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns

The bug types that recur here, drawn from past fixes, not open vulnerabilities.

Denial of Service: Calling clock.uninstall() while asynchronous tick operations are in flight can trigger an infinite loop. This occurs when the clock continuously spins on a deactivated timer state without validating whether the clock has been uninstalled.
Prototype Pollution: Directly calling '.hasOwnProperty' on configuration objects or timers allows prototypes to override standard behaviors, potentially causing property checking bypasses or Prototype Pollution. Safely using Object.prototype.hasOwnProperty.call is required.
Denial of Service: A memory leak can occur when registered abort signal event listeners are not properly unregistered or cleaned up during clock uninstallation, causing long-running processes to exhaust listener capacities.