日韩无码电影,亚洲成av人无码不卡影,亚洲巨爆奶一区二区三区,最新肏屄视频在线免费看

您的位置:首頁 > 科技 >

安全編程:初始化那些你忽略掉的東西

2023-09-08 13:41:50 來源:今日頭條

對于黑客來說,特權(quán)提升漏洞是令他感到非常興奮的事情,而有時候這種漏洞的來源僅僅是因?yàn)殚_發(fā)者忘記將內(nèi)存緩沖區(qū)中的垃圾數(shù)據(jù)進(jìn)行初始化。此話怎講?

我想,現(xiàn)在每個人都應(yīng)該熟悉 SecureZeroMemory 函數(shù)的使用,它用來擦除包含敏感信息的緩沖區(qū),但是在將緩沖區(qū)的內(nèi)容寫入另一個位置之前,你還必須將其清零。例如,請考慮以下二進(jìn)制格式:


(資料圖)

下面是一段想文件中寫入數(shù)據(jù)的例子:

在上面的代碼中,你有沒有看到隱藏在其中的安全問題?

如果輸入的注釋內(nèi)容的長度短于 255 個字符,則在空終止字符之后的字節(jié)由未初始化的堆棧垃圾組成。這段堆棧垃圾數(shù)據(jù)中,可能包含你不打算泄漏到文件中的有趣信息。

當(dāng)然,它不會包含你已經(jīng)識別為高度敏感的信息,例如密碼,但它仍然可能包含雖然不太敏感,但對于尋找它的人來說仍然有價(jià)值的信息。

例如,根據(jù)編譯器決定放置局部變量的位置,你可能會將帳戶名泄漏到這些未使用的字節(jié)中。

有人告訴我,一家公司很久以前的網(wǎng)絡(luò)軟件也有一個類似的Bug。

他們使用了一種非常先進(jìn)的”更改密碼”的算法,其細(xì)節(jié)并不重要。設(shè)計(jì)是只在網(wǎng)絡(luò)上傳輸高度加密的數(shù)據(jù)。這樣,在網(wǎng)絡(luò)上并捕獲數(shù)據(jù)包的黑客就不會看到任何有價(jià)值的東西。

但是他們的客戶端中有一個錯誤:當(dāng)它向服務(wù)器發(fā)送加密密碼時,它忘記了清空”更改密碼”數(shù)據(jù)包中未使用的字節(jié)。在那些未使用的字節(jié)中,你猜對了,是純文本密碼的副本。

總結(jié)

道高一尺魔高一丈,我們必須小心行事。寫代碼的同時,也將自己帶入到黑客角色問自己:”這段代碼會不會有安全漏洞?”

關(guān)鍵詞:

[責(zé)任編輯:xwzkw]

相關(guān)閱讀