CWE-58:EmptySynchronized Block空的同步塊缺陷漏洞分析

zktq2021發表於2021-08-24

由於CWE對原始碼缺陷描述的準確性和權威性,原始碼缺陷檢測廠家逐漸在產品和服務中引用CWE中的相關資訊。CWE(Common Weakness Enumeration,通用缺陷列舉)是由美國國土安全部國家電腦保安部門資助的軟體安全戰略性專案。CVE(Common Vulnerabilities & Exposures,常用漏洞和風險)。CVE是國際著名的安全漏洞庫,也是對已知漏洞和安全缺陷的標準化名稱的列表,它的使命是為了能更加快速而有效地鑑別、發現和修復軟體產品的安全漏洞。

接下來為大家主要講解CWE-585空的同步塊缺陷漏洞分析,有想法的同學可以一起加入討論。

一. 漏洞資訊

1. 漏洞簡述:什麼是空的同步塊缺陷?

空的同步塊實際上並不能完成任何同步,並且可能是有問題的程式碼段。空的同步塊可能是因為在不刪除同步塊的情況下,註釋掉了同步塊中不再需要的程式碼導致的。

2. 空的同步塊缺陷構成條件有哪些?

該程式包含一個空的同步塊。

3. 空的同步塊缺陷會造成哪些後果?

空的同步塊將會等待,直到沒有人正在使用指定的同步器。雖然這可能是所需行為的一部分,但由於您沒有透過將後續程式碼放在同步塊中來保護後續程式碼,所以無法阻止其他人修改您在執行後續程式碼時所等待的內容。

二、漏洞樣例

1. 空的同步塊缺陷樣例:

 

2. 用 悟空靜態程式碼安全檢測工具分析上述程式程式碼,則可以發現程式碼中存在著“空的同步塊” 導致的程式碼缺陷,如下圖:

 

三、空的同步塊缺陷的防範和修補方法有哪些?

當您遇到空的同步語句或其中程式碼已被註釋掉的同步語句時,請嘗試確定最初的意圖以及是否仍然需要同步塊。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2788444/,如需轉載,請註明出處,否則將追究法律責任。

相關文章