2016-12-30 120 views
-1

我需要什麼資源才能完全理解這是如何工作的?我在網上查了一下,但我得到的只是軟件解決方案,而不是軟件實際檢測它們的方式。如何編寫惡意軟件檢測軟件?

我希望能夠檢測到我電腦中的惡意軟件。假設我的電腦中有一個特洛伊木馬。我將如何編寫一個程序來檢測它?

我是信息安全初學者。

在此先感謝。

+0

[這](https://www.researchgate.net/profile/Aditya_Mathur2/publication/229008321_A_survey_of_malware_detection_techniques/links/543153450cf29bbc1278860d.pdf)可能是一個很好的論文,開始閱讀不同的惡意軟件檢測方法。 – leroydev

回答

1

大多數端點安全產品都有: - 按需掃描組件。 - 一個實時掃描組件。 - 在「發佈」之前掛鉤到OS的其他區域以檢查數據。例如。網絡層出現網絡威脅。 - 檢測引擎 - 包含文件提取器 - 可更新的檢測數據。 - 運行時掃描元素。

有許多圖層和組件需要一起工作才能增強保護。

以下是一些需要由安全產品覆蓋的方案。

  • 磁盤上的惡意文件 - 靜態掃描 - 按需。也許你有的例子。 命令行/按需掃描程序將根據請求掃描的內容枚舉每個目錄和文件。該過程將讀取文件並將數據流傳遞給檢測引擎。根據配置的掃描設置和排除,將檢查文件。引擎可以理解/解壓文件來檢查類型。大部分都有一個文件類型檢測組件。它可以看到這個文件的前幾個字節 - https://linux.die.net/man/5/magic。非常基本,但它爲您提供了一個想法,即在執行更多分類之前如何分類文件類型。它可以像在不同偏移量下的一些文件校驗和一樣簡單。

在你的例子中的木馬文件。假設你是自己的病毒實驗室,也許你之前已經看過這個文件,分析它是一個書面檢測,因爲你知道它是惡意的。也許你可以只檢查文件的一部分,並將這些數據發佈給你的產品。所以你有virusdata.dat,其中你可能有一個校驗和和一個名字。例如。 123456789,Troj-1 然後,您將有一個掃描進程,它在啓動時加載您的病毒數據文件並打開文件進行掃描。掃描儀根據實驗室情況對文件進行校驗,並與數據文件進行匹配。您顯示名稱,因爲它被標記。這實際上是最基本的例子,並不是那種實用的方法,希望它能達到某種目的。當然,你會看到誤報的問題。

產品的其他方面包括:

  • 一種方法寫一個惡意文件到磁盤 - 實時的。 爲了實時「查看」文件訪問並進入該堆棧,您需要一個文件系統過濾器驅動程序。例如在Windows上的文件系統迷你過濾器:https://msdn.microsoft.com/en-us/windows/hardware/drivers/ifs/file-system-minifilter-drivers。這將保證您在讀取/寫入之前訪問文件。然後,您可以在文件被流程寫入或讀取之前掃描該文件,以便讓您有機會拒絕訪問和警報。請注意,在這種情況下,您會阻止,直到您決定是允許還是阻止訪問。正是由於這個原因,訪問安全產品可能會減慢文件I/O。他們通常有一些驅動程序可以傳遞工作的掃描線程。如果所有的線程正在忙於掃描,那麼你有一個問題。在捆綁掃描引擎/ CPU /內存等之前,您需要處理諸如拉鍊炸彈之類的東西並進行救援......

  • 瀏覽器正在下載惡意文件。
    您可以在按訪問掃描程序上進行回覆,以防止瀏覽器進程碰到磁盤,但瀏覽器可以在點擊文件系統之前呈現腳本。因此,您可能需要創建一個組件來在Web瀏覽器之前攔截流量。這裏有幾種可能性。你是否針對特定的瀏覽器使用插件,或者你是否使用本地代理進程攔截流量。選項包括使用分層服務提供商(LSP)或WFP(https://msdn.microsoft.com/en-us/windows/hardware/drivers/network/windows-filtering-platform-callout-drivers2)掛接網絡層。在這裏,您可以將流量重定向到流入或流出流程代理,以檢查流量。除非您打算再次打開管道,否則SSL流量會造成問題。

  • 然後有運行時保護,您不檢測帶簽名的文件,但應用規則檢查行爲。例如,爲其自身創建啓動註冊表位置的進程可能被視爲可疑。可能不足以阻止文件本身,但如果文件沒有有效簽名,則位置是用戶的臨時位置。它由AutoIt創建,沒有文件版本。所有這些屬性都可以決定是否應該運行這些屬性,這些屬性構成了安全供應商的專有數據,並且一直在不斷完善。也許你開始將應用程序檢測爲可疑,並向用戶發出警告,以便他們授權他們。

這是一個巨大的主題,觸及如此多的圖層。希望這是你想到的那種東西。

1

其中,Peter Szor的「計算機病毒研究與防禦藝術」絕對是「必讀」。