-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathcheck.sh
25 lines (23 loc) · 812 Bytes
/
check.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash
# usage
# Check current kernel ./check.sh
# Check specific kernel ./check.sh 5.10.102
kernel=$1
ver1=$(echo ${kernel:-$(uname -r | cut -d '-' -f1)} | cut -d '.' -f1)
ver2=$(echo ${kernel:-$(uname -r | cut -d '-' -f1)} | cut -d '.' -f2)
ver3=$(echo ${kernel:-$(uname -r | cut -d '-' -f1)} | cut -d '.' -f3)
echo $ver1 $ver2 $ver3
if (( ${ver1:-0} < 5 )) ||
(( ${ver1:-0} == 5 && ${ver2:-0} < 8 )) ||
(( ${ver1:-0} == 5 && ${ver2:-0} == 10 && ${ver3:-0} == 102 )) ||
(( ${ver1:-0} == 5 && ${ver2:-0} == 10 && ${ver3:-0} == 92 )) ||
(( ${ver1:-0} == 5 && ${ver2:-0} == 15 && ${ver3:-0} == 25 )) ||
(( ${ver1:-0} == 5 && ${ver2:-0} >= 16 && ${ver3:-0} >= 11 )) ||
(( ${ver1:-0} == 5 && ${ver2:-0} > 16 ));
then
echo Not vulnerable
exit 0
else
echo Vulnerable
exit 1
fi