如何使用命令行工具Graudit来查找你代码中的安全漏洞

技术如何使用命令行工具Graudit来查找你代码中的安全漏洞如何使用命令行工具Graudit来查找你代码中的安全漏洞,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易

如何使用命令行工具Graudit来查找代码中的安全漏洞?针对这个问题,本文详细介绍了相应的分析和解决方法,希望能帮助更多想要解决这个问题的小伙伴找到更简单易行的方法。

凭借广泛的语言支持,Graudit允许您在开发过程中审核代码安全性。

测试是软件开发生命周期(SDLC)的重要组成部分,它有几个阶段。今天,我想谈谈如何在代码中发现安全问题。

开发软件时,不能忽视安全问题。这就是为什么有一个术语叫做DevSecOps,它的基本职责是识别和解决应用程序中的安全漏洞。有一些检查OWASP漏洞的开源解决方案,它们将通过创建源代码的威胁模型来获得结果。

处理安全问题有不同的方法,如静态应用安全测试(SAST)、动态应用安全测试(DAST)、交互式应用安全测试(IAST)、软件组成分析等。

静态应用程序安全测试在代码级别运行,并通过发现编写的代码中的错误来分析应用程序。这个方法不需要运行代码,所以叫做静态分析。

我将专注于静态代码分析,并使用开源工具获得实践经验。

为什么要使用开源工具检查代码安全?

选择开源软件、工具和项目作为开发的一部分有很多原因。这不会花任何钱,因为你正在使用一个由志同道合的开发人员开发的工具,他们想帮助其他开发人员。如果你有一个小团队或者一家初创公司,最好找到开源软件来检查你的代码安全性。这样就不用单独雇佣一个DevSecOps团队,降低了成本。

好的开源工具总是考虑灵活性。它们应该能够在任何环境中使用,并覆盖尽可能多的情况。这使得开发人员更容易将软件与其现有系统连接起来。

但是有时,您可能需要一个在您选择的工具中不可用的功能。然后你可以选择复制它的代码,在上面开发你自己的函数,并在你的系统中使用它。

因为,很多时候,开源软件是社区驱动的,开发速度往往是这个工具用户的加分项,因为他们会根据用户反馈、问题或bug报告迭代项目。

00-1010有多种开源静态代码分析工具可供选择,但正如您所知,工具会分析代码本身,这就是为什么没有适用于所有编程语言的通用工具。但是它们中的一些遵循OWASP指南,并覆盖尽可能多的语言。

在这里,我们将使用Graudit,这是一个简单的命令行工具,可以帮助我们发现代码库中的安全缺陷。它支持不同的语言,但有固定的签名集。

Graudit使用的Grep是GNU许可下的一个工具。类似的静态代码分析工具包括安全粗略审计工具(RATS)、安全指南针网络应用程序分析工具(SWAAT)、flawfinder等。但是,Graudit的技术要求最低,非常灵活。但是,您可能仍然有Graudit无法满足的要求。如果是这样,你可以看看这个列表中的其他选项。

我们可以在特定的项目下,或者在全局命名空间中,或者在特定的用户下,或者在我们喜欢的任何地方安装这个工具。它非常灵活。我们先克隆仓库。

github.com/wireghoul/Graudit现在,我们需要创建一个graudit的符号链接,这样我们就可以将其用作命令。

$ CD ~/binamp;amp。mkgraudit $ ln-符号~/GRAudit/GRAudit ~/bin/GRAudit向添加别名。bashrc(或您使用的任何shell的配置文件)。

#-bashrc-Aliasgrudit=' ~/bin/Graudit '重新加载外壳:

$source~/。bashrc#或$exex$SHELL

pre>

让我们通过运行这个来检查是否成功安装了这个工具。

$ graudit -h

如果你得到类似于这样的结果,那么就可以了。

如何使用命令行工具Graudit来查找你代码中的安全漏洞

图 1 Graudit 帮助页面

我正在使用我现有的一个项目来测试这个工具。要运行该工具,我们需要传递相应语言的数据库。你会在 signatures 文件夹下找到这些数据库。

$ graudit -d ~/gradit/signatures/js.db

我在现有项目中的两个 JavaScript 文件上运行了它,你可以看到它在控制台中抛出了易受攻击的代码。

如何使用命令行工具Graudit来查找你代码中的安全漏洞

JavaScript file showing Graudit display of vulnerable code

如何使用命令行工具Graudit来查找你代码中的安全漏洞

JavaScript file showing Graudit display of vulnerable code

你可以尝试在你的一个项目上运行这个,项目本身有一个长长的数据库列表,用于支持不同的语言。

Graudit 的优点和缺点

Graudit 支持很多语言,这使其成为许多不同系统上的用户的理想选择。由于它的使用简单和语言支持广泛,它可以与其他免费或付费工具相媲美。最重要的是,它们正在开发中,社区也支持其他用户。

虽然这是一个方便的工具,但你可能会发现很难将某个特定的代码识别为“易受攻击”。也许开发者会在未来版本的工具中加入这个功能。但是,通过使用这样的工具来关注代码中的安全问题总是好的。

我只介绍了众多安全测试类型中的一种:静态应用安全测试。从静态代码分析开始很容易,但这只是一个开始。你可以在你的应用开发流水线中添加其他类型的应用安全测试,以丰富你的整体安全意识。

关于如何使用命令行工具Graudit来查找你代码中的安全漏洞问题的解答就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/84217.html

(0)

相关推荐

  • html如何在文本上显示图片(html怎么在页面上显示图片)

    技术html中如何显示图片本篇内容介绍了“html中如何显示图片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

    攻略 2021年12月23日
  • 怎么用Java设计一个短链接生成系统

    技术怎么用Java设计一个短链接生成系统这篇文章主要讲解了“怎么用Java设计一个短链接生成系统”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Java设计一个短链接

    攻略 2021年12月11日
  • 对MySQL性能优化的简单办法是怎样的

    技术对MySQL性能优化的简单办法是怎样的对MySQL性能优化的简单办法是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。对拥有一个几十万行表的 M

    攻略 2021年11月17日
  • 电视开不了机怎么回事,电视开不了机是什么原因

    技术电视开不了机怎么回事,电视开不了机是什么原因电视开不了机有以下几种原因电视开不了机怎么回事,可根据具体原因进行排障解决:1、电源插座无电或电源线没有接好,可插好视讯终端电源插头,保证电源插座电压正常;2、遥控器内没有

    生活 2021年10月30日
  • Tomcat9中容器结构与生命周期的示例分析

    技术Tomcat9中容器结构与生命周期的示例分析这篇文章将为大家详细讲解有关Tomcat9中容器结构与生命周期的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。容器的生命周期容器

    攻略 2021年12月11日
  • 有关mysql的坑有哪些

    技术有关mysql的坑有哪些这篇文章主要介绍“有关mysql的坑有哪些”,在日常操作中,相信很多人在有关mysql的坑有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”有关mysql的坑

    攻略 2021年10月21日