概念
所謂“邏輯炸彈”是指在特定邏輯條件滿足時,實施破壞的電腦程式,該程式觸發後造成計算機數據丟失、計算機不能從硬碟或者軟碟引導,甚至會使整個系統癱瘓,並出現物理損壞的虛假現象。
最常見的激活一個邏輯炸彈是一個日期。該邏輯炸彈檢查系統日期,並沒有什麼,直到預先編程的日期和時間是達成共識。在這一點上,邏輯炸彈被激活並執行它的代碼。
邏輯炸彈也可以被編程為等待某一個訊息,從程式設計師。該邏輯炸彈例如,可以檢查一個網站,每周一次為某一個訊息。當邏輯炸彈看到的訊息時,或邏輯炸彈站看到的訊息,它激活並執行它的代碼。
邏輯炸彈也可以被編程為激活對各種各樣的其他變數,例如當一個資料庫的增長,過去一定規模或用戶主目錄中刪除。
特點
該程式觸發後造成計算機數據丟失、計算機不能從硬碟或者軟碟引導,甚至會使整個系統癱瘓,並出現物理損壞的虛假現象。“邏輯炸彈”引發時的症狀與某些病毒的作用結果相似,並會對社會引發連帶性的災難。與病毒相比,它強調破壞作用本身,而實施破壞的程式不具有傳染性。
邏輯炸彈也可以被編程為激活對各種各樣的其他變數,例如當一個資料庫的增長,過去一定規模或用戶主目錄中刪除。
最危險的形式的邏輯炸彈是一個邏輯炸彈激活時,一些事件不會發生。試想一名形跡可疑的和不道德的系統管理員,誰創造了邏輯炸彈,其中刪除了所有數據在伺服器上,如果他不記錄在一,兩個月。系統管理員程式邏輯炸彈與這個邏輯,因為他知道如果他是解僱,他將無法取回進入系統設定他的邏輯炸彈。一天,他在上班的路上,我們可疑的和不道德的系統管理員是擊中一輛巴士。三個星期後,他的邏輯炸彈雲小康和伺服器是洗去。系統管理員的意思為邏輯炸彈爆炸,如果他被解僱;他沒有預見,他將遭到一輛巴士。
因為一個邏輯炸彈不自我複製,這是很容易寫一邏輯炸彈的計畫。這也意味著一個邏輯炸彈將不會蔓延到意想不到的受害者。在某些方面,邏輯炸彈是最文明的程式的威脅,因為一個邏輯炸彈,必須針對特定的受害者。
經典使用一個邏輯炸彈,是要確保支付軟體。如果付款是不是由某一特定日期,邏輯炸彈激活和軟體會自動刪除本身。一個更惡意的形式,即邏輯炸彈也將刪除其他數據在系統上。
危害
邏輯炸彈的危害:
(1)邏輯炸彈可以直接破壞計算機軟體產品的使用當事人的計算機數據。而在微機公用的前提下,惡性炸彈的破壞具有較寬的涉及範圍。在我國微機廣泛使用和備份環節薄弱的情況下,危害常常是不可恢復的,即使對於在特定條件下可以恢復的情況,也可能由於操作不當或其他原因,誘使用戶成為最終毀滅數據的直接責任者;
(2)引發連帶的社會災難。包括直接和簡介的損失,如經濟損失、企業虧損、資料丟失、科學研究的永久性失敗、當事人承受精神打擊、失業或家庭破裂、連帶的經濟犯罪、刑事犯罪、或相關人的生命安全等等,這樣的例子和事故是列舉不完的。還有很多事故由於各種原因還不可公開,因此,連帶責任和損失將不計其數,實際上和普通刑事、民事或經濟案件一樣,是社會的不穩定因素。
(3)邏輯炸彈的邏輯條件具有不可控制的意外性。這次無辜用戶遭受襲擊,就是因為好奇而誤用了具有特殊磁軌的誘因軟碟,還有的用戶是因為操作順序不當,比如把KV300拷貝到硬碟,想檢查用MK300V4加工的磁碟有無病毒,結果啟動KV300時直接插入的是誘因磁碟,而不是原廠磁碟,在這一案例中,導致誘因的磁碟實際屬於普通數據磁碟;
(4)邏輯條件的判斷很可能失常,以江民炸彈為例,比如,軟碟驅動器的故障、磁碟的故障都是誘發邏輯炸彈的潛在因素。這雖然不是高機率事件,但卻具有不可控性。如果磁碟出錯導致錯誤讀取的數據恰好是破壞性的計算機指令,這種機率可以說就是零,而錯誤數據成為邏輯誘因的機率則高得多;
(5)邏輯炸彈本身雖然不具備傳播性,但是誘因的傳播是不可控的。要靈活的多。假如病毒可以比作是自己運行的飛彈,那么邏輯炸彈則是一枚相對靜止的定時炸彈或充滿易燃品的軍火庫。儘管通過管制可以不爆發,但是不會有人願意住在核電站附近吧。所謂誘因不可控的例子很容易舉,比如類似技術使得使得類似磁軌出現在其他商業軟體程式中,甚至某個新的加密盤生成工具軟體所加工的磁碟都可以成為誘因,這是非常可能的事情;
(6)新的病毒可以成為邏輯炸彈的新誘因,比如在軟碟拷貝(如KV300升級)過程中,已經駐留而又沒有被發現的病毒可以給軟碟加工一下,使得正版磁碟成為誘因;病毒也可以駐留記憶體截獲相應的中斷服務程式,使得KV300啟動後,實施病毒檢查之前,獲得盜版磁碟的假象。這就是生動的例子,說明除了零以外,其他數都可以被放大。而那些充當係數的因子本身不實施破壞或實質性破壞。
(7)由於邏輯炸彈不是病毒體,因此無法正常還原和清除,必須對有炸彈的程式實施破解,這個工作是比較困難的。由於邏輯炸彈內含在程式體內,在空間限制、編寫方式、加密方式等各方面比編寫病毒要具有更加靈活的空間和餘地,所以很難清除。
(8)軟體邏輯炸彈或其他類似違法行為,會破壞類似產品或一個領域的相似產品的可信度。對於反病毒廠商,本來就具有很多傳聞,說一些病毒就是某些廠商所炮製,並且我國軟體市場還不成熟,的確應該象種地一樣,一邊種植從土地獲得養分,一邊精心培育和養護這個土地,如果土地傷了元氣,就無法種植新的作物了。對類似案件的處理不當或過輕,會引起激發感染,鼓勵其他軟體也使用類似非法行為進行著作權保護。
與病毒、木馬的區別
病毒是通過自我複製進行傳播的電腦程式,自我複製是病毒的基本定義,病毒通常包括複製傳播機制和條件破壞機制,而後者不是必備的,所以也存在那些只傳染複製而不實施惡性破壞的所謂的“良性”病毒。而只破壞卻不能自我複製的程式不屬於病毒。典型木馬程式是以“冒充”來作為傳播手段的,比如經常說起的PK-ZIP300就是典型的例子,它冒充是某個軟體的新版本,在用戶無意嘗試或使用的時候實施破壞。國際上比較先進的計算機反病毒軟體有些已經加進了對典型木馬程式的判別。
相比而言,邏輯炸彈要更隱藏一些。邏輯炸彈可以理解為在特定邏輯條件滿足時實施破壞的電腦程式。與病毒相比,邏輯炸彈強調破壞作用本身,而實施破壞的程式不會傳播。我們從定義上將能夠複製傳染的破壞程式歸屬在病毒中。與典型木馬程式相比,邏輯炸彈一般是隱含在具有正常功能的軟體中,而典型木馬程式可能一般僅僅是至多只模仿程式的外表,而沒有真正的實際功能。當然,這些概念本身都具備一定的靈活性,在一定的條件下可以相互產生和相互轉化。我們也把邏輯炸彈發作的條件成為誘因、邏輯誘因。
硬碟邏輯炸彈
硬碟邏輯炸彈其實是由於硬碟的主引導記錄被修改所引起的。因此,要想了解其原理就必須先了解主引導記錄。硬碟的主引導記錄位於0柱面0磁頭1扇區,它是由3部分組成的,其中從0h到1Beh這446個位元組稱為引導程式;從1Beh到1Feh這64個位元組被稱為硬碟分區表,一共可容納4個分區的數據;從1Feh到200h這2個位元組被稱為自舉標誌,在啟動時BIOS檢查用的。後來我們檢查被炸硬碟的主引導記錄,結果發現:1引導程式部分被修改了;2硬碟分區表也被修改了,而且被改成一個循環鏈,即C糟的下一個分區指向D區,D區的下一個分區又指向C區,這樣一直循環下去造成一個死循環;3自舉標誌55AA沒被修改。