首页 > 其他分享 >源代码审计怎么做?有哪些常用工具

源代码审计怎么做?有哪些常用工具

时间:2024-01-17 10:03:50浏览次数:41  
标签:审计 代码 查询 数据流 安全漏洞 源代码 常用工具

源代码审计是一种通过检查源代码来发现潜在的安全漏洞的方法。

下面是常用的源代码审计工具:

1、Fortify:通过内置的五大主要分析引擎,对源代码进行静态分析,并与特有的软件安全漏洞规则集进行全面地匹配、查找。

2、Checkmax:通过虚拟编译器自动对软件源代码分析,并建立了代码元素及代码元素之间关系的逻辑图。 然后对这个内部代码图进行查询,包含已知安全漏洞和质量缺陷问题预先设定好的查询列表。

3、CodeQL:在 CodeQL 中,代码被视为数据,安全漏洞则被建模为可以对数据库执行的查询语句。

4、SonarQube:是一个用于代码质量管理的开源平台,用于管理源代码的质量。

在审计源代码时,还可以采用正向追踪数据流和逆向溯源数据流两种方法。正向追踪数据流是指跟踪用户输入参数,来到代码逻辑,最后审计代码逻辑缺陷并尝试构造payload;逆向溯源数据流是指从字符串搜索指定操作函数开始,跟踪函数可控参数,审计代码逻辑缺陷并尝试构造payload。从开发者的位置去思考问题,可以快速定位问题。 学习面向对象编程以及面向过程编程,编写一些项目提升对代码的理解能力,再是对各种漏洞可以独立挖掘利用并能理解漏洞的危害。

标签:审计,代码,查询,数据流,安全漏洞,源代码,常用工具
From: https://blog.51cto.com/u_16410477/9286069

相关文章

  • 苹果推信群发,苹果推信群发软件开发(源代码解析篇)
    随着智能手机的普及,人们对于沟通交流的需求日益增长,而短信作为最直接、最便捷的通讯方式之一,自然也成为了众多应用程序的首选。苹果作为全球领先的智能手机制造商,其推送通知功能(即推信)在iOS系统中占据着举足轻重的地位,本文将重点介绍苹果推信群发功能的开发源代码,带领大家深入......
  • C#结合串口通信类实现串口通信源代码(原创)
    C#结合串口通信类实现串口通信源代码(原创) mycom是串口通信类,在本blog前一篇中有完整代码。( C#串口通信编程类(修改版) )下面是串口通讯测试程序的源代码,将mycom类放在此项目中可以实现简单的串口通信,希望读者能通过这个程序对串口通信过程有一个初步的了解:usingSystem;us......
  • php代码审计(三)bluecms练习
    BlueCMSv1.6sp1ad_js.phpSQL注入漏洞环境搭建源码下载:https://jwt1399.lanzoui.com/inPwSde6c5a将upload下的文件移动到网站根目录下访问/install,安装程序,配置基本信息seay自动审计定位到第一条的位置/ad_js.php全代码通读,首先是包含了文件/include/common.inc.php,查看......
  • C#常用工具安装方法及资源整理
    1、GitGit下载地址Git安装教程2、SQLServer2019下载地址安装教程3、VisualStudio2022下载地址安装教程4、TortoiseGit(x64)  2.13.0.1中文版下载地址安装教程5、sqlserver2014下载及安装教程......
  • PHP代码审计(一)代码审计准备
    代码审计环境搭建使用phpstudy搭建wamp环境PHP核心配置几个需要了解的PHP核心配置选项PHP_INI_USER该配置选项可以在用户的PHP脚本或Windows注册表中设置PHP_INI_PERDIR在php.ini/.htaccess/httpd.conf中设置PHP_INI_SYSTEM在php.ini/http.conf中设置PHP_INI_ALL在任......
  • JS常用工具:Webpack 和 JShaman分别有什么用?
    Webpack和JShaman是两个不同的工具,它们的特点和用途也不同。Webpack是一个前端资源模块打包工具,主要用于将各种静态资源(如JavaScript、CSS、图片等)视为模块,并将其打包成浏览器可以识别的代码。Webpack的特点包括:1.模块化:Webpack将各种资源视为模块,使开发者能够更好地组织和管理项......
  • JS常用工具:Webpack 和 JShaman分别有什么用?
    Webpack和JShaman是两个不同的工具,它们的特点和用途也不同。Webpack是一个前端资源模块打包工具,主要用于将各种静态资源(如JavaScript、CSS、图片等)视为模块,并将其打包成浏览器可以识别的代码。Webpack的特点包括:1.模块化:Webpack将各种资源视为模块,使开发者能够更好地组织和管理......
  • GDB调试之源代码查看与管理(六)
    一、源代码管理命令显示源代码:listorl,默认显示10行(在当前行往后5行,以及往前5行,总共10行代码)设置每次显示的行数:setlistsizexx查看指定函数代码:listtest_fun查看指定文件指定行代码:listmain.cpp:15显示源代码:查看指定函数代码:查看指定文件指定行代码:设置每次......
  • DevOps常用工具全家桶,实现高效运维和交付
     DevOps常用工具全家桶,实现高效运维和交付1、DevOps发展DevOps发展背景:随着互联网技术的快速发展,软件开发和运维的挑战也日益增加。传统的软件开发和运维模式往往存在分离、效率低下、沟通不畅等问题,导致软件交付速度缓慢,质量参差不齐。为了解决这些问题,DevOps应运而生。De......
  • Java字节码文件查看常用工具​
    04.字节码常用工具javap-v命令javap是JDK自带的反编译工具,可以通过控制台查看字节码文件的内容。适合在服务器上查看字节码文件内容。直接输入javap查看所有参数。输入javap-v字节码文件名称查看具体的字节码信息。(如果是jar包需要先使用jar-xvf命令解压)jclasslib的idea插件j......