awesome-linux-rootkits/details/reptile.md
Ilya V. Matveychikov 168d533802
Update reptile.md
2018-07-02 23:49:15 +04:00

3.3 KiB

Reptile kernel rootkit details

https://github.com/f0rb1dd3n/Reptile

  • not able to tamper file contents while reading byte-by-byte ()
  • not able to hide all threads and children of hidden (parent) process ()

Environment

  • x86, x86_64
  • Linux kernel 2.6.x/3.x/4.x

Persistency

Boot-time module loading using OS-specific startup files:

  • /etc/modules (debian/ubuntu)
  • /etc/rc.modules (redhat/centos/fedora)

https://github.com/linux-rootkits/Reptile/blob/master/setup.sh#L296

Detection evasion

Rootkit is trying to evade from detection by:

Management interface

Implemented via kill(2) by hooking sys_call_table[__NR_kill] entry:

Supported commands are:

Altering system behaviour

Hooking of system calls by patching syscall-handlers in sys_call_table[]:

Hiding (tampering) of file contents

Filtering of file content while reading:

Hiding of files and directories

Filtering of directory entries:

Hiding of processes and process trees

Filtering PID-like numeric entries while listing /proc:

Backdoor/shell

Reverse shell spawning by port-knocking-like technique: