摘要:.Net - Heap Inspection in Fortify
有幸能用到Fortify,第一次使用的感覺就覺得CP值超高,為何這麼說呢 ?
因為Fortify Scan下來的文件,對於程式開發者對於資安的知識累積很有幫助,
不過似乎因為掃得太仔細,似乎讓很多修改的人很頭痛,對issue修改避之唯恐不及
這點我倒是很樂在其中的,在Fortify中有個Issue Category叫做 "Heap Inspection"
看字面的意思就是堆疊檢查,這是甚麼意思呢 ! 指的是我們有些敏感性的資料儲存
在堆疊中,是有可能被查看到的,比方說儲存在推疊中的字串,我這邊有個簡單
的方式就是將資料儲存在Securestring中,要取出時再轉出。
Public Shared Function GetSecureString(ByVal str As String) As SecureString
Dim securePwd As New SecureString()
For i As Integer = 0 To str.Length - 1
securePwd.AppendChar(str.Substring(i))
Next
Return securePwd
End Function
如此我需要取自串時候就可以用以下方式
Marshal.PtrToStringBSTR(Marshal.SecureStringToBSTR(GetSecureString(str)))
這只是個我自己弄出的簡單預防機制,或許還有其他更好的方法 :)
PS.其實有時做人家不想做的事情,收穫都挺多的呢 !!!