設置

第388章 中間人攻擊

熊貓書庫    超腦黑客
🔊點這里聽書

第388章中間人攻擊第388章中間人攻擊  雖然已經設計了權限控制,并且將系統進行了分層,但是在這方面做得并不好,甚至可以說是相當的粗糙。

  不過這也可以理解,畢竟這個系統剛剛出來,并且他們當時為了能夠盡快地推出,也非常的趕時間,將一些重要的功能首先實現了,對于普通用戶來說,他們設計的權限控制體系已經基本能夠滿足要求了。

  Windoén的windowsNT系列,其權限控制就比這個要完善多了,穩定性也極大的增強。不過,同樣的道理,他們想要對NT系統進行定制修改的難度也就更大了,總體說來,還沒有直接使用這個來得方便。

  并且,windows系列的系統都是閉源的,說白了這是商業軟件,你想使用,就必須進行購買,他們現在這樣使用,是違反知識產權法的,使用的是。要是被微軟發現,他們是可以通過司法途徑進行起訴的。當然,至于國內的法院受不受理,這又是另外一回事了。

  統的權限系統雖然簡單,但是在用戶層,想要對系統層進行操作這是絕對禁止的,因為會威脅到系統的穩定性,只要破壞了系統的某一個關鍵數據結構,很有可能就會讓系統崩潰。

  涉及到系統底層的操作,都是通過微軟給出的SDK包里面的系統函數進行實現的。這些系統函數,不會亂操作內存里面關鍵的數據,而是會按照系統程序員所期望的方式實現某些功能。

  這樣做,既不會影響系統的穩定性和安全性。又可以讓編寫應用軟件的程序員獲得想要的功能,還可以簡化操作步驟。讓他們不用關心底層的運行機制,簡直是一舉三得的好辦法。

  當然,也并不是說系統層里面的東西,用戶層完全訪問不了,那些病毒木馬想要實現自己的功能,很大程度上就是利用了系統的漏洞,獲得了超過用戶層的權限。

  不過,他們這個系統,已經被他們經過極度的優化。一些常見漏洞,也基本上給打上了補丁,要想找出這樣一個漏洞,還是很困難的。

  所以。余波在聽到林鴻大言不慚地說“權限要自己動手去拿。不會自動送上門。牛”的時候,不由冷冷一笑,反駁道:

  “你說得倒輕巧。有本事你拿一個看看?”

  余波心中還對林鴻有些意見,畢竟正是他的到來,才導致大家人心惶惶,擔心自己為之工作了好多年的心血被推到重來。此外,他也對林鴻輕描淡寫的態度很是看不慣,就算你們公司自己編寫出了一個控制系統。但是也不能這樣信口開河吧?

  他們在這個系統上浸吟了這么久,自認為自己對這個系統的了解。只是僅次于那些開發系統的人了。

  他當然知道權限要自己去拿,并不會自動送上門,但是,說起來容易做起來難,有些事情是站著說不腰疼,這樣的人,他見得多了。

  余波認為是林鴻想要在他們領導面前表現自己,才故意這樣“鼻孔chā大蔥”——裝象。

  林鴻聽到他的話,笑了下,沒有放在心上,而是對曹興平和徐直中說道:

  “這個情況我之前是遇到過的。很多木馬和蠕蟲,就是通過重寫系統底層的函數來截流數據。這在系統安全領域,有一個專門的名詞,叫做‘中間人攻擊’。”

  中間人攻擊,在黑客領域是一種非常古老并且有效的攻擊方式。

  其本質原理,就是在數據流動的鏈路上,串接一個攻擊者自己的“轉發器”,從而達到嗅探竊取數據的目的。

  這種情形,就好像將一個水管給截段,然后在上面連接一個自己的轉接頭,這個轉接頭是不會影響水管中水流的正常流動的,它只是對水流進行監控,一旦發現水流里面有一條魚經過,它就負責將這個信息給記錄在案,甚至,它還有其他一些比較神奇的功能,例如,將這條魚替換成一條泥鰍。

  而水管兩端的人,由于缺乏溝通,根本不知道這些水流在流動的過程中到底發生了什么。

  他們不知道自己私下發送的魚被別人監控了,甚至被人掉包,發送方以為自己發送了一條魚,而接收方則以為對方發送了一條泥鰍。

  在網絡領域,這個中間人甚至可以是一臺電腦,用戶A向用戶B發送信息,卻被人偷偷地讓信息流跑到電腦C上面走了一圈,而AB用戶卻根本不知道自己的信息已經被人監聽了。由于電腦C只是對數據進行復制和備份,完全不對信息進行修改,是被動的行文,所以AB是很難發現這種行為的。

  而在單機里面,中間人攻擊更多的就是像這次這樣,對某個環節或者函數進行接管,相當于在外面另外套了一層,要想訪問真實的內容,必須從中間人這里進入。

  林鴻的超級蠕蟲對數據進行搜集,實際上也是這個原理,從表面上看,已經被感染的系統和原來的系統是根本沒有任何差別的,不會影響到數據的正常流動,也不會影響系統的穩定性。

  而他們現在的這個雷達控制系統,很顯然也是這樣,有某一個東西正好接管了他們系統中所調用的一個系統函數,只是,對方在處理那個底層函數的時候,有個地方沒有處理好,導致他們在調用這個函數的時候,根本沒有調用成功,結果就沒有返回值。

  徐直中和曹興平兩人對視一眼,然后徐直中問道:“小鴻,你能肯定是這個原因嗎?”

  林鴻所說的話,通俗易懂,他們也聽明白了。

  雖然不離十,但是為了保險起見,林鴻還是得自己動手驗證一下才能打包票。

  “這樣吧,如果方便的話,我就使用我自己的方式進行驗證一下。”他說道。

  徐直中稍微想了一下,便點頭同意了。

  在曹興平的示意下,余波只好讓出了自己的座位。

  林鴻坐了上去,然后調出編譯器,立刻動手編寫一個小工具。

  這個小工具非常簡單,只有一個功能,那就是持續不斷地對之前那個函數進行調用,然后使用內存DUMP的方式,將內存里面的指定數據保存在一個文本文件里面,與此同時,也監測那個函數的返回結果。

  接著,林鴻便將余波之前做的過程重新做了一遍,重啟,然后進入靜默狀態,再重新恢復…

  一個新的文件便被生成了。

  林鴻使用編輯器將其打開,開始分析文本文件里面的內容。

  站在林鴻身后,想看他好戲的余波頓時有些傻眼了。

  也不知道林鴻是故意的還是怎的,他的動作非常快,寫代碼也感覺就像是心中早就編寫過無數次那樣,直接一溜煙地就編寫了過去,稍微修復了幾個由于疏忽而導致的錯誤之后,這個小工具便很快就寫完了。整個過程,用了不到三分鐘的時間。

  余波站在身后一直目不眨眼地盯著都沒有跟上他的步伐。雖然看懂了大概的意思,但是其細節卻是完全理解不了,不知道對方為什么這么編寫。

  而看到最終生成的那個文本文件,他更是傻眼,因為里面的內容按理說來,是根本訪問不到的,是系統層的內存數據。

  “這不可…”余波還想說什么,不過立刻有閉了嘴,因為事實擺在眼前,他再說不可能,那不是一句廢話么?

  林鴻將記錄迅速的看了一遍,最終點頭道:

  “果然如此。里面的確有一個隱藏的程序,接管了這個函數。”

  這個LOG文件中的記錄,非常明顯地顯示出,進入靜默狀態的時候,內存里面的函數棧有了比較明顯的變化,數據顯示一個新的函數被壓入了棧。

  棧是數據結構中一個比較特殊的數據結構,其特點就是“先進后出”,例如彈夾就是一個典型的棧結構,子彈裝進去的時候,先壓入,再彈出,最先裝入的是最后被射出。

  在程序中,函數里面的各個數據和變量,也是按照一定的順序,一個一個“壓入”,執行完畢之后,再一個一個“彈出”。

  要想監控函數的變化,就只要監控指定位置的那個棧結構就行了。林鴻從內存中DUMP出來的數據,就是棧里面的東西。

  這個結果,在場的其他三人臉色都有些變了。

  這意味著,林鴻所說的話是正確的,系統底層的確有一個隱藏的程序在秘密活動,而他們之前對此卻毫不知情。

  徐直中還好,已經有了心理準備,曹興平卻是臉色變得極其難看。

  “那為什么在剛開始啟動的時候沒有這個問題,而進入靜默狀態才會出現?”

  這個時候,余波突然chā言問道,他這個時候,已經沒有心思去膈應林鴻了。

  “這是因為在系統啟動的時候,你們的這個殼程序優先啟動,然后對方才啟動,這樣就根本沒有受到它的影響,兩者相安無事。但是進入靜默狀態的時候,殼程序會要關閉,再次啟動的時候,那個隱藏程序已經完全接管了整個函數接口,可能是對方在這一塊沒有處理好,導致兩者產生了沖突,殼程序調用的那個函數沒有能夠返回有效的數值,而你們恰好又沒有對這個返回值進行判斷處理,最終導致了整個殼程序的崩潰。”(。。)

黑龍小說

上一章
書頁
下一章