如何使用命令行工具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)

相关推荐

  • 分类算法的性能指标(分类算法常见的性能指标有)

    技术Classification算法指标是什么本篇内容介绍了“Classification算法指标是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希

    攻略 2021年12月21日
  • 零钱通的钱怎么转到银行卡,零钱通可以转出到另一张银行卡

    技术零钱通的钱怎么转到银行卡,零钱通可以转出到另一张银行卡零钱通的钱转到银行卡具体步骤如下零钱通的钱怎么转到银行卡:1. 打开微信app,登录,进入我的页面中。2. 在我的页面中选择“支付”,点击“零钱”,在零钱界面进入

    生活 2021年10月25日
  • java语言软件开发工具包是什么(使用java语法的脚本语言)

    技术四种Java脚本语言对比的示例分析小编给大家分享一下四种Java脚本语言对比的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在一些

    攻略 2021年12月20日
  • ADO.NET sql server存储过程怎么调用

    技术ADO.NET sql server存储过程怎么调用这篇文章主要介绍“ADO.NET sql server存储过程怎么调用”,在日常操作中,相信很多人在ADO.NET sql server存储过程怎么调用问题上存在疑

    攻略 2021年12月3日
  • Java反射有什么优点

    技术Java反射有什么优点这篇文章主要讲解了“Java反射有什么优点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java反射有什么优点”吧!在谈反射之前,先思考一个问题

    攻略 2021年11月30日
  • PHP+Redis怎么实现点赞效果

    技术PHP+Redis怎么实现点赞效果这篇文章主要介绍“PHP+Redis怎么实现点赞效果”,在日常操作中,相信很多人在PHP+Redis怎么实现点赞效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望

    攻略 2021年11月30日