以“防方视角”观JS文件信息泄露

为方便您的阅读,可点击下方蓝色字体,进行跳转↓↓↓

    • 01 案例概述
    • 02 攻击路径
    • 03 防方思路

01 案例概述


这篇文章来自微信公众号“黑白之道”,记录的某师傅从js文件泄露接口信息,未授权获取大量敏感信息以及通过逻辑漏洞登录管理员账号,利用任意文件读取漏洞明确系统使用log4j组件,使用log4j漏洞获取服务器控制权限的过程。

记一次抽丝剥茧式的渗透测试【原文链接】



02 攻击路径

在这里插入图片描述

从攻击者视角了解攻击的全过程,以下为攻击过程:

(1)突破网络边界:攻击方的突破点是社工钓鱼,通过外网信息收集添加企业客服以及总监的微信,分别构造与客服业务相对应的话术以及商务合作等方式,诱导对方成功点击木马文件,获得PC终端控制权限。

(2)获取敏感信息:攻击方翻阅客服终端发现存在密码本文件,利用密码本记录信息成功登陆存在大量内部办公邮件的邮箱系统、存在2000w+记录信息的运营平台以及Zabbix系统等,并进一步发现运营平台存在SQL注入漏洞,可使用sqlmap获取数据库用户密码。攻击方翻阅总监终端发现存在某系统源码,审计源码发现该系统后台插件添加处存在任意文件上传漏洞,于是通过添加插件的方式对向服务器中写入webshell获取到多台服务器权限。

(3)扩大攻击成果:攻击方获取到多台服务器权限后,攻击者进一步翻阅配置文件、利用历史漏洞,拿到阿里云AK/SK可控制所有云上系统以及使用CVE-2021-22205漏洞获取到gitlab服务器权限,获取到大量内网系统账号密码,并通过配置文件成功获取Jenkins用户cookie成功登录Jenkins。


03 防方思路


站在防守单位的角度需吸取本案例的经验教训:

(1)首先前端js文件需仅显示必要的接口信息,对于涉及到敏感操作或数据的接口,需加强权限鉴别与控制机制。

(2)其次对于文件下载、文件读取功能,需健全完善的用户权限校验机制以及对文件资源路径与文件名的合法性校验机制。

(3)当系统开发过程引入第三方组件或采用开源框架时,如log4j组件,需谨慎识别是否为存在漏洞问题版本,确保第三方组件安全。

在这里插入图片描述

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

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

相关文章

Vue中路由守卫的详细应用

作为一名web前端开发者,我们肯定经常使用Vue框架来构建我们的项目。而在Vue中,路由是非常重要的一部分,它能够实现页面的跳转和导航,提供更好的用户体验。然而,有时我们需要在路由跳转前或跳转后执行一些特定的逻辑&am…

go语言进阶篇——面向对象(一)

什么是面向对象 在我们设计代码时,比如写一个算法题或者写一个问题结局办法时,我们常常会使用面向过程的方式来书写代码,面向过程主要指的是以解决问题为中心,按照一步步具体的步骤来编写代码或者调用函数,他在问题规…

优化 IT 支出和消除浪费的 8 种主要方法

不懈追求最佳 IT 支出对于任何组织的长期可持续发展和成功都至关重要。在这个技术快速进步的时代,您必须做出明智的决策,消除浪费,同时最大限度地提高技术投资的价值。 从进行 IT 成本分析到采用敏捷预算和技术标准化,这些策略对…

双非本科准备秋招(19.1)—— Synchronized优化

轻量级锁 流程 一个对象虽然有多线程加锁,但是加锁时间是错开的,那么可以用轻量级锁优化。 语法还是synchronized,只是对使用者是透明的。 static final Object obj new Object(); public static void method1() {synchronized( obj ) {//…

(力扣)1314.矩阵区域和

给你一个 m x n 的矩阵 mat 和一个整数 k &#xff0c;请你返回一个矩阵 answer &#xff0c;其中每个 answer[i][j] 是所有满足下述条件的元素 mat[r][c] 的和&#xff1a; i - k < r < i k, j - k < c < j k 且(r, c) 在矩阵内。 示例 1&#xff1a; 输入&a…

【Godot4.2】文件系统自定义控件 - FileSystemTree

FileSystemTree B站【Godot4.2】文件系统自定义节点 - FileSystemTree 概述 在Godot设计编辑器插件或应用程序时&#xff0c;可能需要涉及文件系统的显示&#xff0c;比如文件夹或文件的树形列表。 我们可以用Godot的Tree控件快速书写相应的功能&#xff0c;但是为了复用到…

Wireshark不显示Thrift协议

使用Wireshark对thrift协议进行抓包&#xff0c;但是只显示了传输层的tcp协议&#xff1a; "右键" -> "Decode As" 选择thrift的tcp端口 将“当前”修改为Thrift&#xff0c;然后点击“确定” 设置后&#xff0c;可以发现Wireshark里面显示的协议从Tcp变…

H12-821_74

74.在某路由器上查看LSP&#xff0c;看到如下结果&#xff1a; A.发送目标地址为3.3.3.3的数据包时&#xff0c;打上标签1026&#xff0c;然后发送。 B.发送目标地址为4.4.4.4的数据包时&#xff0c;不打标签直接发送。 C.当路由器收到标签为1024的数据包&#xff0c;将把标签…

波纹扩散效果

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>波纹扩散</title><style>body {disp…

『运维备忘录』之 Kubernetes(K8S) 常用命令速查

一、简介 kubernetes&#xff0c;简称K8s&#xff0c;是用8代替名字中间的8个字符“ubernete”而成的缩写&#xff0c;是一个开源的&#xff0c;用于管理云平台中多个主机上的容器化的应用。kubernetes是基于容器技术的分布式架构解决方案&#xff0c;具有完备的集群管理能力&a…

mysql入门到精通005-基础篇-约束

1、概述 1.1 概念 约束是作用于表中字段上的规则&#xff0c;用于限制储存在表中的数据。 1.2 目的 保证数据库中数据的正确性、有效性和完整性。 1.3 常见的约束分类 一旦谈到外键&#xff0c;则至少涉及2张表约束是作用于表中字段上的&#xff0c;可以在创建表/修改表的…

CTFshow web(命令执行29-36)

?ceval($_GET[shy]);&shypassthru(cat flag.php); #逃逸过滤 ?cinclude%09$_GET[shy]?>&shyphp://filter/readconvert.base64-encode/resourceflag.php #文件包含 ?cinclude%0a$_GET[cmd]?>&cmdphp://filter/readconvert.base64-encode/…

2. Maven 继承与聚合

目录 2. 2.1 继承 2.2继承关系 2.2.1 思路分析 2.2.2 实现 2.1.2 版本锁定 2.1.2.1 场景 2.1.2.2 介绍 2.1.2.3 实现 2.1.2.4 属性配置 2.2 聚合 2.2.1 介绍 2.2.2 实现 2.3 继承与聚合对比 maven1&#xff1a;分模块设计开发 2. 在项目分模块开发之后啊&#x…

Gazebo的初始启动问题

在机器人开发之中一般初始启动会输入以下语句&#xff1a; ros2 launch gazebo_ros gazebo.launch.py 通常都会报错&#xff0c;原因是路径并未添加&#xff0c;输入下列语句到.bashrc即可 source /usr/share/gazebo/setup.bash

freeRTOS总结(十四)任务通知

1、任务通知 任务通知&#xff1a; 用来通知任务的&#xff0c;任务控制块中的结构体成员变量ulNotifiedValue就是这个通知值 使用队列、信号量、事件标志组时都需另外创建一个结构体&#xff0c;通过中间的结构体进行间接通信&#xff01; 使用任务通知时&#xff0c;任务结…

Flink流式数据倾斜

1. 流式数据倾斜 流式处理的数据倾斜和 Spark 的离线或者微批处理都是某一个 SubTask 数据过多这种数据不均匀导致的&#xff0c;但是因为流式处理的特性其中又有些许不同 2. 如何解决 2.1 窗口有界流倾斜 窗口操作类似Spark的微批处理&#xff0c;直接两阶段聚合的方式来解决…

详细分析python中的from waitress import serve(附Demo)

目录 前言1. 基本知识2. serve源码分析3. 基本操作 前言 以前玩python 开发的时候写过一些见解&#xff0c;推荐阅读&#xff1a; uwsgi启动django以及uwsgi.ini的配置参数详解Django框架零基础入门 部署服务器除了Flask还有serve 在讲述serve之前&#xff0c;先讲述两者的…

安全名词解析-社工、0day、DDos攻击

为方便您的阅读&#xff0c;可点击下方蓝色字体&#xff0c;进行跳转↓↓↓ 01 社工02 0day漏洞03 DDoS攻击 01 社工 社工&#xff08;Social Engineering&#xff09;&#xff0c;一般指社会工程攻击的简称&#xff0c;是一种通过与人的交互来获取信息、获取访问权限或进行欺骗…

前端vue3实现本地及在线文件预览(含pdf/txt/mp3/mp4/docx/xlsx/pptx)

一、仅需实现在线预览&#xff0c;且文件地址公网可访问 &#xff08;一&#xff09;微软office免费预览&#xff08;推荐&#xff09; 支持doc/docx/xls/xlsx/ppt/pptx等多种office文件格式的免费预览 //示例代码//​在https://view.officeapps.live.com/op/view.aspx?src…

【Qt】Android上运行keeps stopping, Desktop上正常

文章目录 问题 & 背景背景问题 解决方案One More ThingTake Away 问题 & 背景 背景 在文章【Qt】最详细教程&#xff0c;如何从零配置Qt Android安卓环境中&#xff0c;我们在Qt中配置了安卓开发环境&#xff0c;并且能够正常运行。 但笔者在成功配置并完成上述文章…