成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用命令行工具Graudit來查找你代碼中的安全漏洞

開源
憑借廣泛的語言支持,Graudit 可以讓你在開發(fā)過程中的審計你的代碼安全。

[[340608]]

憑借廣泛的語言支持,Graudit 可以讓你在開發(fā)過程中的審計你的代碼安全。

測試是軟件開發(fā)生命周期(SDLC)的重要組成部分,它有幾個階段。今天,我想談談如何在代碼中發(fā)現安全問題。

在開發(fā)軟件的時候,你不能忽視安全問題。這就是為什么有一個術語叫 DevSecOps,它的基本職責是識別和解決應用中的安全漏洞。有一些用于檢查 OWASP 漏洞的開源解決方案,它將通過創(chuàng)建源代碼的威脅模型來得出結果。

處理安全問題有不同的方法,如靜態(tài)應用安全測試(SAST)、動態(tài)應用安全測試(DAST)、交互式應用安全測試(IAST)、軟件組成分析等。

靜態(tài)應用安全測試在代碼層面運行,通過發(fā)現編寫好的代碼中的錯誤來分析應用。這種方法不需要運行代碼,所以叫靜態(tài)分析。

我將重點介紹靜態(tài)代碼分析,并使用一個開源工具進行實際體驗。

為什么要使用開源工具檢查代碼安全?

選擇開源軟件、工具和項目作為開發(fā)的一部分有很多理由。它不會花費任何金錢,因為你使用的是一個由志趣相投的開發(fā)者社區(qū)開發(fā)的工具,而他們希望幫助其他開發(fā)者。如果你有一個小團隊或一個初創(chuàng)公司,找到開源軟件來檢查你的代碼安全是很好的。這樣可以讓你不必單獨雇傭一個 DevSecOps 團隊,讓你的成本降低。

好的開源工具總是考慮到靈活性,它們應該能夠在任何環(huán)境中使用,覆蓋盡可能多的情況。這讓開發(fā)人員更容易將該軟件與他們現有的系統(tǒng)連接起來。

但是有的時候,你可能需要一個功能,而這個功能在你選擇的工具中是不可用的。那么你就可以選擇復刻其代碼,在其上開發(fā)自己的功能,并在你的系統(tǒng)中使用。

因為,大多數時候,開源軟件是由社區(qū)驅動的,開發(fā)的速度往往是該工具的用戶的加分項,因為他們會根據用戶的反饋、問題或 bug 報告來迭代項目。

使用 Graudit 來確保你的代碼安全

有各種開源的靜態(tài)代碼分析工具可供選擇,但正如你所知道的,工具分析的是代碼本身,這就是為什么沒有通用的工具適用于所有的編程語言。但其中一些遵循 OWASP 指南,盡量覆蓋更多的語言。

在這里,我們將使用 Graudit,它是一個簡單的命令行工具,可以讓我們找到代碼庫中的安全缺陷。它支持不同的語言,但有一個固定的簽名集。

Graudit 使用的 grep 是 GNU 許可證下的工具,類似的靜態(tài)代碼分析工具還有 Rough Auditing Tool for Security(RATS)、Securitycompass Web Application Analysis Tool(SWAAT)、flawfinder 等。但 Graudit 的技術要求是最低的,并且非常靈活。不過,你可能還是有 Graudit 無法滿足的要求。如果是這樣,你可以看看這個列表的其他的選擇。

我們可以將這個工具安裝在特定的項目下,或者全局命名空間中,或者在特定的用戶下,或者任何我們喜歡地方,它很靈活。我們先來克隆一下倉庫。

  1. $ git clone https://github.com/wireghoul/graudit

現在,我們需要創(chuàng)建一個 Graudit 的符號鏈接,以便我們可以將其作為一個命令使用。

  1. $ cd ~/bin && mkdir graudit
  2. $ ln --symbolic ~/graudit/graudit ~/bin/graudit

在 .bashrc (或者你使用的任何 shell 的配置文件)中添加一個別名。

  1. #------ .bashrc ------
  2.  
  3. alias graudit="~/bin/graudit"

重新加載 shell:

  1. $ source ~/.bashrc #
  2. $ exex $SHELL

讓我們通過運行這個來檢查是否成功安裝了這個工具。

  1. $ graudit -h

如果你得到類似于這樣的結果,那么就可以了。

 

圖 1 Graudit 幫助頁面

我正在使用我現有的一個項目來測試這個工具。要運行該工具,我們需要傳遞相應語言的數據庫。你會在 signatures 文件夾下找到這些數據庫。

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

我在現有項目中的兩個 JavaScript 文件上運行了它,你可以看到它在控制臺中拋出了易受攻擊的代碼。

 

JavaScript file showing Graudit display of vulnerable code

 

JavaScript file showing Graudit display of vulnerable code

你可以嘗試在你的一個項目上運行這個,項目本身有一個長長的數據庫列表,用于支持不同的語言。

Graudit 的優(yōu)點和缺點

Graudit 支持很多語言,這使其成為許多不同系統(tǒng)上的用戶的理想選擇。由于它的使用簡單和語言支持廣泛,它可以與其他免費或付費工具相媲美。最重要的是,它們正在開發(fā)中,社區(qū)也支持其他用戶。

雖然這是一個方便的工具,但你可能會發(fā)現很難將某個特定的代碼識別為“易受攻擊”。也許開發(fā)者會在未來版本的工具中加入這個功能。但是,通過使用這樣的工具來關注代碼中的安全問題總是好的。

總結

在本文中,我只介紹了眾多安全測試類型中的一種:靜態(tài)應用安全測試。從靜態(tài)代碼分析開始很容易,但這只是一個開始。你可以在你的應用開發(fā)流水線中添加其他類型的應用安全測試,以豐富你的整體安全意識。 

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2020-09-03 16:31:00

代碼技能工具

2011-01-18 19:11:26

Postfix命令行

2013-12-03 09:23:06

命令行網速

2015-09-02 15:47:05

命令行fdupesLinux

2012-11-20 16:16:05

Windows

2022-08-14 19:19:14

Linux

2021-07-08 08:56:30

Linux命令刪除用戶

2022-04-11 06:03:24

FdupesLinux命令行工具

2019-06-17 09:30:50

命令行Windows 10管理密碼

2024-11-18 15:05:34

MySQL數據庫

2010-05-17 15:41:26

2020-08-16 08:50:03

Zoom網絡攻擊漏洞

2009-12-07 09:55:12

2011-09-28 10:25:23

2009-07-07 11:28:36

2020-12-10 16:16:08

工具代碼開發(fā)

2020-12-11 06:44:16

命令行工具開發(fā)

2021-07-29 10:00:43

XMLXMLStarletLinux

2023-12-01 07:06:14

Go命令行性能

2023-10-30 01:00:42

Go語言Cobra庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 五月婷婷 六月丁香 | 成人精品一区二区 | 午夜精品在线观看 | 国产综合久久 | 久久国产精品视频 | av免费观看在线 | 拍真实国产伦偷精品 | 国产精品一区二区在线 | 在线精品一区二区 | 精品国产欧美日韩不卡在线观看 | 国产视频福利在线观看 | 精品99久久 | 欧美日韩国产精品一区二区 | av天天干| 日韩精品久久久久 | 日韩精品一区二区三区视频播放 | 国产精品久久久久久久久久久久久久 | 中文在线一区二区 | 色综合网站 | 亚洲福利一区二区 | 中文字幕视频网 | 亚洲精品一区二区二区 | av在线一区二区三区 | 天堂视频一区 | 午夜精品在线观看 | 国产精品久久久久国产a级 欧美日韩国产免费 | 精精国产xxxx视频在线野外 | 欧美在线视频一区 | 国产激情视频在线观看 | 国产精品精品久久久 | av一区二区三区 | 国产亚洲精品久久久优势 | 精品美女视频在免费观看 | 日韩在线小视频 | 一区二区在线不卡 | 亚洲精品v | 91亚洲精品国偷拍自产在线观看 | 高清不卡毛片 | 男人天堂99 | 日韩国产一区二区三区 | 国产精品乱码一区二区三区 |