Commit c86b4f9
committed
feat(scanrootkit): add discovered date, 41 modern signatures, expanded tests
Add 41 new signatures for modern (mostly 2019+) Linux rootkits and a
few pre-2019 LD_PRELOAD/LKM rootkits previously missing from the
rkhunter set: Adore-NG, Azazel, BEURK, BPFDoor, Boopkit, CDRThief,
Cloud Snooper, Drovorub, Ebury 1.7/1.8, Father, HiddenWasp, Honey Pot
Bears, Kaiji, Kobalos, LightBasin, Lightning Framework, LilyOfTheValley,
Medusa, Migo, Nuk3Gh0st, OrBit, perfctl, PUMAKIT, Puszek, Pygmy Goat,
Reptile, Reveng_rtkit, RotaJakiro, sedexp, Skidmap, spy/kisni, SSHdoor,
Symbiote, Syslogk, TripleCross, Umbra, Umbreon, UNC3886, Winnti for
Linux, Zendar, bedevil. Sourced from ESET malware-ioc, fkie-cad/linux-
rootkit-iocs, Sandfly Security, Intezer, Elastic Security Labs,
Mandiant, Sophos, NCSC UK and others.
Add an optional `discovered` field (YYYY, YYYY-MM or YYYY-MM-DD) to
the signature schema. The plugin renders the year next to the rootkit
name in findings, e.g. "* CiNIK Worm (2002): /tmp/.cinik (File)".
Populated for ~90 of the 162 signatures based on the chkrootkit
changelog and vendor disclosure dates.
Fix directory indicators not being detected. The plugin previously
called lib.disk.file_exists() for both files and directories, but
that helper returns False for directories, so directory-only
signatures (e.g. KBeast /usr/_h4x_) silently never matched. Now uses
os.path.isdir() for directory checks.
Expand the unit test suite from 3 to 12 tests, covering directory
detection, kernel symbol detection (with a substring negative test
for the recently-fixed exact-match behavior), confidence-level
handling, the new discovered field, broken YAML and missing-key
error handling, and a confirmed+possible mix.
Add blank lines between the summary, "Rootkits" and "Possible
Rootkits" sections in the output for readability.
Update README and the Icinga Director template to mention the new
signature count and the discovered field, with a fresh usage example
showing all three indicator types (File, Dir, Kernel Symbol) and
the year-suffix rendering.1 parent d00f8c5 commit c86b4f9
File tree
103 files changed
+880
-44
lines changed- check-plugins/scanrootkit
- assets
- icingaweb2-module-director
- unit-test
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
103 files changed
+880
-44
lines changedLines changed: 11 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| 26 | + | |
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| 11 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| 15 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
0 commit comments