You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: harden geoip parser, probe miss-detection and CSV export (review)
Adversarial review of the six-feature batch found no critical/high defects;
these are the three low-severity robustness/correctness fixes it surfaced.
- geo: reject an over-long protobuf length varint by unsigned comparison — a
length ≥ 2^63 cast to int went negative and slipped past the bounds check,
panicking the slice on a corrupt/truncated geoip.dat (now errors cleanly)
- decoy: Miss() now mirrors serveMiss exactly — an extensionless miss on a
single-page template is served as the index under 200, so it is NOT counted
as a probe (only a 404-serving template or a missing asset is), preventing a
future SPA-style decoy from flagging real visitors as scanners
- audit CSV: neutralize spreadsheet formula injection (leading = + - @ tab CR)
in the free-text columns
- tests: malformed/truncated geoip.dat no-panic; Miss for SPA vs classic decoy
0 commit comments