邏輯炸彈

邏輯炸彈

邏輯炸彈引發時的症狀與某些病毒的作用結果相似,並會對社會引發連帶性的災難。與病毒相比,它強調破壞作用本身,而實施破壞的程式不具有傳染性。邏輯炸彈是一種程式,或任何部分的程式,這是冬眠,直到一個具體作品的程式邏輯被激活。

計算機世界中的“邏輯炸彈”正是採用了這樣的手法——當計算機系統運行的過程中恰好某個條件得到滿足,如系統時間達到某個值、服務程式收到某個特定的訊息,就觸發惡意程式的執行並產生異常甚至災難性後果,例如使某個進程無法正常運行、刪除重要的磁碟分區、毀壞資料庫數據,使系統癱瘓等等。在觸發該條件之前系統運行卻並未出現任何異常。對系統管理員和計算機用戶來說,這樣的惡意程式如同埋藏在計算機中的一顆地雷,同樣驚心動魄。

基本介紹

  • 中文名:邏輯炸彈
  • 外文名:Logic bomb
  • 危害:破壞計算機數據等
  • 特點:與病毒的作用相似、具備傳染性
  • 常見激活方式:一個日期
背景,特點,危害,區別,硬碟邏輯炸彈,MCU,

背景

計算機中的“邏輯炸彈”是指在特定邏輯條件滿足時,實施破壞的電腦程式,該程式觸發後造成計算機數據丟失、計算機不能從硬碟或者軟碟引導,甚至會使整個系統癱瘓,並出現物理損壞的虛假現象。
“邏輯炸彈”引發時的症狀與某些病毒的作用結果相似,並會對社會引發連帶性的災難。與病毒相比,它強調破壞作用本身,而實施破壞的程式不具有傳染性。 邏輯炸彈是一種程式,或任何部分的程式,這是冬眠,直到一個具體作品的程式邏輯被激活。 在這樣一個邏輯炸彈是非常類似的一個真實世界的地雷。
最常見的激活一個邏輯炸彈是一個日期。 該邏輯炸彈檢查系統日期,並沒有什麼,直到預先編程的日期和時間是達成共識。 在這一點上,邏輯炸彈被激活並執行它的代碼。
邏輯炸彈也可以被編程為等待某一個訊息,從程式設計師。 該邏輯炸彈例如,可以檢查一個網站,每周一次為某一個訊息。 當邏輯炸彈看到的訊息時,或邏輯炸彈站看到的訊息,它激活並執行它的代碼。

特點

邏輯炸彈也可以被編程為激活對各種各樣的其他變數,例如當一個資料庫的增長,過去一定規模或用戶主目錄中刪除。
最危險的邏輯炸彈是受某事件未發生觸發的邏輯炸彈。 試想一名不道德的系統管理員,製造了一個邏輯炸彈用來刪除伺服器上的所有數據,觸發條件是他在一個月內沒有登錄。 系統管理員製造這個邏輯炸彈是因為他知道如果他被解僱,他將無法取回進入系統設定他的邏輯炸彈。 一天,他在上班的路上,這個不道德的系統管理員發生了車禍被一輛巴士撞了。 四個星期後,他的邏輯炸彈被觸發清空了伺服器上的所有數據。 系統管理員的意圖是在他被解僱後報復公司刪除數據,但是他沒有料到自己會發生車禍。
因為一個邏輯炸彈不自我複製,這是很容易寫一邏輯炸彈的計畫。 這也意味著一個邏輯炸彈將不會蔓延到意想不到的受害者。 在某些方面,邏輯炸彈是最文明的程式的威脅,因為一個邏輯炸彈,必須針對特定的受害者。
經典使用一個邏輯炸彈,是要確保支付軟體。 如果付款不是由某一特定日期,邏輯炸彈激活和軟體會自動刪除本身。 一個更惡意的形式,即邏輯炸彈也將刪除系統上其他數據。
歷史上曾經出現過的一個非常有名的邏輯炸彈例子是,含有邏輯炸彈的程式每天核對一個公司的員工工資發放清單。如果連續在兩次的發薪日中,某程式設計師的代號沒有出現在這個工資發放清單,邏輯炸彈就啟動了。

危害

邏輯炸彈的危害:
(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沒被修改。

MCU

MCU中的“邏輯炸彈”
單片機中的“邏輯炸彈”指一段特殊的程式,可以在某種條件下將程式摧毀或者鎖死,需要密碼才能開啟重新運行。它主要是用在保護程式設計師的程式所有權,防止客戶不給錢。
邏輯炸彈程式可以編寫在EEPROM上(EEPROM是一種掉電後數據不丟失的存儲晶片),也可以選用帶IAP功能、含有FLASH上。
程式的編寫可以是一段計時或計數程式,當達到觸發條件後,就對程式進行摧毀或鎖死。

相關詞條

熱門詞條

聯絡我們