Commit Graph

2443 Commits

Author SHA1 Message Date
Michael Boelen eb759f4c13
Merge pull request #1071 from Varbin/opensolaris-detection
OpenSolaris distribution detection
2020-11-13 16:01:00 +01:00
Michael Boelen 6026b82e14
Merge pull request #1073 from Varbin/1040-1068-os-detection
Add NixOS and IPFire
2020-11-13 15:58:20 +01:00
Simon Biewald 3f83b9ac86 Add NixOS to osdetection
Fixes cisofy/lynis#1068.

Signed-off-by: Simon Biewald <simon@fam-biewald.de>
2020-11-12 22:56:31 +01:00
Simon Biewald 183af1d334 Add IPFire to osdetection
Fixes cisofy/lynis#1040.

Signed-off-by: Simon Biewald <simon@fam-biewald.de>
2020-11-12 22:12:26 +01:00
Simon Biewald d388e5d269 Add OpenSolaris and distribution detection
New variable OPENSOLARIS to distringuish between Oracle Solaris and
OpenSolaris derivates. The edge case of OpenSolaris itself is not yet
solved, but OpenSolaris itself should be very rare these days.

Currently detected and distinguished Solaris variants are:
 - Oracle Solaris >= 11 (exluding Solaris Express and OpenSolaris)
 - Solaris < 11 (as "Sun Solaris")
 - OmniosCE (but not old Omnios)
 - OpenIndiana
 - Shillix
 - SmartOS
 - Tribblix
 - "Unknown Illumos" for unknown distributions based on Illumos

Lynis will fall back to "Sun Solaris" with "SunOS 5.X" for unknown
distributions.
2020-11-09 23:25:33 +00:00
Simon Biewald 3c31a08024 Do not incorrectly name SFM as IPS
The "new" service manager was included with Solaris 10 and not 11. It is
named "service management facility" (see smf(5) man page).
There is no IPS service manager, the name is only used for the package
manager of OpenSolaris and Solaris 11.

Signed-off-by: Simon Biewald <simon@fam-biewald.de>
2020-11-09 23:18:00 +00:00
Michael Boelen 37631b0457
Merge pull request #1061 from Varbin/solaris-hostname
Simplify tr hostname checking expression
2020-11-09 14:12:39 +01:00
Michael Boelen f0b7f9159d
Merge pull request #1069 from Varbin/1065-opensolaris-invalid-characters
Use `od` only for displaying invalid characters
2020-11-09 10:36:37 +01:00
Josh Soref 6435aeba8a spelling: unknown
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:56:31 -05:00
Josh Soref 9d0e1938aa spelling: therefore
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:56:31 -05:00
Josh Soref 7157eb45f0 spelling: suggestions
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:53:09 -05:00
Josh Soref f22e192838 spelling: successful
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:53:09 -05:00
Josh Soref 2b26f13bed spelling: params
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:53:09 -05:00
Josh Soref f14e12f688 spelling: installed
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:38:46 -05:00
Josh Soref eadd2a8ed8 spelling: indentation
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:38:46 -05:00
Josh Soref ab1aa322ac spelling: ignore
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:38:46 -05:00
Josh Soref a007ad2fe0 spelling: explicitly
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:38:46 -05:00
Josh Soref b0a5490a2e spelling: contains
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:38:46 -05:00
Josh Soref 08c8d1b8f3 spelling: authentication
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:35:46 -05:00
Josh Soref acf7943936 spelling: ambiguous
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-11-08 23:28:56 -05:00
Simon Biewald 8895eccea2 Use correct character class
Signed-off-by: Simon Biewald <simon@fam-biewald.de>
2020-10-31 17:36:06 +00:00
Simon Biewald 3e3589291f Use `od` only for displaying invalid characters
The first od is removed, the second time is moved to right before echoing
the characters. On certain OpenSolaris distributions, `od` always outputs
spaces, even if the input is empty. The spaces would have been converted
to !space!, thus Lynis detected invalid characters / old style configuration.

Resolves cisofy/lynis#1065.

Signed-off-by: Simon Biewald <simon@fam-biewald.de>
2020-10-29 00:06:10 +00:00
Simon Biewald 25278b6b38 Add support for Solaris services, run BOOT-5184 there
The Solaris IPS service manager (svcs) is now detected, and services
managed with it are enumerated.

Test BOOT-5184 now runs on Solaris, too, as SysV init scripts are
supported as well, even with IPS. SysV Init has been the traditional
init system on Solaris.
2020-10-25 21:51:12 +00:00
Simon Biewald 1f3d0956a7 Test if loghost is not localhost
On Solaris, the name loghost can be used to point to remote log servers.
By default loghost is configured to 127.0.0.1, logging to the local
machine.

Thus a new test - LOGG-2153 - is created to test if loghost is not
localhost and LOGG-2154 is modified to ignore @loghost lines if loghost
is localhost.
2020-10-25 20:28:19 +00:00
Simon Biewald e917269d01 Reduce tr hostname checking expression
Solaris' tr does not support full regular expressions.
2020-10-25 20:25:31 +00:00
Simon Biewald 1a75d66ad9 Use netstat on Solaris to gather listening ports 2020-10-25 20:21:33 +00:00
Simon Biewald 8ee60cea35 Test if /etc/grub.d is a directory, instead always true 2020-10-25 20:14:08 +00:00
Michael Boelen 499cf1cdb9
Small code enhancements 2020-10-25 18:48:42 +01:00
Michael Boelen e66709e13b
Merge pull request #1011 from Varbin/986-sysstat-systemd
[ACCT-9626] Detect sysstat systemd unit
2020-10-25 18:47:01 +01:00
Michael Boelen 43d0c6a8fd
Merge branch 'master' into add-suricata-ids-ips-test 2020-10-25 12:50:25 +01:00
Michael Boelen bd6e1d5d39
Include AUTH-9284 and minor changes 2020-10-22 14:17:01 +02:00
Michael Boelen e67f786caa
Merge pull request #1009 from danielorihuela/feature/get-info-on-locked-accounts
[AUTH-9284] Feature: gather locked accounts info
2020-10-22 14:13:34 +02:00
Michael Boelen 1fe12c0023
Merge pull request #1008 from kolenichsj/master
Alpine Improvements
2020-10-22 13:28:05 +02:00
Michael Boelen 01c970f73f
Merge pull request #1044 from delscate/master
Fix wc and head cmd when using busybox
2020-10-22 13:24:56 +02:00
Thomas Sjögren 4671fb7fb9 add Synology Antivirus Essential malware scanner
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-10-22 12:10:01 +02:00
Michael Boelen 7930644b6c
Merge branch 'master' into fix_nginx_parser 2020-10-22 08:43:44 +02:00
Stéphane 67d04f2536
Add translate function for all sections
+ add EN and FR up to date languages files
2020-10-22 00:13:42 +02:00
Michael Boelen 4aeb244789
Merge pull request #1048 from konstruktoid/pgrep
require pgrep before usage
2020-10-21 15:08:21 +02:00
Michael Boelen 8e07c3e9dc
Merge pull request #1013 from Jimver/timesyncd_fix
[TIME-3185]: Change timesyncd synchronization file
2020-10-21 15:02:03 +02:00
Michael Boelen 71c474f455
[KRNL-5830] ignore rescue kernel on systems such as CentOS 2020-10-21 14:40:30 +02:00
Thomas Sjögren 3124a04ce9 require pgrep before usage
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-10-21 11:27:44 +02:00
Michael Boelen 92df49d08e
Merge pull request #973 from igloonet/fix/functions-parse-nginx-abs-path
Support absolute paths in nginx includes and fix ls warning on empty directories
2020-10-20 13:38:08 +02:00
Michael Boelen 4a99f3bdad
Merge pull request #1017 from Varbin/1014-flatcar-detection
Add support for Flatcar Container Linux
2020-10-20 13:14:18 +02:00
Michael Boelen 551429d85b
Merge pull request #1042 from steph78630/master
Add missing constants (CISOfy #1035)
2020-10-20 13:13:00 +02:00
Michael Boelen 3dd8fba196
Merge pull request #1043 from konstruktoid/mageia
Mageia got /etc/os-release and add Mageia EOL dates
2020-10-20 13:11:54 +02:00
Michael Boelen 77b93ae73d
Added SLES detection via /etc/os-release 2020-10-20 13:06:40 +02:00
Thomas Sjögren bc85cbb0ba add Void Linux
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-10-20 11:49:05 +02:00
Fabien Lehoussel ae7be7599e Fix head cmd with busybox 2020-10-19 15:09:43 +02:00
Fabien Lehoussel 537624da15 Fix wc command with --lines argument to be used with busybox 2020-10-19 15:02:48 +02:00
Thomas Sjögren 68e8ef862e mageia got /etc/os-release
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-10-19 12:38:59 +02:00
Thomas Sjögren f0ded6c2a3 add Mageia EOL dates and grep /etc/mageia-release
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-10-19 12:07:16 +02:00
Stéphane af57959d6a
Add missing constants
From #1035 issue
2020-10-19 00:41:11 +02:00
Michael Boelen 61c6d5df8d
[PKGS-7410] Don't show exception if no kernels were found on the disk 2020-10-17 13:40:09 +02:00
Michael Boelen 6238f5bc8f
Define RHEL as 'RHEL' 2020-10-17 13:26:11 +02:00
Michael Boelen 4a21fd9a5c
Merge branch 'master' into master 2020-10-17 13:23:08 +02:00
Michael Boelen 791800f95d
Added Zorin OS detection 2020-10-17 13:15:06 +02:00
Michael Boelen 760460528b
Added variable 2020-10-17 12:55:20 +02:00
Michael Boelen ba1cff941f
Improved detection of kernel by ignoring known incorrect values 2020-10-16 13:02:01 +02:00
Timo Sigurdsson 15799cf57e Add test for Suricata IDS/IPS
Commit 94e0a4e added a test for the Suricata binary, but the result appears to
be used nowhere. Add a proper test for an active Suricata daemon in the
IDS/IPS tooling section.

Signed-off-by: Timo Sigurdsson <public_timo.s@silentcreek.de>
2020-10-11 02:25:37 +02:00
Sergey Zhemoitel 85d36db113 Add ROSA Linux detection 2020-10-08 23:06:35 +03:00
Michael Boelen c6bd185fd7
Resolved merge conflict 2020-10-02 11:05:04 +02:00
Michael Boelen 5e0a4e685d
Added CloudLinux 2020-10-02 10:57:58 +02:00
Michael Boelen 768d8a62e8
Updated log 2020-10-02 10:55:36 +02:00
Michael Boelen a1f794cc75
Don't provide suggestion to install pseudo rng at this moment 2020-09-03 10:54:21 +02:00
danielorihuelarodriguez@gmail.com 5ca6b7ed79 feature: take into account LK
Some distributions like CentOS 8 contains "LK" instead of "L" for
locked users.
2020-08-28 23:19:37 +02:00
Simon Biewald 93a71539d5
Add support for Flatcar Container Linux
Fixes cisofy/lynis#1014.

Flatcar is a for of CoreOS. Thus the variable LINUX_VERSION_LIKE
(introduced with #1004) for Flatcar is CoreOS.
2020-08-27 21:49:17 +02:00
Jimver 554dd2d5e9
Better log message 2020-08-27 12:57:22 +02:00
Jimver e6891feeb4
Remove newline 2020-08-27 12:52:59 +02:00
Jimver cd94da3449
Use shell wildcard expansion now 2020-08-27 12:50:48 +02:00
Jimver 6f6e21add2
Fix wildcard expansion, absolute path handling and output to stderr 2020-08-26 16:38:35 +02:00
Jim 84fd612c91
Add check for other clock files for earlier systemd versions 2020-08-24 17:59:06 +02:00
Jim dabac5bf89
Change timesync sync file, fixes #1012 2020-08-23 22:41:19 +02:00
danielorihuelarodriguez@gmail.com c857ee7cf2 fix: take into account unlocked system accounts 2020-08-23 19:54:59 +02:00
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
Michael Boelen 6a9e94befb
Reordered items, added Kali Linux, improved exception message 2020-06-19 11:10:22 +02:00
Michael Boelen 3b9eda53cc
CVE-2019-13033 - Discovered by Sander Bos 2020-06-18 12:36:04 +02:00
Michael Boelen 2398c74783
Merge pull request #941 from iain-cuthbertson-siftware/bugfix/allow-mixed-case-hostnames
Adds uppercase option to the hostname validation regex
2020-06-02 18:50:35 +02:00
Michael Boelen 05ea9f873d
[FILE-6330] corrected description 2020-06-02 16:34:35 +02:00
Iain Cuthbertson 0b8c775a01 Adds uppercase option to the hostname validation regex 2020-06-02 15:33:32 +01:00
Michael Boelen b285623ac2
Remove double space 2020-06-02 16:30:43 +02:00
Michael Boelen 9fdfc062dd
Add Gentoo 2020-06-02 14:09:49 +02:00
Aditya Shastri 2b0a0ba2e1 Addedd OS detection for Oracle Linux 2020-05-14 20:51:11 -07:00
Jeremias Cordoba f081a9ed7e Fix KRNL-5730 to properly check /proc/config.gz
When KRNL-5728 locates the kernel config it does not properly set LINUXCONFIGFILE
if config is found as /proc/config.gz. This causes KRNL-5730 to fail due to missing prereqs,
despite a kernel config existing.

Signed-off-by: Jeremias Cordoba <js.cordoba8321@gmail.com>
2020-05-04 15:51:03 -07:00
Topi Miettinen fcdc07f8d9
[CRYP-7902] Check also certificates in DER format
Check also certificates in DER (*.cer, *.der) format. Add
/etc/refind.d/keys to list of certificate paths.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-04-25 00:06:58 +03:00
Thomas Sjögren 51dfc34663 accept more restrictive file permissions
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-04-22 10:34:58 +02:00
Michael Boelen ce3c80b44f
Merge pull request #883 from topimiettinen/check-encrypted-swap-devices
Check if system uses encrypted swap devices
2020-04-12 16:22:22 +02:00
Topi Miettinen de848cb76a
Check for registered non-native binary formats
Examine /proc/sys/fs/binfmt_misc (Linux) for additional registered
binary formats. Those are probably emulated and their emulation could
be less tested, more buggy and more vulnerable than native binary
formats, so they should be disabled when not needed.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-04-10 12:54:48 +03:00
Michael Boelen a166691199
Merge pull request #882 from topimiettinen/check-package-certificates
[CRYP-7902] Check also certificates provided by packages
2020-04-09 11:01:39 +02:00
Michael Boelen 1163648d89
Merge pull request #896 from Schmuuu/feature/raspi-detect-required-reboot
extended test KRNL-5830 to detect required reboots on Raspbian
2020-04-09 09:58:48 +02:00
Michael Boelen 0019cf3297
Merge pull request #904 from bginsbach/krnl-5677
KRNL-5677 use platform instead of preqs-met
2020-04-09 09:55:28 +02:00
Brian Ginsbach 95b1ae044b KRNL-5677 use platform instead of preqs-met 2020-04-08 15:55:45 -05:00
Martin Churchill e4d491d574
[CRYP-7902] Fixes issue #902
[CRYP-7902] Checks for SSL_CERTIFICATE_PATHS_TO_IGNORE fails to ignore sub-directories #902
2020-04-08 10:02:18 +01:00
Michael Boelen be75a089a7
[PROC-3802] added package manager routine as dependency 2020-04-07 10:53:39 +02:00
Michael Boelen c368846a08
Added support to require a detected and known package manager 2020-04-06 20:47:45 +02:00
Michael Boelen 9da0665929
[NETW-2400] Improved logging 2020-04-04 15:56:00 +02:00
Michael Boelen 032bb6988e
Added new test NETW-2400 2020-04-04 15:28:04 +02:00
Michael Boelen 4680f94d11
[NETW-2706] allow usage of systemd-resolve and resolvectl, improved screen output and logging 2020-04-03 14:02:52 +02:00
Michael Boelen 5288479296
Merge pull request #899 from bginsbach/auth-9218
AUTH-9218 Improvements
2020-04-03 09:48:39 +02:00
Michael Boelen f92fe4e03f
Merge pull request #898 from bginsbach/auth-9268
AUTH-9268 Add DragonFly
2020-04-03 09:45:21 +02:00
Michael Boelen f25ffdbb1f
[NETW-2706] redirect errors to stderr 2020-04-03 09:40:30 +02:00
Brian Ginsbach ac7ad92f22 AUTH-9218 add NetBSD and OpenBSD
All of the BSDs have `/etc/master.passwd`.
2020-04-02 20:09:34 -05:00
Brian Ginsbach 50a60fed87 AUTH-9218 add requires root
The `/etc/master.passwd` file on BSD systems is (or should be) read/write
root only. Skip the test if not being run as root.
2020-04-02 20:09:15 -05:00
Brian Ginsbach 6308682cae Combine AUTH-9218 and AUTH-9489
These two tests are essentially identical. There is no need separate
the DragonFly and FreeBSD tests. This will make it easier to add
support for other BSD systems.
2020-04-02 20:09:01 -05:00
Brian Ginsbach 4bcd695428 AUTH-9268 Add DragonFly
DragonFly also supports PAM. Rework to use the `--os` option of `Register`
rather than `--preqs-met` as the former can support a list.
2020-04-02 15:59:11 -05:00
Kristian S 52b72e7b0f extended test KRNL-5830 to detect required reboots on Raspbian 2020-04-02 21:45:40 +02:00
Michael Boelen 38a5c2cb79
Added new test PHP-2382 2020-04-02 19:46:58 +02:00
Michael Boelen 6eb204a85d
[PRNT-2308] check for Port statement and minor adjustments to test 2020-04-02 14:45:44 +02:00
Michael Boelen ca6fc134dd
Renamed spools to spoolers 2020-04-02 13:20:06 +02:00
Michael Boelen 4fe1cb92a5
[PRNT-2308] check also SSLListen statements 2020-04-02 13:15:03 +02:00
Topi Miettinen 9642bcffc8
[CRYP-7902] Optionally check also certificates provided by packages
The package maintainers are not immune to mistakes or they might not
always provide timely updates, so let's check (optionally) more
certificates even if they are delivered by packages.

I found three expired certificates in my Debian/unstable system,
thanks to changed Lynis.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-04-02 12:52:13 +03:00
Michael Boelen b5a2d11738
Added fallback for awk/tr, small code enhancement, added note 2020-04-02 09:28:41 +02:00
Michael Boelen 156f740ff2
The IsRunning function may have not everything defined early on, so added a fallback 2020-04-01 19:02:11 +02:00
Michael Boelen 4432f93044
[LOGG-2190] skip mysqld related entries 2020-04-01 16:32:52 +02:00
Michael Boelen f232b4f9bb
Added quotes 2020-04-01 16:18:03 +02:00
Michael Boelen 7e3c9448df
[TIME-3104] search for files using find and strip potential characters that may be unexpected 2020-04-01 16:16:31 +02:00
Michael Boelen 8c501c7aa8
Merge pull request #885 from sanderu/master
Adding test FILE-6394
2020-04-01 13:43:58 +02:00
Michael Boelen c5914c4e0f
Split count values so they are reported as individual items 2020-04-01 11:48:39 +02:00
Topi Miettinen 179f7d3442
Enhance binaries report
Report also number of set-uid and set-gid binaries found.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-31 19:09:57 +03:00
Michael Boelen 288bca9334
Merge pull request #887 from bginsbach/fix-auth-9229
AUTH-9229 Do not use long options for sort
2020-03-31 16:35:48 +02:00
Michael Boelen a38e2b535e
Corrected case where binaries were not checked while we do want to use dmidecode if it available 2020-03-31 16:31:41 +02:00
Michael Boelen 53ad72e791
Removed unneeded complexity regarding dmidecode, as binary checks are already done at this point 2020-03-31 16:25:27 +02:00
Michael Boelen 4ff61a6f46
Merge pull request #890 from bginsbach/add-pkg_info
Add pkg_info
2020-03-31 15:49:54 +02:00
Michael Boelen e481d5a173
Merge pull request #888 from bginsbach/fix-auth-9230
Fix AUTH-9230 for systems without /etc/login.defs
2020-03-31 11:22:31 +02:00
Brian Ginsbach 94915ac2fe Fix PKGS-7301 message nit
The comment is correct. It is FreeBSD pkg not NetBSD pkg.
2020-03-30 14:23:58 -05:00
Brian Ginsbach eb7dbab1ee Add pkg_info to PackageIsInstalled
The `pkg_info` command is used on a system using NetBSD pkgsrc to
determine which packages are installed.
2020-03-30 14:12:36 -05:00
Brian Ginsbach 2b1d5fa46f Add NetBSD pkgsrc pkg_info to known binaries
The NetBSD pkgsrc package management system uses pkg_info for
determining information about packages. This is also the command
used in PKGS-7302.
2020-03-30 14:09:28 -05:00
Brian Ginsbach f13d919dfa PROC-3802 Only check for prelink package on Linux
The prelink package is Linux specific no need to check for it on
non-Linux systems.
2020-03-29 16:19:25 -05:00
Brian Ginsbach 90b17121ba Fix AUTH-9230 for systems without /etc/login.defs
This fixes a bug where it was determined that /etc/login.defs didn't
exist as a prerequisite but then wasn't used to skip the test. Prevents
warnings from `grep(1)` for "no such file or directory".
2020-03-29 15:31:41 -05:00
Brian Ginsbach 18daa9f495 AUTH-9229 Do not use long options for sort
Use the standard `sort(1)` short option `-u` rather than `--unique`,
since not all versions support long options.
2020-03-29 15:06:36 -05:00
Sander 4732b640ae Adding test FILE-6394 2020-03-28 19:23:00 +00:00
Topi Miettinen 5c5cc43c6f
Check if system uses encrypted swap devices
Add test CRYP-7931 to check if the system uses any encrypted swap
devices.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-27 13:05:56 +02:00
Michael Boelen 603d5b16a2
[FINT-4339] define what file to check for 2020-03-25 19:40:05 +01:00
Michael Boelen b8cdb04772
Corrected requirements to run tests 2020-03-25 19:33:55 +01:00
Michael Boelen 1e52ed0c0d
Added notes to NETW-3200 for future extending this test 2020-03-25 15:19:21 +01:00
Michael Boelen 04c969752a
[NETW-3200] corrected test 2020-03-25 15:15:42 +01:00
Michael Boelen 9b978a3581
Add specific control ID for warnings regarding usage of deprecated options 2020-03-25 15:03:21 +01:00
Michael Boelen db117ae644
Merge branch 'master' of https://github.com/CISOfy/lynis 2020-03-25 10:11:34 +01:00
Michael Boelen f644927a42
Improved warning message with 'how to resolve' 2020-03-25 10:11:25 +01:00
Topi Miettinen 339e0c3207
[FILE-6374]: Summarize unhardened file system
Report total numbers of unhardened filesystems.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-25 09:18:16 +02:00
Michael Boelen 3c8e3b0adb
Merge pull request #862 from topimiettinen/blacklist-fs
FS module tests: check if modules are blacklisted
2020-03-24 13:34:05 +01:00
Michael Boelen 3c3feecbfb
Merge pull request #824 from Varbin/master
Add detection of OpenNTPD
2020-03-24 13:29:02 +01:00
Michael Boelen f83025a283
Merge pull request #860 from topimiettinen/harden-mount-options
Harden mount options for /var, check also /dev and /run
2020-03-24 13:27:50 +01:00
Michael Boelen dbfadc5446
Merge pull request #879 from topimiettinen/enhance-tomoyo-check
Enhance TOMOYO Linux check
2020-03-24 13:26:33 +01:00
Michael Boelen 18a570c0b8
Merge pull request #880 from konstruktoid/grphashrounds
Add test for group password hash rounds
2020-03-24 13:24:12 +01:00
Thomas Sjögren bc09f921f0 fix indentation
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-03-24 11:53:50 +01:00
Thomas Sjögren 0b9e2d85d6 fix tabs
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-03-24 11:45:05 +01:00
Thomas Sjögren 5341fa7b29 AUTH-9229 isnt related to login.defs, add AUTH-9230
Signed-off-by: Thomas Sjögren <konstruktoid@users.noreply.github.com>
2020-03-24 11:44:14 +01:00
Topi Miettinen e09fe98b89 Enhance TOMOYO Linux check
Count and log unconfined processes, which are not using policy
profile 3.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-23 18:44:21 +02:00
Topi Miettinen 0da82a18cb
FS module tests: check if modules are blacklisted
Check if FS modules are blacklisted.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-23 17:43:53 +02:00
Topi Miettinen 8913374092 Run 'systemd-analyze security'
'systemd-analyze security' (available since systemd v240) makes a nice
overall evaluation of hardening levels of services in a system. More
details can be found with 'systemd-analyze security SERVICE' for each
service.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-23 17:31:32 +02:00
Michael Boelen 7bba7bd4af
Removed incorrect process name from list, enable --full as it is required for matching jitterentropy-rngd 2020-03-23 16:13:39 +01:00
Michael Boelen dcddfdb6cc
Merge branch 'master' of https://github.com/CISOfy/lynis 2020-03-23 15:56:03 +01:00
Michael Boelen 1e74f9be9a
Fixed 'lynis show details' output 2020-03-23 15:55:40 +01:00
Michael Boelen 8f77116ce7
Merge pull request #876 from topimiettinen/enhance-apparmor-check
Enhance AppArmor check
2020-03-23 15:24:52 +01:00
Michael Boelen 7d1fe1231a
[CRYP-8005] added haveged, match against process name instead of full command line, code cleanup 2020-03-23 14:29:47 +01:00
Michael Boelen 1eb9218986
Merge branch 'master' of https://github.com/CISOfy/lynis 2020-03-23 13:19:29 +01:00
Michael Boelen 17bbaa8f7a
[AUTH-9229] make test only available for root 2020-03-23 13:19:10 +01:00
Michael Boelen 32cefdea0a
Merge pull request #878 from topimiettinen/check-ima-evm
Check IMA/EVM, dm-integrity and dm-verity statuses
2020-03-23 13:18:16 +01:00
Michael Boelen 122619d01f
Merge pull request #874 from topimiettinen/check-password-hashing-methods
Check password hashing methods
2020-03-23 12:49:20 +01:00
Michael Boelen 17ac4d2c1c
[AUTH-9252] corrected permission check 2020-03-23 10:44:45 +01:00
Topi Miettinen 8ea39314f2
Check for dm-integrity and dm-verity
Detect tools for dm-integrity and dm-verity, check if some devices
in /dev/mapper/* use them and especially the system root device.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-23 10:35:38 +02:00
Michael Boelen 058b071ea2
Merge pull request #877 from bginsbach/auth-9268-add-bsd
Add FreeBSD and NetBSD to AUTH-9268
2020-03-22 15:16:09 +01:00
Topi Miettinen 203a4d3480
Check IMA/EVM status
Check for evmctl (Extended Verification Module) tool and system IMA (Integrity Measurement
Architecture) status.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-22 11:21:52 +02:00
Brian Ginsbach 33ba896b41 Add FreeBSD and NetBSD to AUTH-9268
Add FreeBSD and NetBSD as both support PAM. Simplify the PREQS_MET
test by using a case rather than a long if or.
2020-03-21 20:03:37 -05:00
Brian Ginsbach f56c3b5f94 Combine NetBSD and OpenBSD AUTH-9234 check
Both NetBSD and OpenBSD have `useradd(8)`, so they can share logic
checking `/etc/usermgmt.conf` for the default user UID range.
2020-03-21 16:16:34 -05:00
Brian Ginsbach 044c78452b Add AUTH-9234 for NetBSD 2020-03-21 16:10:05 -05:00
Topi Miettinen e0e2096a25
Enhance AppArmor check
Count and log unconfined processes which have no AppArmor profile
applied.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-21 17:14:55 +02:00
Topi Miettinen 26a54991ba
Check for software pseudo random number generators
Check for running audio-entropyd, havegd or jitterentropy-rngd.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-21 16:26:30 +02:00
Michael Boelen 148e5b5c14
Merge pull request #870 from bginsbach/boot-5260-linux
Make BOOT-5260 Linux only
2020-03-21 13:54:21 +01:00
Michael Boelen 1bb35b86b8
Merge pull request #873 from topimiettinen/fix-developer-profile
Fix developer profile
2020-03-21 13:50:03 +01:00
Michael Boelen 357b059c12
Merge pull request #871 from bginsbach/fix-find-not
Fix uses of non-standard find not operator
2020-03-21 13:43:28 +01:00
Topi Miettinen 4a51ad031b
Check password hashing methods
Manual page crypt(5) gives recommendations for choosing password
hashing methods, so let's check if there are weakly encrypted
passwords in the system.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-21 12:50:38 +02:00
Topi Miettinen e98fcb9b73
Fix developer profile
Initialialize a few variables to let --profile developer.prf pass.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-20 22:26:51 +02:00
Brian Ginsbach 9c5451d29d Make BOOT-5260 Linux only
Linux is the only OS with systemd so no need to check for systemd
single user mode on other operatings systems.
2020-03-20 14:40:20 -05:00
Brian Ginsbach 32d1155953 Fix uses of non-standard find not operator
Use ! rather than the non-standard -not find(1) operator.
2020-03-20 14:37:56 -05:00
Brian Ginsbach 52344913d3 Add a way to signify undetermined EOL
Replace setting an artificaly high date and converted date for
operating systems with no EOL (rolling) or the EOL is still to
be determined. This makes it easier for humans and saves making
a comparison (when using an artifically high converted time)
will always be false (EOL=0).

An example entry

        os:AGreatOS 2.0:👎

The converted time (seconds since the epoch) could be specified as
zero but this typically means the OS is out of date (now), A value
of -1 is a convention indicating no EOL.
2020-03-20 13:42:28 -05:00
Michael Boelen 1f8b5fafde
Add OS to 'show eol' and make output easier to parse 2020-03-20 14:57:56 +01:00
Michael Boelen 38310223a6
Updated date/year 2020-03-20 14:50:25 +01:00
Michael Boelen 8c0b42cdae
Merge pull request #861 from topimiettinen/enhance-selinux-check
Enhance SELinux checks
2020-03-20 14:00:57 +01:00
Michael Boelen bf7bd1415b
Merge pull request #867 from topimiettinen/check-dnssec-resolvectl
Check DNSSEC status with resolvectl when available
2020-03-20 09:46:40 +01:00
Topi Miettinen 820d2ec607
Check DNSSEC status with resolvectl when available
'resolvectl statistics' shows if DNSSEC is supported by
systemd-resolved and upstream DNS servers.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-19 23:56:24 +02:00
Topi Miettinen fb9cdb5c43
Enhance SELinux checks
Display and log: permissive types (rules are not enforced), unconfined
processes (not confined by rules) and processes with initrc_t
type (generic type with weak rules).

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-19 19:45:37 +02:00
Michael Boelen ddcf9bc713
[BOOT-5122] check for defined password in all GRUB configuration files 2020-03-19 15:52:03 +01:00
Topi Miettinen 72e8f572bf
Harden mount options for /var, check also /dev and /run
There should not be any need for char/block devices in /var, so
propose nodev. Sockets are not affected.

Check also /dev for noexec,nosuid and /run for
nodev,nosuid. Historically there was /dev/MAKEDEV script but that's
long gone.

In case a file system is not found in /etc/fstab, check if they are
mounted otherwise (e.g. via systemd mount units).

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-19 16:39:02 +02:00
Michael Boelen 6d9ebe4136
Merge pull request #857 from topimiettinen/handle-kernel-img.conf
Check if /vmlinuz is missing due to /etc/kernel-img.conf
2020-03-19 15:33:47 +01:00
Michael Boelen 51d727d611
Merge pull request #858 from topimiettinen/fix-enabled-running-processes
Fix logging of running and enabled services
2020-03-19 15:32:54 +01:00
Topi Miettinen 3aaeeea856
Check for rEFInd boot loader
Detect rEFInd boot loader (https://www.rodsbooks.com/refind/).

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-19 15:44:30 +02:00
Topi Miettinen 80a67914c3
Fix logging of running and enabled services
Log lines for running and enabled services were mixed up, fix.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-19 15:25:59 +02:00
Topi Miettinen f15fbfa6ed
Check if /vmlinuz is missing due to /etc/kernel-img.conf
If /etc/kernel-img.conf has the line do_symlinks=No, Debian (probably
also Ubuntu) kernel packages will not update /vmlinuz
etc. symlinks. In that case, guess the kernel from uname -r.

Signed-off-by: Topi Miettinen <toiwoton@gmail.com>
2020-03-19 15:16:37 +02:00
Michael Boelen 671c443641
Merge pull request #845 from maczniak/master
[SSH-7408] fix OpenSSH server version check
2020-03-19 11:00:38 +01:00
Michael Boelen b523352a59
Merge pull request #830 from Schmuuu/fix/vmlinuz-check
restructered test and fixed vmlinuz detection
2020-03-19 10:58:27 +01:00
Michael Boelen bc4146555c
[PKGS-7388] Only perform test when all conditions are correct 2020-03-19 10:51:02 +01:00
Michael Boelen 8a42643373
Merge pull request #822 from pyllyukko/vmlinuz-raspbian
KRNL-5788 in Raspi: don't complain about missing /vmlinuz
2020-03-18 11:39:58 +01:00
Michael Boelen 6a5ea9471e
Merge pull request #828 from gfelkel/patch-1
FILE-6310 for HP-UX
2020-03-18 11:35:03 +01:00
Michael Boelen 6e3e93d585
[PKGS-7388] only perform check for Debian, Mint, Ubuntu 2020-03-17 16:05:14 +01:00
Michael Boelen 77dd0e0bbe
Merge pull request #853 from deltablot/php
Skip the PHP cli configuration file when looking for expose_php
2020-03-17 14:02:51 +01:00
Michael Boelen d1db448c51
Skip pacman when it is the game instead of package manager 2020-03-17 13:02:59 +01:00
Michael Boelen 0b0b0ea905
Style improvement 2020-03-12 16:01:11 +01:00
Michael Boelen 83a9470b72
Merge pull request #829 from gfelkel/patch-2
AUTH-9228 for HP-UX
2020-03-12 15:59:33 +01:00
Michael Boelen 2f9f25a2bf
Merge pull request #842 from chifu1234/master
add basic xbps/void support
2020-03-11 15:53:57 +01:00
Michael Boelen efc591c791
Merge pull request #846 from Skactor/patch-2
Update tests_shells
2020-03-11 15:52:33 +01:00
Michael Boelen 73491ec850
Merge pull request #843 from Skactor/patch-1
Update tests_ports_packages
2020-03-10 15:21:08 +01:00
Nicolas CARPi 600cb84310 Use a POSIX implementation to check for substring
This works with all shells, even busybox.
2020-03-05 21:42:54 +01:00
Nicolas CARPi 0593c69f2f Skip the PHP cli configuration file when looking for expose_php
The expose_php configuration option is only relevant for non-cli PHP and
thus lynis should not look for it in config files that are for cli

Fix #849
2020-03-05 00:53:27 +01:00
Michael Boelen 3f883106c9
Merge pull request #840 from deltablot/ssh
Remove the test for ssh config VerifyReverseMapping
2020-03-04 19:36:56 +01:00
Michael Boelen 28bd36d9c6
Added Fedora 2020-03-04 15:09:10 +01:00
Michael Boelen c0158da38e
Corrected test ID 2020-03-04 15:04:54 +01:00
Michael Boelen 5faf69af16
Code enhancement to avoid repetition 2020-03-04 15:02:39 +01:00
Michael Boelen 6e5f638640
Merge pull request #852 from craigcomstock/pureos
Added detection of PureOS in /etc/os-release
2020-03-04 14:58:59 +01:00
Michael Boelen e008907ff1
Remove 's' from word 'colours' 2020-03-04 14:51:13 +01:00
Michael Boelen b011b7a8d5
Merge pull request #850 from gcsgithub/soerelease
Soerelease
2020-03-04 14:48:19 +01:00
Craig Comstock 22ceeaa926
Added detection of PureOS in /etc/os-release 2020-03-03 13:56:33 -06:00
Mark Garrett 0cd256372c fix whitespace 2020-03-01 10:31:52 +11:00
Mark Garrett b2f676da7b allow for correct spelling for colour should drop the s from colours but didnt 2020-03-01 10:19:33 +11:00
Mark Garrett 30b1e4170b macosx add Catalina 10.15 2020-03-01 10:18:33 +11:00
Skactor fc7c5fb723
Update tests_shells
Write function as variable due to careless error
2020-02-25 15:48:55 +08:00
maczniak d8a3bc8afa fix CISOfy/lynis#844 2020-02-24 23:17:09 +09:00
Skactor 35e568e695
Update tests_ports_packages
Incorrect constant name spelling
2020-02-24 20:44:05 +08:00
Kevin 42b2831f75 add basic xbps/void support 2020-02-21 08:06:24 +01:00
Nicolas CARPi 91ad10d464 Remove the test for ssh config VerifyReverseMapping
This option is deprecated since 2003. Having it in a config file raises
a warning and UseDNS (that is on by default) includes the
VerifyReverseMapping check.

See
3a961dc0d3

See #528
2020-02-18 22:19:45 +01:00
Michael Boelen 3bbe34ea73
[CRYP-8004] enhanced after pulling in initital test 2020-02-15 14:09:56 +01:00
Michael Boelen 5ca8baf7a8
[USB-2000] improved testing for USB devices and filtering out possible incorrect state 2020-02-15 14:09:23 +01:00
Michael Boelen af70303aeb
Set preferred option to skip plugin executiont o --no-plugins, as that is more in line with the other 'no' options 2020-02-14 11:49:32 +01:00
Michael Boelen 3f834e6ad5
Merge pull request #821 from pyllyukko/CRYP-8004
Added CRYP-8004
2020-02-13 13:40:10 +01:00
Sascha Holzleiter 530ad1ef75 NETW-3014: Report correct promisc interface 2020-01-28 21:29:34 +01:00
Kristian Schuster 79a29381a4
restructered test and fixed vmlinuz detection 2020-01-26 19:13:26 +01:00
gfelkel 5bce9d598c
AUTH-9228 for HP-UX
HP-UX also has /usr/sbin/pwck. For trusted systems, two additional options -s (check inconsistencies with the protected password database) and -l (check encrypted password lengths that are greater than 8 characters) are available.
2020-01-23 13:30:46 +01:00
gfelkel d3287bd7ef
FILE-6310 for HP-UX
HP-UX: /usr/sbin/mount reports "/home on /dev/…", so $1 has to be used
2020-01-22 16:31:49 +01:00
Michael Boelen a7b48e40b0
[NETW-3015] check for promiscuity value that is higher than 0 instead of just 1 2020-01-11 11:31:40 +01:00
Michael Boelen 232b1cdc3f
[KRNL-5820] allow dash to define hard/soft value 2020-01-11 11:27:37 +01:00
Simon Biewald c58e296bd3
add openntpd detection and a few tests for it 2020-01-08 18:53:15 +01:00
pyllyukko 618a843017
KRNL-5788 in Raspi: don't complain about missing /vmlinuz
The Raspberry Pi kernels reside within raspberrypi-kernel package[1].

[1] https://www.raspberrypi.org/documentation/linux/kernel/updating.md
2020-01-07 22:27:27 +02:00
pyllyukko 40acdc111d
Added CRYP-8004 2020-01-06 21:22:00 +02:00
Michael Boelen b7da40c6ae
[KRNL-5830] derive kernel version from filename after obtaining symlink target 2019-12-23 15:41:26 +01:00
Michael Boelen ab4291242d
[KRNL-5830] check for symlink 2019-12-23 15:36:26 +01:00
Michael Boelen e5091772c5
Removed -o which had no purpose 2019-12-23 13:59:06 +01:00
Michael Boelen 35d248b74c
[FILE-6430] minor code improvements and show suggestion with more details 2019-12-18 19:20:48 +01:00
Michael Boelen cb59e92441
[MALW-3280] Added support for falcon-sensor by CrowdStrike 2019-12-18 12:22:51 +01:00
Michael Boelen 09f29a5e64
Code style improvement: quote argument 2019-12-18 12:17:46 +01:00
Michael Boelen 94ba30e765
[INSE-8050] corrected function call for showing suggestion 2019-12-18 12:04:32 +01:00
Michael Boelen c4b24c48a9
[INSE-8314] changed text of suggestion 2019-12-18 12:01:32 +01:00
Michael Boelen 2dfb901bcb
[PKGS-7410] Use multiple package managers when they are available on system. Also added support for Zypper for this test 2019-12-17 08:23:12 +01:00
Michael Boelen 11f8ce2361
[KRNL-5830] Use symlink, only test for 'version' keyword if needed, adjusted exception message 2019-12-17 08:03:51 +01:00
Michael Boelen 4e255617d3
[KRNL-5830] Fetch target for symlinked kernel 2019-12-16 09:47:40 +01:00
Michael Boelen d680fe549f
Switched from warnings to suggestions, corrected path selection for DIR variable 2019-12-13 12:59:43 +01:00
Michael Boelen f35a08ad28
Quoting should not be used when globbing 2019-12-13 12:40:29 +01:00
Michael Boelen 1b4b02d813
Decrease length of line breaks between tests 2019-12-13 12:36:19 +01:00
Michael Boelen bf4374bb19
[KRNL-5830] skip test partially if non-privileged 2019-12-13 12:35:38 +01:00
Michael Boelen fd84be485b
Improved permission check for BSD systems 2019-12-13 12:34:56 +01:00
Michael Boelen f00447fd1b
Style change, add curly brackets 2019-12-06 15:55:59 +01:00
Michael Boelen c7c44535e7
Merge pull request #800 from Schmuuu/core/fix-relative-path-detection
don't fail relative paths check with spaces in PATH
2019-12-06 15:39:55 +01:00
Michael Boelen 24c5a9fcea
Merge branch 'master' into master 2019-12-06 15:35:46 +01:00
Michael Boelen 6421c2e419
[BANN-7126] additional words for login banner are accepted 2019-12-06 09:49:06 +01:00
Michael Boelen 15ae5ea0c1
Added alias --use-cwd as that is more in line with other options (instead of --usecwd) 2019-12-04 08:01:56 +01:00
Michael Boelen c67696455f
Merge pull request #797 from Schmuuu/KRNL-5840/find-more-kernels
KRNL-5840: add detection for proxmox and raspi kernel
2019-12-03 14:32:52 +01:00
Michael Boelen 3e9902b35e
Merge pull request #798 from Schmuuu/OS-detection/detect-raspbian
OS-Detection: add raspian detection
2019-11-28 15:42:45 +01:00
Michael Boelen dd2cb31c7f
Merge pull request #799 from Schmuuu/ntp/set-NTP_CONFIG_FOUND
do set variable NTP_CONFIG_FOUND if ntp config is found
2019-11-28 15:05:01 +01:00
Michael Boelen ea03723093
Merge pull request #803 from dvehrs/PermTests
Updated tests for file permissions to case statements
2019-11-25 15:32:06 +01:00
Michael Boelen cad55d8bec
Merge pull request #802 from dvehrs/HCFP
Updated permissions checks
2019-11-25 15:28:00 +01:00
Michael Boelen 65f88e148b
Merge pull request #804 from Schmuuu/krnl/fix-wrong-limits-subfolder
fix left over test folder with correct folder from variable
2019-11-25 15:23:47 +01:00
Michael Boelen 35ca01eaac
Merge pull request #805 from Schmuuu/tests_php/add_some_php72_and_php73_support
added additional php folders to check, plus added PHP72 and PHP73
2019-11-25 15:23:11 +01:00
Michael Boelen f81ff3d7d6
Removed empty lines 2019-11-18 10:20:31 +01:00
Michael Boelen ffc9309338
Merge branch 'master' of https://github.com/CISOfy/lynis 2019-11-18 10:19:58 +01:00
Michael Boelen a07fcb3348
Add USR1 trap to show status such as active test 2019-11-18 10:19:43 +01:00
Michael Boelen 421b42c5b0
Merge pull request #809 from Marzal/master
First fix in order make lynis work OK in AIX
2019-11-13 11:21:43 +01:00
Michael Boelen 6d594b899f
Merge pull request #810 from neilmayhew/fix/773-home-9306
Fix for false positive for some users on HOME-9306
2019-11-13 11:18:04 +01:00
fbomj 2b8f761efa MALW-3280: Kaspersky detection 2019-11-06 21:49:54 +01:00
János Márkus d9013b13ac Fixes CISOfy/lynis#773 2019-11-03 11:48:03 +01:00
Neil Mayhew 9de8227674 Fix for false positive for some users on HOME-9306
Closes #773

Patch from @church1e
2019-11-01 18:12:33 -06:00
Marzal 8353483d1d grep doesn't work with '\|' in AIX. grep -E is more POSIX compliant. 2019-10-29 18:47:07 +01:00
Kristian Schuster d97221b851
added additional php folders to check, plus added PHP72 and PHP73 2019-10-24 00:14:42 +02:00
Kristian Schuster 32ee016810
fix: forgot to replace test folder with correct folder from variable 2019-10-23 23:06:03 +02:00
Dave Vehrs e6bf111f41 Updated tests for file permissions to case statements 2019-10-23 14:47:03 -06:00
Dave Vehrs 6dad2f476e Updated permissions checks 2019-10-23 12:31:20 -06:00
Kristian Schuster 4898e48e16
don't fail relative paths check with spaces in PATH 2019-10-22 21:43:37 +02:00
Kristian Schuster 62feaf3fff
do set variable NTP_CONFIG_FOUND if ntp config is found 2019-10-22 20:07:56 +02:00
Kristian Schuster 66a754fa18
OS-Detection: add raspian detection 2019-10-20 20:21:54 +02:00
Kristian Schuster ace2e27237
KRNL-5840: add detection for proxmox and raspi kernel 2019-10-20 19:55:34 +02:00
Kristian Schuster 62419033f5
fix for #781 - run lsblk without --paths 2019-10-19 00:34:25 +02:00
Michael Boelen c16133b255
Merge pull request #772 from Marzal/Marzal-test_storage
Clean shellcheck warnings in STRG-1846
2019-10-16 14:49:46 +02:00
Kristian Schuster 4eeb2899cc
add missing variables and replace '\s' to be posix conform 2019-10-15 21:52:53 +02:00
Michael Boelen 7932daca8f
Merge pull request #784 from Schmuuu/krnl/disabled-coredumps-detection
KRNL-5820: add checks for disabled coredumps in systemd & etc/profile
2019-10-15 16:06:44 +02:00
Michael Boelen 7ce61bb5dd
Merge pull request #778 from pyllyukko/SINT-7010-MacOS
Test SINT-7010 in macOS only
2019-10-15 15:43:26 +02:00
Michael Boelen 6c3fc531ec
Merge pull request #779 from pyllyukko/gradm-stderr
Redirect gradm stderr to /dev/null
2019-10-15 15:42:08 +02:00
Michael Boelen fda0d3cf4a
Merge pull request #770 from Schmuuu/master
nginx-test: add log file detection for relative paths
2019-10-15 15:40:30 +02:00
Michael Boelen 1f4092d8e0
Merge pull request #777 from pyllyukko/osdetection-slackware
Slackware Linux OS detection
2019-10-15 15:36:31 +02:00
Katarina Durechova 4bb78d721e Databases - variables initialization 2019-10-14 21:50:22 +02:00
Kristian Schuster 3bc70b425e
fix old limits check not working in a few cases 2019-10-13 23:08:19 +02:00
Kristian Schuster 7b52ff52c7
add check for disabled coredumps in etc/profile and systemd 2019-10-13 22:06:50 +02:00
pyllyukko b771437cd0
Redirect gradm stderr to /dev/null
If the tool exists but the kernel doesn't have grsec, you'll get the
following error into stderr:

Could not open /dev/grsec.
open: No such file or directory
2019-10-08 20:52:55 +03:00
pyllyukko c88953a815
Test SINT-7010 in macOS only 2019-10-08 20:31:35 +03:00
pyllyukko 52cef0ed87
Slackware Linux OS detection 2019-10-08 20:19:30 +03:00
Michael Boelen 52e1231433
Additional check to ensure pacman package manager is used instead of pacman game 2019-10-08 16:43:09 +02:00
Michael Boelen 87f5596952
Added new test DBS-1828 2019-10-08 15:15:18 +02:00
Michael Boelen f188bac7e8
Update description for FILE-6374 2019-10-08 15:10:02 +02:00
Marzal f77e56ed4b Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. SC2166 2019-09-29 21:17:52 +02:00
Marzal a052a107d3 SC2086 2019-09-29 21:15:29 +02:00
Marzal 7d430d5abc rephrasing comment to avioid false positive in lynis-sdk 2019-09-29 21:13:47 +02:00
Kristian Schuster 51d3c56842
crypto-test: suppress errors when devs are not accessible for cryptsetup 2019-09-29 17:44:15 +02:00
Kristian Schuster 001cd85183
kernel-test: additional improvements for required reboot detection 2019-09-29 17:42:07 +02:00
Kristian Schuster 364b770c64
kernel-test: determine reboot requirement for more distros. Plus a few fixes 2019-09-28 00:39:12 +02:00
Kristian Schuster b38031803d
kernel-test: avoid grep errors if etc/security/limits.d does not exist 2019-09-27 00:07:45 +02:00
Kristian Schuster 07084501b6
kernel-test: add linux-lts detection for arch 2019-09-26 23:26:08 +02:00
Kristian Schuster d17d30d6a7
nginx-test: add log file detection for relative paths 2019-09-26 21:24:15 +02:00
Michael Boelen e64e49a551
Merge pull request #763 from Marzal/Marzal-F_isRunning
Second version of #740 without shellcheck directives
2019-09-22 15:07:53 +02:00
Michael Boelen a1b6d463b2
Fixed a typo 2019-09-21 16:31:06 +02:00
Michael Boelen 2c32e8e04d
Merge pull request #765 from Marzal/Marzal-AUTH-9282
Fix auth-9282
2019-09-21 15:49:58 +02:00
Michael Boelen ca1d7ace1d
Merge branch 'master' of https://github.com/CISOfy/lynis 2019-09-21 10:10:09 +02:00
Mike Robinson 8088d0ab77
Update tests_ldap
Check was backwards
2019-09-19 18:14:06 -06:00
Marzal 0e1e80bacf Double quote to prevent globbing and word splitting.SC2086 2019-09-19 23:36:36 +02:00
Marzal 42ac40aad6 Change variable name from FIND to FIND_P so is not reset by Register 2019-09-19 23:33:19 +02:00
Marzal ddd87371b5 Double quote to prevent globbing and word splitting.SC2086 Info 2019-09-19 20:01:31 +02:00
Marzal 09a60783a6 Prefer [ p ] && [ q ] as [ p -a q ] is not well defined.SC2166 2019-09-19 20:00:12 +02:00
Michael Boelen e48df09c4c
Fixed typo found by SDK 2019-09-19 19:10:13 +02:00
Michael Boelen 187016a051
Changed spacing 2019-09-19 15:23:37 +02:00
Michael Boelen c0f9c0ab84
Style and log improvements 2019-09-19 14:34:06 +02:00
Michael Boelen f389cc5d99
Merge pull request #761 from Schmuuu/master
enhance nginx include config detection …
2019-09-19 14:21:32 +02:00
Michael Boelen 36627a4eb7
Style improvements 2019-09-19 14:05:15 +02:00
Kristian Schuster ccb8b2b615
enhance nginx config detection to correctly include confs via relative path and wildcards 2019-09-18 20:47:09 +02:00
Michael Boelen 6cf0b28f2c
Bugfix: line had double print with incorrect quote 2019-09-17 20:13:14 +02:00
Michael Boelen 98017c78ca
Implemented several code style improvements 2019-09-17 14:04:30 +02:00
Michael Boelen 95e9e80834
Moved function 2019-09-14 13:23:28 +02:00
Michael Boelen 13a4dff7fe
Improved logging of HasCorrectFilePermissions function and use correct value when data has a value of zero 2019-09-14 13:22:50 +02:00
Michael Boelen 5c38a0bdb4
Tests using lsof may ignore threads (if supported) 2019-09-13 11:47:39 +02:00
Michael Boelen ca0239b4d9
[FILE-6374] corrected defaults flag, added root directory, and changed logging 2019-09-12 16:34:45 +02:00
Michael Boelen 79e5b52419
[SSH-7408] added forced-commands-only 2019-09-12 11:17:18 +02:00
Michael Boelen fa9fdd4322
[MAIL-8804] replaced static strings with translation-aware strings 2019-09-12 11:13:39 +02:00
lowkey 0fc887e830 Removed WARNINGs from unset certificate and private key 2019-09-11 10:47:28 -06:00
Michael Boelen fbcfab1adc
[LOGG-2154] support new-style rsyslog configuration for remote targets 2019-09-10 14:52:20 +02:00
Michael Boelen 9041517e2a
Added Debian and standardized others 2019-09-03 10:06:26 +02:00
Michael Boelen 0d58ee77a0
[CRYP-7930] replaced incorrect PATH column with alternative 2019-09-02 19:20:16 +02:00
Michael Boelen a87c2b10f9
Added CRYP-8002 2019-08-29 10:39:43 +02:00
Michael Boelen 4932ab8351
Disabled suggestion for now, as some people will just install a suggested tool to comply instead of determining if it really makes sense. So this suggestion requires more explanation before people turning it on. Also, promisc mode may be impacted, so users see a new issue show up while they just resolved another. 2019-08-28 15:43:10 +02:00
Michael Boelen 61404c1bf3
[TOOL-5160] added support for OSSEC agent daemon 2019-08-28 15:36:59 +02:00
Michael Boelen 7469b4aa72
[CONT-8106] support for newer 'docker info' output that includes additional space 2019-08-26 20:27:00 +02:00
Michael Boelen f89aa98408
Added FINT-4316 2019-08-26 08:02:11 +02:00
Michael Boelen 22a7f4fd6d
Combine multiple unsets into a single command 2019-08-26 08:01:43 +02:00
Michael Boelen d703d160ff
Added RHEL, renamed CentOS Linux name, reordered items 2019-08-22 14:20:30 +02:00
Michael Boelen d2deb63ebb
Added NETW-3200 2019-08-22 14:12:53 +02:00
Michael Boelen a72650252f
When audit target is missing, stop execution 2019-08-22 14:11:22 +02:00
Michael Boelen 2c4e7711db
Added CentOS and trigger an exception when a system has /etc/os-release but is not defined yet 2019-08-21 14:51:20 +02:00
Michael Boelen 4e39bafd78
New function to display exceptions 2019-08-21 14:50:32 +02:00
Michael Boelen 605e515c31
Updated forensics variable 2019-08-21 14:00:20 +02:00
Michael Boelen 65f1a5e811
Added initial support for DevOps mode to improve continuous integration 2019-08-21 13:59:28 +02:00
Michael Boelen d395e1a2da
[CRYP-7930] extend test to use cryptsetup/lsblk or crypttab file 2019-08-21 13:50:01 +02:00
Michael Boelen 3db7a3b944
Move -c also to list of deprecated items 2019-08-21 13:48:36 +02:00
Michael Boelen ee18e76e97
Preparations for forensics scan mode 2019-08-21 13:41:23 +02:00
Michael Boelen a714568842
Merge pull request #731 from chr0mag/cryp-7930
[CRYP-7930] Modify to use 'lsblk' and 'cryptsetup'
2019-08-21 12:31:36 +02:00
Michael Boelen 7dfd580320
Only escape backslash, question mark is not needed 2019-08-20 16:22:00 +02:00
Michael Boelen 8a7f8038b5
Do not show a tool tip if quiet option is used 2019-08-20 16:01:10 +02:00
Michael Boelen 32a895c843
Do not use find command when busybox is used 2019-08-20 15:57:04 +02:00