2170 Commits

Author SHA1 Message Date
Simon Biewald
bd7131f6db Detect sysstat systemd unit 2020-08-19 20:47:09 +00:00
Simon Biewald
4a03c61343 Check LINUX_VERSION_LIKE in various tests
This affects:
BOOT-5180, KRNL-5622, KRNL-5788, PKGS-7388, PKGS-7390, PKGS-7394,
PKGS-7366, and PKGS-7420.
2020-08-15 16:44:34 +01:00
Simon Biewald
3abc39598a Add LINUX_VERSION_LIKE for variations of Linux distribution
Real Ubuntu and Debian do not have LINUX_VERSION_LIKE set. They are
different enough to consider them as a different distribution.

Tests targetting any of distributions based of those two should check
both, LINUX_VERSION and LINUX_VERSION_LIKE.
2020-08-15 16:29:20 +01:00
danielorihuelarodriguez@gmail.com
6bad6b058b feature: gather locked accounts info 2020-08-10 19:27:43 +02:00
Steve Kolenich
f65f4d011b Improve detecting kernel version on disk
Improve handling of kenrel files
/boot/vmlinuz-linux-lts
/boot/vmlinuz-linux
/boot/vmlinuz-lts
by updateing RegEx and adding elif
this corrects issue where version is identified
as 'linux' or 'lts' causing false report that a
reboot is needed
2020-08-10 12:27:30 -04:00
Simon Biewald
529bcb2a60
Test for LINUX_VERSION before setting it again
Before parsing /etc/debian-release and /etc/lsb-release,
it is now checked if the variable LINUX_VERSION is already set.

This fixes cisofy/lynis#1003, but has some side effects.

This will affects Ubuntu and Debian based distributions, like:
 - Pop!_OS (Ubuntu based)
 - Kali (Debian Based)
 - Raspbian
 - ...

Unfortunately this will likely skip/brake a few tests for those
distributions, as they are not considered to be Ubuntu or Debian
anymore. Linux Mint was already detected properly, but at least some
tests already had support for them (will other tests for Ubuntu are
skipped).

Those are tests I identified that will be skipped incorrectly now:
 - BOOT-5180: Check for Linux boot services (Debian style)
     It was already skipped on Linux Mint.
 - KRNL-5622: Check default run level on Linux machines
     This will only be skipped if systemd is not installed. It is
     already skipped on Linux Mint in this case.
 - KRNL-5788: Checking availability new kernel (sic!)
     This was already skipped on Linux Mint.
 - PKGS-7388: Check security repository (...)
     It will now be skipped for all distributions that do use the
     Debian / Ubuntu security repositories but are not detected as such
     anymore (like Pop!_OS). It will now be correctly skipped on
     Raspbian. This test was already aware of Linux Mint.
 - PKGS-7390: Check Ubuntu database consitency
     I am not sure why this test is Ubuntu only, thus it already
     skipped on Debian and Mint.
 - PKGS-7394: Check Ubuntu upgradeable packages
     I am not sure why this is for Ubuntu only, too.
     I think this should be feature tested instead, as
     apt-show-versions can be installed on any Debian based
     distribution as well..
 - PKGS-7366: Checking if debsecan is installed (...)
     While it may be correct to skip, debsecan remains usefull if
     package versions, patches and vulnerability fixes are very close
     on Debian itself.
     It is the correct behaviour to not do this test on Ubuntu and
     Ubuntu based distributions, as Canonical does not provide the
     required databases.
 - PKGS-7420: (Autoupdates)
     Linux Mint was already skipped on this test.

I think this could be solved by introducing a variable like
LINUX_VERSION_PARENT. On Linux Mint it would be set to Ubuntu, on e.g.
Kali Linux the veriable has the value Debian. Tests can use this variable
to check if it is broadly applicable, and then check if the specific
distribution is excluded.
2020-08-08 01:39:13 +02:00
Michael Boelen
792a202934
Merge pull request #913 from topimiettinen/check-der-certs
[CRYP-7902] Check also certificates in DER format
2020-08-07 11:54:39 +02:00
Michael Boelen
4206177081
Merge pull request #981 from Varbin/openntpd-equals
[TIME-3180, TIME-3181, TIME-3182] Fix OpenNTPD tests
2020-08-07 11:50:22 +02:00
Michael Boelen
30e0fed04f
Merge pull request #993 from Varbin/more-cron-ntp
[TIME-3104] Find more time synchronization commands
2020-08-07 11:46:51 +02:00
Michael Boelen
21311364e7
Merge pull request #980 from Varbin/953-timesyncd-no-dbus
Fix timesyncd detection on systems without dbus.
2020-08-07 11:44:06 +02:00
Michael Boelen
343e9bdc1c
Merge pull request #974 from igloonet/feature/warn-slow-settting
Command line option for slow test threshold
2020-08-07 11:39:39 +02:00
Steve Kolenich
33d8e8e00b Adding Alpine Linux to OSDetection 2020-08-06 20:15:18 -04:00
Michael Boelen
30c8a92594
Merge pull request #994 from konstruktoid/issue992
add Microsoft Defender ATP, malware scanner
2020-08-05 11:49:32 +02:00
0ri0n
f988e573db
Add missing PHP 7.4 check for BSD 2020-07-27 13:59:46 -04:00
0ri0n
9b388518de
Add PHP 7.4 Detection Paths 2020-07-26 23:33:34 -04:00
Thomas Sjögren
baf5f7ad4d add Microsoft Defender ATP, malware scanner
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-07-21 23:56:47 +02:00
Simon Biewald
e27208a342
use STATBINARY, put filename in variable 2020-07-10 00:48:12 +02:00
Simon Biewald
7ba220811f
use = instead of == 2020-07-10 00:41:45 +02:00
Simon Biewald
092fe08c40
shellcheck: check exit code directly 2020-07-10 00:40:36 +02:00
Simon Biewald
d4639b3c6a
find more cron ntp clients, iterate over cron files with glob 2020-07-10 00:29:35 +02:00
Simon Biewald
9107867fa1
use correct regex and comparison to match peers 2020-07-09 18:57:01 +02:00
Simon Biewald
df7c6257a5
compare correct stuff in openntpd tests
I accidentially compared rubbish in the openntpd tests,
thus they were not executed at all.
Additionally, == was used instead of =.
2020-07-09 18:41:09 +02:00
Simon Biewald
38b6105c60
add new test to test database 2020-07-09 18:27:02 +02:00
Simon Biewald
b2be7c160e
detect and test for timesyncd w/o working timedatectl
On systems without dbus timedatectl does not work.

Thus it is checked if timesyncd currently runs and when
/run/systemd/timesyncd/synchronized was last modified.
Timesyncd touches this file on any sucessfull synchronization.
This is documented in systemd-timesyncd(8).

The new test for successfull documentation has the id TIME-3185.
2020-07-09 18:19:35 +02:00
Kepi
a2e752a8db [functions] ParseNginx: Ignore empty included wildcards
Its ok to have empty directories included. We should not output errors with
lsbinary unable to find anything there.
2020-07-07 15:38:19 +02:00
Kepi
de18ddc2c0 [functions] ParseNginx: Support include on absolute paths
Includes can be absolute paths too. This is quick fix counting on fact that
absolute paths have slash at start.
2020-07-07 15:37:56 +02:00
Michael Boelen
9165cb76fa
Merge pull request #972 from igloonet/fix/FILE-6425-no-modprobe-d
[FILE-6430] Don't grep nonexistant modprobe.d files
2020-07-07 12:29:11 +02:00
Michael Boelen
6eae35e564
Fix for too short IDs due to hexdump output missing leading or trailing zeroes 2020-07-06 09:26:27 +02:00
Kepi
f94817f66f Command line option for slow test threshold
IMHO it should be OK to run long tests if we count with it.

Example:

    lynis audit system --slow-warning 300

Will warn when test takes longer than 300 seconds, instead of default 10.
2020-07-02 23:42:28 +02:00
Kepi
9d52395952 [FILE-6430] Don't grep nonexistant modprobe.d files
We don't want to grep files in modprobe.d when dir is empty. Uses same approach
as in USB-1000.
2020-07-02 18:22:03 +02:00
Michael Boelen
ea38da3439
Add /etc/os-release detection of Linux Mint 2020-06-28 14:58:23 +02:00
Chris Lynch
5b11c468eb Fix for Issues #964 - Pop!_OS added to osdetection 2020-06-27 10:44:31 +01:00
Michael Boelen
96e7ba5aaa
Activate test for all operating systems, remove function keyword 2020-06-27 10:21:24 +02:00
Wes Price
dcf9bd0938 [AUTH-9229] resolving syntax error on MacOS Catalina 2020-06-26 12:29:40 -10:00
Michael Boelen
e6c6fdc9a8
[AUTH-9229] Undo escaping exclamation mark and disabling test for AIX and macOS 2020-06-26 10:24:37 +02:00
Michael Boelen
871f95cbf3
Use BSD style format when calling stat 2020-06-26 09:53:23 +02:00
Michael Boelen
9f0bbf52ea
[FIRE-4534] set initial state 2020-06-26 09:44:39 +02:00
Michael Boelen
68c6bdff16
[AUTH-9229] escaped exclamation mark 2020-06-26 09:34:40 +02:00
Michael Boelen
8a5b2a4099
Merge pull request #920 from jsrc27/Fix-KRNL-5730
Fix KRNL-5730 to properly check /proc/config.gz
2020-06-24 09:21:32 +02:00
Michael Boelen
c707b7d100
[MALW-3280] added additional BitDefender process 2020-06-24 08:09:12 +02:00
Michael Boelen
36f86d76c4
[AUTH-9229] added option to look for LOCKED accounts 2020-06-23 13:57:14 +02:00
Michael Boelen
610f70d5aa
[INSE-8312] corrected text 2020-06-23 13:56:13 +02:00
Alexander Lackner
d7870e3f5c Added macOS Big Sur (11.0) 2020-06-22 20:44:58 +02:00
Michael Boelen
b980223d42
Merge pull request #958 from Steve8291/patch-2
fix stderr output from cryptsetup status
2020-06-22 14:26:47 +02:00
Michael Boelen
75738ceeab
Fix for language detection, unset LANG as right place 2020-06-22 10:25:02 +02:00
Michael Boelen
a2f8bdc5f8
[BOOT-5122] presence check for grub.d added 2020-06-22 10:18:01 +02:00
Steve8291
c02ce49ce3
fix stderr output from cryptsetup status
Redirected stderr to /dev/null to silence output of `cryptsetup status /swap.img`
This was causing error output from my cron script.
Otherwise, if the swap file is not encrypted then the following error will be printed:
`Device swap.img not found`
2020-06-21 10:47:28 -04:00
Michael Boelen
6d9b530bf4
[KRNL-5830] improved detection for non-symlinked kernel on disk 2020-06-21 13:14:08 +02:00
Michael Boelen
aebd5ed9b3
Remove unneeded line in log to prevent double entry 2020-06-21 12:57:05 +02:00
Michael Boelen
b2350f2f6c
Add log entry to help troubleshooting users that still use old-style configuration entries in profile 2020-06-21 12:52:50 +02:00