2007/02/09

[Linux] flawfinder and splint

這裡有提到一個在 Linux 上面幫你檢查程式碼的工具。

嘿嘿,這個工具顯然對我這種肉腳有很大的幫助。

在軟件開發過程中,我們可以利用源碼檢查工具來找出常見的編程錯誤以及安全漏洞。這些工具用起來並不複雜,下面介紹splint和flawfinder這兩款源碼檢查工具的使用方法。

splint是一款靜態源代碼檢查工具,能對源代碼進行全面的分析。對於沒有註釋的源代碼,可以使用-weak選項:

splint -weak *.c -I./inc

其中,./inc是頭文件所在的子目錄。此外,Splint還支持標準檢查模式(選項-standard),若要進行中等強度檢查則使用選項-checks,若使用選項-strict則進行最嚴格的檢查。

flawfinder也是一款用來尋找源代碼錯誤的靜態分析工具。通過該工具提供錯誤消息,開發人員可以更快的找到錯誤所在。請看下面的例子:

$ flawfinder test.c
test.c:11: [2] (buffer) char:
Statically-sized arrays can be overflowed. Perform bounds
checking, use functions that limit length, or ensure that
the size is larger than the maximum possible length.
$

本例中,flawfinder給出了一個提示,指出靜態尺寸的數組可能被惡意利用的潛在危險。
張貼留言

[Windows] 好用的小工具: AutoHotKey

做為一個 Linux 的愛好者,轉移到 Windows 上面的時候,往往難以適應 Windows 調整快捷鍵的方式,所以 google 了一下,結果發現很多人愛用的 "Auto Hot key"。不多說,就來給一個範例說明如何使用 Auto Hot key 來...