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

相关推荐

  • 用好像写一句话,用好像……好像……好像造句

    技术用好像写一句话,用好像……好像……好像造句1、天空中的云变幻无穷,有的像小狗,好像在伏在地上打盹用好像写一句话;有的像野狼,好像在仰天长啸;有的像雄鹰,好像在展翅飞翔。2、花园里的花真是千姿百态:有的傲立在枝头,好像

    生活 2021年10月22日
  • PDO连接数据库

    技术PDO连接数据库 PDO连接数据库上一篇文章为您介绍了“PHP数据库如何使用PDO连接数据库”在PHP中,为您详细地介绍了如何通过PDO连接数据库,这篇文章让您继续了解PHP中如何使用PDO执行SQ

    礼包 2021年10月28日
  • Ajax与IE6缓存问题及解决方法

    技术Ajax与IE6缓存问题及解决方法本篇文章给大家分享的是有关Ajax与IE6缓存问题及解决方法,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。向大家简单介

    攻略 2021年11月26日
  • IE7.JS怎样解决IE兼容性问题

    技术IE7.JS怎样解决IE兼容性问题这篇文章给大家介绍 IE7.JS怎样解决IE兼容性问题,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。和大家重点讨论一下如何使用IE7.JS解决IE兼容性问题,I

    攻略 2021年11月25日
  • 11月17

    技术11月17 11月17一、RowDeleting当单击某一行的 "删除" 按钮时,但在控件删除该行之前,将引发该事件GridView。这使你可以提供一种事件处理方法,该方法可在每次发生此事件时执行自

    礼包 2021年11月18日
  • PHP BnbTool开发包有哪些特性

    技术PHP BnbTool开发包有哪些特性本篇内容介绍了“PHP BnbTool开发包有哪些特性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔

    攻略 2021年11月26日