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


    应用安全漏洞

    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直接获取企业敏感数据。
    在这里插入图片描述

  • 相关阅读:
    机器学习笔记之概率图模型(六)推断基本介绍
    关于电脑功耗与电费消耗的问题,你了解多少?
    java基础知识三
    为 VitePress 网站添加 RSS 订阅支持
    linux中ansible安装
    MySQL过滤数据知识点 + 关键字DISTINCT + 牛客-SQL必知必会-03过滤数据篇:SQL67-70 + 04高级数据过滤篇:SQL71-74
    MATLAB入门-字符串操作
    关于工业设计,你知道多少?
    微信小程序个人账号申请和配置详细教程
    解决Requests中使用httpbin服务器问题:自定义URL的实现与验证
  • 原文地址:https://blog.csdn.net/L120305q/article/details/127063610