-
Notifications
You must be signed in to change notification settings - Fork 57
Windigo - Ebury False Positive #1
Comments
Hi I can confirm this issue, please avoid this behavior it seems that it is a false positive, besides that the last version of the openssh project uses ** -G ** option see for reference [1] , and is a good idea of @giannisalinetti, just in case that this false positive can't be solved , rkhunter is more recent and the developers are more active there. Best Regards , |
I can confirm that the -G option is disabled on UbuntuGNOME variants (at least in 15.10 and 16.04). I would recommend to do a double-check, if "-G" flag is disabled, ssh will output the usage. I also created a pull request for it because it's so simple to fix :) |
Hi guys, I will have a look at this next week. Thanks! |
Cool 😎 so if it's there anyway to notify all the distro developers would be great 😄 |
@heticor915 I already wrote the original chkrootkit authors (Nelson Murilo and Klaus Steding-Jessen) but they won't reply to emails (dead-end email addresses?). Today I wrote to the current Debian maintainer (Giuseppe Iuculano); maybe he knows where/how to fix this false positive upstream, so that everybody in the GNU world can profit from the fixes here. |
Fixed in 0.50b #1 by @cookiengineer |
Awesome, thanks! |
Thanks to you for the pull request! :-) |
And the bug has been re-introduced at https://github.com/Magentron/chkrootkit/blob/master/chkrootkit#L1176 if $ssh -G 2>&1 | grep -v usage > /dev/null; then
if $ssh -G 2>&1 | grep -e illegal -e unknow > /dev/null; then
if [ "${QUIET}" != "t" ]; then echo "nothing found "; fi
else
echo "Possible Linux/Ebury 1.4 - Operation Windigo installed"
fi
fi Also, |
Just opened a PR #5 to fix it. |
Version 0.50a need a fix for the Windigo - Ebury rootkit on lastest versions of OpenSSH. Since version openssh-6.9p1 a -G was introduced (it is also documented in the ssh man page).
The code following code section should take in consideration the installed version of OpenSSH on the machine.
if $ssh -G 2>&1 | grep -e illegal -e unknow > /dev/null; then
if [ "${QUIET}" != "t" ]; then echo "nothing found"; fi
else
echo "Possible Linux/Ebury - Operation Windigo installetd"
fi
A good idea could be to check the version of OpenSSH using the ssh -V command and store the version in a variable for further processing:
OPENSSH_VER=$(grep -o 'OpenSSH_[0-9].[0-9]p[1-9]' <(ssh -V 2>&1) | sed 's/OpenSSH_//')
Then, using a simple awk parsing we can check the version of ssh:
OPENSSH_TEST=$(echo "$OPENSSH_VER" | awk 'BEGIN {FS = "p"} ; $1 >= 6.9 && $2 >= 1')
The OPENSSH_TEST var can be tested with a small if construct:
if [ -n $OPENSSH_TEST ]; then
echo "Not a Windigo - Ebury infection... Some other stuff..."
fi
The text was updated successfully, but these errors were encountered: