打造拼寫檢查式安全

2021-09-23 07:08:45 字數 1626 閱讀 2867

老實說,要不是有拼寫檢查的幫助,「separate」這詞兒拼錯的人肯定不少。微軟word將近20年的忠實耐心重複功不可沒。

思考安全問題的時候,拼寫檢查的概念也是十分有啟發性的。當場改正的好處非常巨大——能立即發現過程中的錯誤。更大的好處則是能看到建議的修正方案,因為重複的識別和修復過程是高度有效的學習工具。拼寫檢查能自我完善,越來越傑出。

軟體安全測試的傳統工作模式一成不變了好一段時間。研發團隊寫**一直寫到能放出乙個完整版本,然後完整應用程式被投入測試;測試結果再返回研發團隊進行查缺補漏。

這就是麻煩產生的起點。因為測試結果返回的時候,研發團隊已經推進到下乙個開發周期了。未解決測試中發現的問題,他們必須暫停當前工作,又把思緒調回到之前的週期,展開調查和修復工作。有些測試工具揹著經常誤報的黑歷史,研發人員還得先驗證每個漏洞是不是確實存在且可被利用的。這讓常被進度催著走的研發團隊壓力山大,往往就為了趕時間而不顧安全了。

甚至安全培訓(假設有培訓吧,雖然更常見的現象是根本沒有),也是整體兜售的。研發人員被調出開發周期,去參加各種課程或被鼓勵去進行基於計算機的培訓。隨著千禧一代踏入軟體開發職場,隨著敏捷軟體開發方法的擴張,這一培訓方法不再理想。千禧一代更喜歡速食碎片化學習模式。

顯然,軟體安全測試和安全培訓都需要進行正規化轉換。作為回應,很多廠商熱衷於丟擲乙個讓人迷惑的術語:左移。這詞兒源於瀑布式開發圖表,裡面的左移表示進入該過程前已嵌入測試。但這些廠商中大多數,左移的不過是調出與傳統方式相同測試過程的「按鈕」而已。

並不完全是正規化轉換

左移什麼的都可以放下了,不如利用拼寫檢查式安全技術植入安全。這些工具活躍在開發環境內部,**編寫過程中就在做漏洞檢查,對**進行輕量級靜態分析,在源頭發現跨站指令碼或sql注入之類的常見問題。

此類工具的高階版本還提供教育性材料,向開發者解釋所發現漏洞的本質及其利用方式,可用於清除漏洞的修復方案也有建議。有些還會在開發者確認後執行所選修復。漏洞就這樣被現場發現、解釋、修復了。

這種方法的好處顯而易見。

1. 漏洞實時發現,開發者可立即修復問題,不用等到之後很久測試結果出來又再重開工程進行修復。採用這些工具的企業已經見證了開發生產力上15%的效率提公升。這得益於在查詢並清除誤報,以及中斷開發周期修復前版軟體上的時間節省。成千上萬美元的修復開銷節省也是有報道的。

2. 互動過程成為了開發團隊進行微學習的機會。這些工具教授開發人員常見漏洞的本質,提供從他們的**中清除這些漏洞的模板。觸手可及的學習過程比傳統學習方法有著高得多的駐留率和影響。最終,常見錯誤從**庫中消失了。

3. 這些工具提供了對開發團隊安全準備度的巨集觀視角,鞏固了對員工及其安全編碼表現的資訊掌握。經理們能看出開發模式,採取額外培訓或單個輔導的方式解決潛在問題。可見性提供了改善現狀和進一步提高生產力的機會。

目標非常明確——盡早發現問題以便能在源頭進行修復。儘管這些工具不能免除開發周期末端的全面靜態和動態測試,但只要運用合適,安全拼寫檢查應能在這些測試前捕獲很多問題。這將讓開發周期末端的那輪測試更多地像是最終評估,而不是單純的漏洞測試。

成熟的企業應採納混合式方法,將測試工具融入開發生命週期各個階段。目標是早期發現並修復,摒棄開發生命週期的中斷,用工具來提公升開發人員的安全競爭力。

最終結果將會使更精明的企業脫穎而出。

打造拼寫檢查式安全

本文講的是打造拼寫檢查式安全,老實說,要不是有拼寫檢查的幫助,separate 這詞兒拼錯的人肯定不少。微軟word將近20年的忠實耐心重複功不可沒。思考安全問題的時候,拼寫檢查的概念也是十分有啟發性的。當場改正的好處非常巨大 能立即發現過程中的錯誤。更大的好處則是能看到建議的修正方案,因為重複的識...

python 拼寫檢查

無意中刷微博看到這篇文章作者用很簡短的語句寫了乙個拼寫檢查的python程式。看完之後發現原來拼寫檢查的原理是這樣的,之前感覺應該是很高深的東西。但是由於對python中lambda表示式的不怎麼理解於是,我就又憑著自己的理解簡單的寫了一遍。沒有原文中作者的優化部分,只是簡單的實現了功能。而且是只有...

單詞拼寫檢查

給定n個單詞 n 10000 給定m個查詢 輸出無法查詢見的單詞的個數 分析 貌似是雜湊表的入門題?我覺得好難。做雜湊表需要一些技巧的,大概就是對單詞的首 中 尾的字元順序碼加權,方便插入也方便查詢。遇到be和bee這種單詞可能費一些時間,不過總的來說還是很快的。單詞拼寫檢查 include inc...