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

案例分析-金融业网络安全攻防

应用安全漏洞

SQL注入

数据包如下:在这里插入图片描述
观察post包,在userid=1‘部分程序会报错,初步判断此处存在注入漏洞。
使用类型转换函数nvarchar将数据库里的url数据(char)转换成int,将字符串储存在数据包里发送给后端,发现程序报错,可以判定执行了sql语句,断定此处为sql注入。
在这里插入图片描述
经过测试,mysql的权限是sa权限即最高权限,同时支持联合查询,用户权限是system权限,数据库开启特性xp_cmdshell,因此可以通过注入点执行系统命令。
用xp_cmdshell 执行whoami,将结果输出到web目录下边的txt文件中,抓包后发现,文件成功写入。 在这里插入图片描述
访问文件发现里面写入了一个具有操作系统权限用户。
那么之后可以修改数据库信息,写入恶意文件,达到getshell目的。

数据伪造-硬编码

问题:企业里应用的加密算法与加密密钥很容易被攻击者拿到,即硬编码在客户端里的漏洞现象。
数据包如下:
在这里插入图片描述
此包用到getToken方法,通过传递参数req进行一系列后续操作,并返回给当前用户的token。在测试过程中这里根据暴露的req密文内容,猜测可能是base64编码。或者是DESede加密。
在这里插入图片描述
找到了加密解密函数。从而拿到密钥。
在这里插入图片描述
替换另一个账号信息对givospddxhuwo_1参数进行刚才key加密,然后粘贴到数据包中,去重放数据包,发现返回了这个用户的token,导致我们可以通过这个token获取givospddxhuwo_1的用户身份信息。

建议在客户端打包上线前,进行应用加固,比如加壳(二进制加密隐藏)。加壳可以防止攻击者对程序的反编译,提高信息获取难度。

沙盒逃逸

在这里插入图片描述
一般会给用户一些源码编辑需求,因此,编码后运行的程序是在系统的沙盒里面,一旦这个沙盒逃逸 ,攻击者可以直接把程序运行在操作系统中,或者其他层。
在这里插入图片描述
观察这个界面。这个沙盒是python沙盒,里面说一下subprocess模块,通过该模块进行沙盒逃逸。
在这里插入图片描述

将payload写在上述源码内,进行一个编译过程,达到沙盒逃逸目的。payload如下:(获取当前操作系统的一些信息)
在这里插入图片描述
将payload放在左边量化编译沙盒里面运行,在右下角日志输出信息,发现有系统执行的信息,这样就完成了一次沙盒逃逸,从沙箱里面逃逸到操作系统主机上执行了一些系统命令。
除了执行ps -ef还可以执行一些网络相关的命令,可以下载一些恶意文件到服务器,做反弹,达到一个直接入侵内网的效果。
在这里插入图片描述
如果沙盒里的库或者模块没有更新,一些特性的更改,系统的沙盒没有迭代到最新的版本中,一些特性会造成沙盒的逃逸,在之后的运维过程中也要注意一些基础模块的更新,防止沙盒逃逸。

文件上传

在这里插入图片描述
上图所示通过curl 以及地址获取了bash.histor的内容,这里存在一个人一文件读取的漏洞,通过在url里拼接一些文件相关的路径,达到一个读取文件的操作。
在这个案例里,通过任意文件读取,获取了web系统的一些代码
在这里插入图片描述
进行代码审计,发现代码里有些接口没有显示但可以访问,比如上图上传用户头像部分,我们直接上传一个包含cmd的jsp动态文件上去,就可以达到getshell目的
在这里插入图片描述
上传文件成功后成功解析,通过传入一些参数获得操作系统执行命令的权限。上图表示获取操作系统ip地址的命令。

业务逻辑安全漏洞

越权漏洞

在这里插入图片描述
上图数据包中有num字段,通过测试发现223表示用户id,即后端通过获取num这个值可以查询当前用户的一些身份信息,通过修改223到220就可以获取其他用户的信息。
在这里插入图片描述
通过bp执行批量操作获取大量用户信息。

密码重置漏洞

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改account可以更换任意用户的密码

安全运维安全

1day漏洞

1day漏洞是官方已经发布补丁或者是已经爆出来很长时间,已经有了一些有效的防御措施,但是还是能通过该漏洞对系统造成一定损害,这就是运维过程中没有及时打补丁。在这里插入图片描述
上图当输入一些操作系统命令的时候,weblogic下的服务器成功执行并返回一个结果。

运维不当

在这里插入图片描述
该文件中存储整个网站的代码,配置信息,日志相关内容。
在这里插入图片描述
翻阅过程中发现上述配置信息,有数据库的端口,用户名等。

安全意识

口令安全

在这里插入图片描述
通过弱口令登陆,上传waf包,直接getshell,下面是执行结果,可以获取所有文件,执行系统命令等
在这里插入图片描述

代码安全

在这里插入图片描述
若代码被攻击者获取,可进行白盒审计,或者直接从代码中获取配置文件,对业务系统造成危害。
在这里插入图片描述
上图表示通过关键字获取的运维人员的运维手册。
在这里插入图片描述
svn在管理代码过程中会生成一个.svn文件夹,包含重要源代码。但是一些网站管理人员在发布代码时候,不愿意使用导出功能,而是直接复制文件夹到web服务器上,这就使.svn文件夹暴露在外网当中,黑客可以借助这些文件夹中的索引还原出代码,从而可以进行白盒审计或者配置信息利用,威胁到企业内网安全。
在这里插入图片描述
上图表示svn泄露获取的代码,在代码中可发现有配置文件,这个文件是静态储存oss服务器的密码账号。通过账号accessKeyId与accessKeySecret直接获取企业敏感数据。
在这里插入图片描述

相关文章:

  • 多线程之四(锁策略+CAS+synchronized)
  • Swoole 的异步 Task 任务详解
  • 高维列联表
  • 0-1规划的MATLAB求解
  • 第十四章第三节2:Java集合框架之队列Queue
  • 海思3559万能平台搭建:RTSP实时播放的优化
  • 持续测试破解自动化测试的行业谜题
  • hai-AcWing计划
  • Windows使用模拟器启动AOSP源码编译的镜像
  • 【Golang开发面经】深信服(两轮技术面)
  • Pytorch实战 | 第P2周:彩色图片识别
  • xLua热更新(一)xLua基本使用
  • 【无标题】近几年攻防演练攻击队典型突破的例子
  • 云原生技术 --- k8s节点组件之kube-proxy的学习与理解
  • Maven ,命令行中,字符编码 设置
  • python3.6+scrapy+mysql 爬虫实战
  • 3.7、@ResponseBody 和 @RestController
  • Bootstrap JS插件Alert源码分析
  • ES6系列(二)变量的解构赋值
  • HTTP中GET与POST的区别 99%的错误认识
  • iOS编译提示和导航提示
  • java8-模拟hadoop
  • JS基础之数据类型、对象、原型、原型链、继承
  • rabbitmq延迟消息示例
  • Spark in action on Kubernetes - Playground搭建与架构浅析
  • SQLServer之创建显式事务
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 机器学习中为什么要做归一化normalization
  • 听说你叫Java(二)–Servlet请求
  • 线上 python http server profile 实践
  • 项目管理碎碎念系列之一:干系人管理
  • Java性能优化之JVM GC(垃圾回收机制)
  • #define与typedef区别
  • #NOIP 2014#Day.2 T3 解方程
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (C语言)逆序输出字符串
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (分布式缓存)Redis分片集群
  • (附源码)小程序儿童艺术培训机构教育管理小程序 毕业设计 201740
  • (南京观海微电子)——COF介绍
  • (十六)Flask之蓝图
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (轉貼) 寄發紅帖基本原則(教育部禮儀司頒布) (雜項)
  • .NET 4.0中的泛型协变和反变
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .net访问oracle数据库性能问题
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • /boot 内存空间不够
  • /dev下添加设备节点的方法步骤(通过device_create)
  • @取消转义
  • []T 还是 []*T, 这是一个问题
  • []我的函数库