PolinRider scanner false positives
For polinrider 2.3.x. Read the docs for the latest release
Each of these is harmless, and each was met during a real cleanup or while
testing the tool. Precision matters more than reach here: a false INFECTED
in a tool people run during an incident costs everyone real time.
| What you see | Why | What to do |
|---|---|---|
Your own detection tooling reported: a scan workflow, its scripts, a copy of ioc/ |
It contains the indicator strings because it searches for them | Already handled for the usual paths, listed under each check below. Anything else of yours: in the CI scanner, add it with --exclude |
.vscode/settings.json matched folderOpen |
Only .vscode/tasks.json runs commands |
The folder and computer checks skip .vscode/ in their review-level scan. On GitHub it can appear as a review line, never as confirmed |
A .vscode/tasks.json that runs on folder open, “verify the command by hand” |
Teams use folder-open tasks for real work | Read the command. With a known indicator in it, it is reported as confirmed instead |
Every .woff2 in a repo flagged as “not a font” |
Git LFS stores a text pointer instead of the font, and a zero-byte placeholder has no font bytes | Already handled: the folder, computer and GitHub checks skip LFS pointers and empty files |
| A config file flagged for “content after module end” | Flat configs legitimately open with export default [ on line 1 and run long |
A review line, never confirmed, and only when the remainder also looks like a payload |
| A README or incident write-up that names the campaign’s indicators | Documenting the campaign means naming its indicators | Depends on the check; see below |
| Rendered documentation (HTML, a built docs site) reported | The documentation rules key off .md, docs/ and README, which built output no longer matches |
In the CI scanner, exclude your build output: --exclude '(^|/)site/'. This repository’s own self-scan excludes its built site, docs-site/dist/ |
Documentation, check by check
Each check treats documentation differently. This is what the code does today.
- The folder and computer checks read indicators in particular kinds of
file:
tasks.json, build configs, fonts, git hooks and editor extensions. A.mdfile is none of these. Their wider, review-level scan of other files skips the paths treated as the user’s own detection tooling: any.mdfile, anything underdocs/, any README,ioc/*.txt, the tool’s own scripts and workflows withpolinriderin their name. - The GitHub check never confirms a finding in those same paths, even
when one contains an indicator string. It can still list such a file as a
review line if it mentions a weak signal, such as
folderOpen. - The CI scanner (
ci/scan-workspace.sh) skips.mdfiles by default.--scan-docsincludes them. It also always skips.git/,node_modules/,.github/polinrider/,ioc/and workflows withpolinriderin their name, and--excludeadds more.
None of these exemptions covers .mdx, HTML or other formats. A page in one
of those that quotes a confirmed indicator can be reported as one.
Found a new one? Open an issue. A missed detection is a different template, and both are worth filing.
Last updated:
Edit this page on GitHub