作業系統 安全相關的知識2

2021-09-11 06:01:29 字數 2178 閱讀 9143

一. 認證

什麼是認證---------->確認登陸系統的使用者是否為該系統所許可。

黑客與駭客:一般而言,兩者都是企圖非法登入到使用者計算機。前者經常用於形容資深程式設計師,後者通常是一些從事違法行為的人。黑客分為白帽子黑客與黑帽子黑客,後者從事破壞活動,與駭客類似。

認證的基本手段:

1. 使用口令認證:

這種認證方式即是我們熟知的賬號密碼登陸驗證方式。系統會在內部儲存乙個登入名與口令的列表,只有當登陸者的輸入匹配時,才允許訪問系統。在windows系統中,為提高口令的安全性,在螢幕中會以*顯示口令。在unix系統中,則完全不顯示口令。

以上的認證方式存在極大的安全隱患,駭客可以輕鬆的偽裝身份登入到系統。由於人們設定登入名與口令的習慣往往是名字,**號碼,生日,喜愛的影視作品名等,駭客可以通過構造一系列登陸對試圖闖入系統。可能感覺這種方式成功率很低,但事實卻是82%的口令能被輕易猜出。乙個常見的入侵方式如下:

1)2)

3)因此為提高系統安全性,口令的選擇就十分關鍵了。通過對口令進行「加鹽」的方式,可以有效的阻止大多數攻擊。加鹽的基本思想為:將乙個口令與乙個n位隨機數關聯,口令變化則隨機數變化。加隨機數附加到口令後,接著用加密演算法加密,將結果儲存在口令檔案,這樣迫使攻擊者不得不猜測這個隨機數是多少(比如密碼是bruce2487,駭客可能會通過登入對構造口令bruce,但2487是其不可**的)。

1)選擇乙個單向雜湊函式

2)選擇乙個整數n,其確定了一次性口令的數量。

3)選擇乙個保密口令s,帶入函式,獲得初始口令p0.

4)將p0帶入函式,以此獲得n-1個額外的指令。

每次使用了乙個口令,就被拋棄,知道使用完畢。

有時除了需要提供口令,有的系統還要求使用者回答問題,如你的母親名字等。這就是挑戰=響應認證,在現實世界,就是我們所知道的密保問題。

2. 使用實際物體的認證方式:

比如人們持有的磁卡,鑰匙就是此類認證方式。

3. 使用生物識別的認證方式:

比如指紋,虹膜等這類難以偽造的特徵。

二. 作業系統中的內部攻擊

1. 邏輯炸彈:

即只要每隔固定的時間(如每天)輸入特殊的口令,則系統無事發生,否則,邏輯炸彈擦除系統磁碟,刪除系統檔案,或對重要檔案加密等,這些都會對系統造成毀滅性打擊。

2. 後門陷阱:

這是由內部人員造成的漏洞,一般是跳過一些通常的檢測並插入一段**導致。它的實質是跳過的正常的認證過程。比如編寫**讓使用者名為yzx的使用者可以在任意密碼下登陸,這樣通曉該資訊的程式設計師加入對手公司後便可以無阻的監控原來公司的系統。

3. 登陸陷阱:

簡單地說就是釣魚**,將乙個頁面偽造成正常頁面,當使用者輸入賬號密碼後,其將其儲存在另外的伺服器,而後要求使用者重新輸入,等再次輸入後跳轉到正常的系統,從而欺詐使用者。

三. 利用**漏洞對系統發起攻擊:

1. 緩衝區溢位漏洞:

基於c語言不對陣列進行邊界檢查的這個特點。比如當過程a被呼叫,其中存在乙個陣列a[100],此時攻擊者可以任意覆寫a[101],a[102]這樣的棧空間。如果此時a[120]儲存的是呼叫玩過程a後的返回位址,就可能出現問題。攻擊者將過程b的起始位址寫到a[120],以此過程a呼叫結束後就不會返回到原來的程式,而是跳轉到過程b。如果過程b是惡意程式,系統便遭到了攻擊。

2. 格式化字串攻擊:

基於程式設計師輸入字串時更加樂意打縮寫的這麼乙個事實。以printf為例,當**為printf("%s",s)時不會出現問題,但如果偷懶,寫了printf(s),就可能出現問題。比如此時s=%x%x%x%x,那麼printf就會輸出四個記憶體位址(位於格式化字串位址後,儲存在堆疊中)。這樣我們讓s=aaaa%x%x%x......%x,我們一定可以在輸出中發現41414141這個值,通過這個值的位置,我們可以確定其儲存在陣列的第幾位。根據這個思路,獲取printf的返回值也是可以做到的,從而可以控制函式的跳轉行為。

3. return to libc攻擊:

就是利用了c語言中的libc庫,該攻擊可以在棧不能執行的條件下奏效。它利用了libc中的strcpy函式,該函式將源位址的值複製到目標位址,這樣可以將惡意**複製到可以執行的記憶體處並在稍後執行。

4. **注入攻擊:

即使程式執行不期望的**。比如書寫了乙個c語言程式,它讓使用者輸入三個字串,將其作為shell指令執行。假設想要執行乙個複製操作,只需要依次輸入 cp  file1 file2即可,但攻擊者此時可以發起**注入攻擊,比如將第三個字串改為file2;rm -rf,就會刪除系統所有的檔案。

作業系統 安全系統的相關知識

一.密碼學原理 1.加密的簡單概念 將明文,即原始資訊或檔案,通過某種手段轉化為密文,以達到資訊保安的目的,這個手段就是加密。上述過程用公式可以總結如下 其中p為明文,q為密文,k為加密引數 金鑰 e為加密演算法。在現代加密技術中,機密演算法本身是公開的,加密的安全性,完全由金鑰來決定,這也叫ker...

作業系統安全深入

計算機安全原理與實踐 黑客攻防技術寶典.系統實戰篇.第二版.pdf 黑客之道 漏洞發的藝術.jon.erickson.掃瞄版 黑客除錯技術揭密.美.kaspersky.掃瞄版.pdf 0day安全 軟體漏洞分析技術 第2版 shellcoder程式設計揭秘 老碼識途 從機器碼到框架的系統觀逆向修煉之...

作業系統安全認知

阿里雲大學課程 作業系統安全認知 課程介紹 本認證課程旨在幫助學員了解在雲計算環境中作業系統常見的安全問題,以及作業系統具有的安全機制,特別是windows作業系統和linux作業系統的安全機制,只有掌握了這些安全機制,才能更好的做好作業系統安全防護,減少作業系統的威脅。課程目標 了解雲計算場景作業...