第470章 棋逢敵手

溢位,顧名思義,就是容器已經滿了,東西從裡面跑了出來。

在計算機領域中,溢位通常指的是記憶體中的棧結構溢位。棧是記憶體中一個類似於瓶子的資料結構,裡面按照先進後出的規則儲存各種變數和指令。

正常的程式碼,在棧滿了的時候,就會進行判斷,然後進行相應處理,不會在其滿了之後,還繼續向其中壓入資料,而是會停止壓入,或者清空棧裡面的資料,再繼續壓入。

而很多程式設計師在編寫程式的時候,往往會對這一步進行忽略,或者忘記了對這一步進行檢查。

大家都知道溢位的危害,但是還是存在著很多這樣的例子,原因就在於這個過程是程式設計函式自動進行的,例如c語言,只要程式設計師自己編寫一個函式,那麼肯定就會有一個棧結構被建立起來,這個函式里面的變數和資料全部壓入這個棧中,然後再按照執行的順序,一步一步彈出。

函式是程式中必然會用到的,並且是大量用到,也就是說,棧這個結構也是隨處可見,可是要是不對其中的邊界條件做嚴格的檢查的話,很有可能就會產生溢位漏洞,尤其是一些涉及到操作核心資料的函式。

林鴻對這種漏洞的利用簡直是得心應手,當初他破解德州儀器的計算器的時候,使用的方式就是緩衝區溢位破解,成功讓計算器的一個緩衝器溢位,然後執行他的破解程式碼。

而這一次,他想要做的事情也是一樣,既然已經發現了這樣的溢位可能,他接下來要做的,便是想辦法將自己的程式碼插入進去,然後通過溢位的方式,執行自己的未授權程式碼。

這種方式,有點像是給一個瓶子不停地壓入東西,然後再對方滿了的時候,另外在瓶口處接一個彎彎的管子,將資料流引導從自己的管子裡過一遍,然後再將資料流引回瓶中。

lx有個好處,很多東西都可以以外掛的形式進行安裝,為了能夠讓apache執行起來,林鴻直接將相容unix的檔案系統掛載進來,然後再將和藍軍相同的版本的apache安裝在本地,再使用除錯工具進行跟蹤除錯。

這是一個細緻活,從除錯工具中所看到的內容,都是十六進位制的機器碼,要想讀懂其中的關鍵程式碼,必須對彙編和機器碼相當熟悉。

林鴻有針對性地對這個溢位漏洞進行除錯,相對來說進展還是很快的,一步一步接近他想要得到的結果。

林鴻在除錯程式碼的時候,其他人也沒閒著。

劉輝繼續對藍軍的目標進行洪水攻擊,不但自己的機器上安裝了這個軟體,他還給其他幾臺執行wdows系統的機器也安裝了這個軟體,增加一下攻擊的力度。

可惜的是,他的這個方法,實在是過於簡陋了點。持續使用相同的機器進行攻擊,對方很容易將其ip加入過濾黑名單,對他的所有偽造請求都不語響應,這樣的話,他所做的只能是無用功。

並且,林鴻大概瞭解了一下他所使用的軟體,他的大資料洪水攻擊,實在是過於原始了,這麼點機器攻擊,效果肯定不佳。

真正想要達到讓對方拒絕服務的效果,必須使用ddos,也就是分散式拒絕服務攻擊,使用成百上千臺機器同時對目標進行資料風暴轟炸,這樣,對方無法識別正確的ip來源,才能夠有一些效果。

此外,洪水攻擊實際上也是有很多種的,劉輝所使用的這種,是最基本最簡單的一種,是單純的syn洪水,也就是在第一次握手的時候就是個虛假的申請,沒有有效的源地址。

這種情況,有點類似於,突然有個人打個電話過來結束通話,當伺服器端回撥過去的時候,卻發現對方的電話號碼根本不存在。

而偏偏伺服器端的腦子並不是很聰明,或者說,涉及他的人暫時沒有考慮到這一點,於是他便真的以為是有人打電話給他,於是拿著電話一直不掛,等著對方接聽。而他本身同時只能接聽一定數量的電話,當這樣的人數一多,他所有的電話都給拿了起來,別人便打不進來了,相當於他拒絕服務了。

劉輝的軟體所實現的功能,就是這個偽造打電話的過程。

這個原理是正確的,但是在現在這種場合中卻並不適合使用,幾個電話號碼而已,只要伺服器端的管理員跟他說,這幾個號碼是假的,別管他,就能避免拒絕服務的情況出現。

劉輝自己也應該知道這個情況,但是他也沒辦法,他能夠做的事情有限,對方使用的系統,大部分都是非wdows系列的,他根本沒有用武之地,只能通過這個方式來凸顯自己的存在和重要性。

小蔣已經將自己的系統也配置完畢,他現在開始執行錢隊長交給他的任務,將藍軍那邊的網路拓撲結構給繪製出來,好讓大家有個參考。

網路拓撲結構,其實就是電腦的連線方式,看看對方的電腦,到底是星形連線,還是環形,亦或者是交叉連線。

每一臺電腦,可以看做是一個點,中間的網線就是一條連線的線段,這樣將整個結構抽象出來,便形成了網路的拓撲結構。

要想探知這個結構,可以去實地檢視,當然也可以通過技術手段來實現。

其原理,就是跟蹤資料流動的節點路徑,通過其返回的資料,便可以將整個結構給推斷出來。

作者「瘋狂小強」的其他小說

修仙高手再戰都市