代码审计-java项目-组件漏洞审计

news2024/11/13 9:33:59

代码审计必备知识点:

1、代码审计开始前准备:

环境搭建使用,工具插件安装使用,掌握各种漏洞原理及利用,代码开发类知识点。

2、代码审计前信息收集:

审计目标的程序名,版本,当前环境(系统,中间件,脚本语言等信息),各种插件等。

3、代码审计挖掘漏洞根本:

可控变量及特定函数,不存在过滤或过滤不严谨可以绕过导致的安全漏洞。

4、代码审计展开计划:

审计项目漏洞原理->审计思路->完整源码->应用框架->验证并利用漏洞。

代码审计两种方法

功能点或关键字分析可能存在的漏洞

   -抓包或搜索关键字找到代码出处及对应文件。

   -追踪过滤或接收的数据函数,寻找触发此函数或代码的地方进行触发测试。

 

   -常规或部分MVC模型源码可以采用关键字的搜索挖掘思路。

   -框架 MVC 墨香源码一般会采用功能点分析抓包追踪挖掘思路。

1.搜索关键字找敏感函数

2.根据目标功能点判断可能存在的漏洞

案例:CNVD-悟空CRM9.0JAVA)-Fastjson组件

1.根据cnvd公开的漏洞信息得知悟空CRM9.0存在命令执行漏洞。

2.下载悟空CRM9.0源码:https://github.com/72wukong/72crm-9.0-JAVA    。将源码导入到IntelliJ IDEA ,部署好环境,启动服务器。

3.进入IntelliJ IDEA,第一步就是打开pom.xml文件,查看项目引用了哪些组件。

当将鼠标移动到fastjson组件时提示使用的1.2.54版本存在漏洞。

4.搜索fastjson组件产生过的历史漏洞,找到对应版本的漏洞,查看漏洞利用信息。

5.知道产生的漏洞之后还需要知道fastjson在源码中是怎么使用的。

搜索后得知:使用fastjson时最常用的方法就是parseobject()。所以就可以在源码中搜索  parseobject  确认源码中使用fastjson的位置

6.全局搜索queryTaskByWorkId方法,看是谁调用了,路由地址是多少。

7.通过跟踪代码得知路由地址为:work/queryTaskByWorkId     需要以post方式传递json参数,

数据类型为:Content-Type:application/json;charset=UTF-8

8.访问路由地址抓包修改。配合dnslog测试是否成功执行命令——传递的json数据:{"@type":"java.net.Inet4Address","val":"dnslog地址"}

9.dnslog成功接收到请求信息,漏洞存在。

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

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

相关文章

QT-Mysql数据库图形化接口

QT sql mysqloper.h qsqlrelationaltablemodelview.h /************************************************************************* 接口描述:Mysql数据库图形化接口 拟制: 接口版本:V1.0 时间:20230727 说明:支…

ipadOS External cameras

必须是USB-C接口,所以在使用的时候需要确认USB video Class(UVC) 好像也可以使用HDMI AVFoundation 用于处理一批视频多媒体数据的创建,编辑,播放和捕获,时音频视频功能的基础库。 有什么功能呢: 1.可以支持多种音频…

RocketMQ(模式详解,安装)及控制台安装

下载 环境 64位操作系统,推荐 Linux/Unix/macOS 64位 JDK 1.8下载地址 https://rocketmq.apache.org/zh/download/ RocketMQ 的安装包分为两种,二进制包和源码包。 二进制包是已经编译完成后可以直接运行的,源码包是需要编译后运行的。 单…

【Android】解决Lint found fatal errors while assembling a release target

报错信息: Android在debug模式下打包没有问题,但是在打包release版本时出现一下问题: 结果图 原因 我项目的原因是因为把正式、测试地址放到代码里了,忘记选中正式环境的地址,导致打正式包有问题;大家如果…

ASEMI肖特基模块MBR400100CT参数规格

编辑-Z MBR400100CT参数描述: 型号:MBR400100CT 反向重复峰值电压(VRRM):100V 正向直流电流(I0):400A 正向(不重复)浪涌电流(IFSM):3300A 结温 (TJ):-40 to 175℃ 储存温度(T…

mybatis生命周期和作用域

前言 作用域和生命周期错误使用会导致并发问题。 mybatis执行过程: 1、SqlSessionFactoryBuilder SqlSessionFactoryBuilder 占用XML资源来创建多个 SqlSessionFactory实例; SqlSessionFactoryBuilder 实例的最佳作用域是方法作用域(也就…

MBSE项目的全新数据、信息与知识管理方法|数据模型标准化思路

仅供学习使用 An original Data, Information and Knowledge management approach for model-based engineering projects 作者:M. El Alaoui, S. Rabah, V. Chapurlat, V. Richet , R. Plana 来源:https://doi.org/10.1016/j.ifacol.2022.10.135 文章详…

强化学习A3C算法

强化学习A3C算法 效果: a3c.py import matplotlib from matplotlib import pyplot as plt matplotlib.rcParams[font.size] 18 matplotlib.rcParams[figure.titlesize] 18 matplotlib.rcParams[figure.figsize] [9, 7] matplotlib.rcParams[font.family]…

谓语动词(动词不定式(短语)、动名词、分词(短语))作定语

动词不定式(短语)作定语 动名词作定语 分词(短语)作定语 着重记忆及物动词

剑指offer-2.2字符串

字符串 C/C中每个字符串都以字符"\0"作为结尾,这样我们就能很方便地找到字符串的最后尾部。但由于这个特点,每个字符串中都有一个额外字符的开销,稍不留神就会造成字符串的越界。比如下面的代码: char str [10]; strc…

UWB现场安装通常涉及以下步骤

UWB现场安装通常涉及以下步骤: 1.确定区域需求:首先,确定需要进行UWB定位的区域和目标。这可能是一个室内环境、仓库、工厂或其他特定的工作场所。 2.设计系统布局:根据区域的特点和目标定位需求,设计系统的布局和基…

关于Firmae缺失binwalk模块

问题 david707:~/FirmAE$ sudo ./run.sh -c weyow ./WAM_9900-20.06.03V.trx [*] ./WAM_9900-20.06.03V.trx emulation start!!! Traceback (most recent call last):File "./sources/extractor/extractor.py", line 19, in <module>import binwalk ModuleNot…

红帽8.2版本CSA题库:第十题配置用户帐户

红帽8.2版本CSA题库&#xff1a;第十题配置用户帐户 useradd -u 3533 manalo #传创建用户指定uid为3533 echo flectrag | passwd --stdin manalo #设置密码 tail -1 /etc/passwd #查看

globals()与locals()函数

在Python中&#xff0c;globals()和locals()是两个内置函数&#xff0c;用于获取当前作用域内的全局和局部命名空间中的变量和对象。 一、globals() :这个函数返回一个包含当前全局作用域中所有变量和对象的字典。在函数内部调用globals()将返回全局命名空间中的变量&#xf…

密码湘军,融合创新!麒麟信安参展2023商用密码大会,铸牢数据安全坚固堡垒

2023年8月9日至11日&#xff0c;商用密码大会在郑州国际会展中心正式开幕。本次大会由国家密码管理局指导&#xff0c;中国密码学会支持&#xff0c;郑州市人民政府、河南省密码管理局主办&#xff0c;以“密码赋能美好发展”为主题&#xff0c;旨在推进商用密码创新驱动、前沿…

2023年第四届全国人工智能大赛初赛晋级复赛名单公示

由深圳市科技创新委员会、鹏城实验室共同主办&#xff0c;新一代人工智能产业技术创新战略联盟&#xff08;AITISA&#xff09;承办&#xff0c;华为技术有限公司、中国工商银行股份有限公司深圳市分行、中国农业银行股份有限公司深圳市分行、中国建设银行股份有限公司深圳市分…

无线测温产品在半导体制造项目的应用

摘 要&#xff1a;半导体被誉为“制造业的大脑”&#xff0c;在关系国家安全和国民经济命脉的主要行业和关键领域占据支配地位&#xff0c;是国民经济的重要支柱。 随着数字技术的发展和数字经济在国民经济中所占比重越来越高&#xff0c;半导体产业的重要性还会进一步提升。安…

【制作npm包4】api-extractor 学习

制作npm包目录 本文是系列文章&#xff0c; 作者一个橙子pro&#xff0c;本系列文章大纲如下。转载或者商业修改必须注明文章出处 一、申请npm账号、个人包和组织包区别 二、了解 package.json 相关配置 三、 了解 tsconfig.json 相关配置 四、 api-extractor 学习 五、npm包…

高等数学教材啃书汇总重难点(三)微分中值定理与导数的应用

本章节包含多个知识点&#xff0c;一些列微分中值定理是考研证明题的重头戏&#xff0c;而洛必达和泰勒展开则是方法论的天花板难度&#xff0c;虽然对于小题的考察难度较低&#xff0c;整体上仍需重点复习 1.费马引理 2.罗尔定理 3.拉格朗日定理 4.柯西中值定理 5.洛必达法则 …

算法竞赛入门【码蹄集新手村600题】(MT1160-1180)C语言

算法竞赛入门【码蹄集新手村600题】(MT1160-1180&#xff09;C语言 目录MT1161 N的零MT1162 数组最大公约数MT1163 孪生质数MT1164 最大数字MT1165 卡罗尔数MT1166 自守数MT1167自守数IIMT1168 阶乘数MT1169 平衡数MT1170 四叶玫瑰数MT1171 幻数MT1172 完美数字MT1173 魔数MT11…