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

相关推荐

  • C++怎么将帮助函数和它们支持的类放在同一命名空间

    技术C++怎么将帮助函数和它们支持的类放在同一命名空间这篇文章主要讲解了“C++怎么将帮助函数和它们支持的类放在同一命名空间”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“

    攻略 2021年11月25日
  • JavaScript怎么实现自定义日历效果

    技术JavaScript怎么实现自定义日历效果本篇内容主要讲解“JavaScript怎么实现自定义日历效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript怎

    攻略 2021年11月8日
  • 拔苗助长的道理,拔苗助长告诉我们什么道理

    技术拔苗助长的道理,拔苗助长告诉我们什么道理拔苗助长的实例 /147264.html 还有无数的事实与活生生的实例,没有必要再写下去了拔苗助长的道理。要说那个家长不盼着自己的儿女出人头地,成龙成凤。但毕竟成龙成凤的是少数

    生活 2021年10月29日
  • 如何在Android进行代理设置

    技术如何在Android进行代理设置这篇文章给大家介绍如何在Android进行代理设置,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Android代理设置步骤:1.打开你的Android设置。2.点

    攻略 2021年11月11日
  • 一起刷LeetCode

    技术一起刷LeetCode 一起刷LeetCode事件背景
    寒假在家没事,准备重新开始每日算法训练。
    在写题解的过程中发现,或许应该把它们统一记录下来。
    如何刷算法
    刷算法的目的有三
    1. 练习某一门语

    礼包 2021年12月23日
  • Oracle Partition怎么使用

    技术Oracle Partition怎么使用本篇内容主要讲解“Oracle Partition怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle Partit

    攻略 2021年12月9日