入門網(wǎng)絡(luò)安全:黑客要攻下一臺計算機,一般怎么做?

鄭重聲明:本文僅供技術(shù)交流,切勿拿去做違法事情

很多剛剛?cè)腴T安全的同學(xué)可能比較好奇:黑客到底是如何攻破一個目標(biāo)的呢?

這個目標(biāo)可能是一個網(wǎng)站,也可能是一臺個人電腦,還可能是一部智能手機。

這篇文章就來跟大家簡單聊聊這個問題。

網(wǎng)絡(luò)攻擊其實是一種電子信息戰(zhàn)爭,看不見摸不著,卻實實在在發(fā)生了。

圖片

打一場戰(zhàn)爭之前最重要的就是情報收集,所謂知己知彼才能百戰(zhàn)百勝,沒有情報就是瞎搞。

網(wǎng)絡(luò)攻擊也一樣,第一步也是情報收集。

端口掃描

發(fā)起網(wǎng)絡(luò)攻擊之前,黑客通常會進行端口掃描,檢測目標(biāo)上開啟了哪些服務(wù)。

端口,在計算機網(wǎng)絡(luò)協(xié)議中,是位于傳輸層的一個概念,當(dāng)計算機上多個不同的進程都在通信的時候,用端口號來區(qū)分它們。

端口是一個16位的整數(shù),總共是65535個端口。

端口掃描的原理,就是依次嘗試向服務(wù)器的六萬多個端口發(fā)送探測數(shù)據(jù)包,觀察目標(biāo)的反應(yīng)。以TCP為例,如果發(fā)送一個TCP的握手包過去,目標(biāo)返回了第二次握手信息SYN+ACK,則說明在這個端口上,有一個TCP服務(wù)存在。

圖片
圖片

不過,現(xiàn)在的防火墻對于基本的端口掃描行為都能檢測到,如果發(fā)現(xiàn)同一個IP地址短時間內(nèi)嘗試連接大量端口,則很快會被拉入黑名單,導(dǎo)致端口掃描行為無法再進行下去。

所以端口掃描還會更換IP,更換掃描頻率,變的更難識別。

程序識別

掃描到這些端口后有什么用呢?是用來進行下一步:程序識別。

  • 如果發(fā)現(xiàn)了80端口,背后可能是一個web服務(wù)器。
  • 如果發(fā)現(xiàn)了53端口,背后可能是一個DNS服務(wù)器。
  • 如果發(fā)現(xiàn)了3389端口,背后可能是一個開放了遠(yuǎn)程桌面連接的Windows機器。
  • 如果發(fā)現(xiàn)了3306端口,背后可能是一個MySQL服務(wù)器。
  • 如果發(fā)現(xiàn)了6379端口,背后可能是一個Redis服務(wù)器。
  • 如果發(fā)現(xiàn)了9200服務(wù)器,背后可能是一個ElasticSearch服務(wù)器。
  • ···

再進一步,還能識別程序的種類、版本等。

以80端口為例,通過繼續(xù)發(fā)送HTTP數(shù)據(jù)包,從服務(wù)器的響應(yīng)中,根據(jù)Server字段,還能知道這個web服務(wù)器是一個nginx,還是一個Apache或者其他。

甚至通過有些服務(wù),我們還能知道背后是一個Windows還是一個Linux還是一個Android,如果是Linux,內(nèi)核版本信息也能知道。

端口掃描+程序識別的過程,這些操作已經(jīng)非常成熟,甚至都不用再自己編程或用工具去探測了。直接用Shodan或者ZoomEye,輸入IP地址,就能幫我們列出這個IP背后的信息,省去了不少功夫。

圖片

漏洞攻擊

識別了程序,接下來關(guān)鍵的來了:漏洞攻擊。

像nginx、tomcat、redis、mysql等等這些著名的開源軟件,基本上每年都有不少的漏洞被曝光出來,而許多網(wǎng)站的運營管理人員安全意識并沒有那么強,不會經(jīng)常去打補丁升級,就會導(dǎo)致這些對外提供服務(wù)的機器上留存有不少的漏洞。

圖片

黑客通常都會有一個漏洞武器庫,每個軟件有哪些漏洞他們都清清楚楚,針對每個漏洞還開發(fā)了對應(yīng)的攻擊武器。

此時,黑客可以針對發(fā)現(xiàn)的服務(wù)器,編寫一個漏洞利用程序,進行遠(yuǎn)程攻擊,從而讓遠(yuǎn)程服務(wù)器執(zhí)行自己的代碼。

這其中最為人熟知的應(yīng)該就是web安全了,因為web服務(wù)占據(jù)了互聯(lián)網(wǎng)流量的比重實在太大,有太多的業(yè)務(wù)都是通過web來提供服務(wù),這就導(dǎo)致黑客把目標(biāo)聚焦在這一塊。

web服務(wù)器后端,一般是C++、Java、PHP、Python這些語言開發(fā)的程序,這些語言所攜帶的庫和框架都或多或少的存在這樣那樣的問題,通過向這些后端程序發(fā)送一系列精心構(gòu)造的請求,就可能讓后端服務(wù)淪陷。

權(quán)限提升

當(dāng)通過后端服務(wù)的漏洞成功入侵,攻擊者可以讓目標(biāo)服務(wù)器執(zhí)行自己的代碼。但通常來說,操作系統(tǒng)都有一些安全機制,常見的web、mysql、redis、nginx這些,它們也是在一些低權(quán)限的進程中運行,就算攻擊者攻破后端服務(wù),也是在這些低權(quán)限的進程中執(zhí)行代碼,很多事情都做不了。所以這個時候,攻擊者一般都需要做一件事:權(quán)限提升。

圖片

接著,他們再通過利用操作系統(tǒng)的一些漏洞,攻擊者可以讓自己的攻擊代碼逃脫低權(quán)限的進程,獲得高級權(quán)限,比如root權(quán)限執(zhí)行。

開始工作

到這個時候,你的服務(wù)器就真的危險了!為了能夠經(jīng)常登錄你的服務(wù)器,攻擊者還會留一些后門,還會添加一些新用戶,以便?;貋砜纯?。

如果是一個竊密軟件,它會偷偷把你的重要文件給傳輸出去。

如果是一個搞破壞的,它還會篡改數(shù)據(jù),黑掉網(wǎng)站。

如果是一個勒索病毒,它還會加密你的文件。

如果是一個挖礦病毒,那你的CPU和GPU就要辛苦了。

還有些高級攻擊的木馬,并不會立刻對你的計算機做什么破壞,而是潛伏起來,躲在某個角落等待被喚醒。

安全防御

以上,就是黑客從信息搜集到最后拿下服務(wù)器的全過程。清楚了敵人的路數(shù),咱們才好對癥下藥,做到下面幾件事,防患于未然:

  • 防火墻記得開啟,并關(guān)閉不需要的端口
  • web服務(wù)server字段不要泄露任何關(guān)于軟件的信息
  • 軟件即時打補丁
  • 重要數(shù)據(jù)定時備份
  • 使用監(jiān)控軟件監(jiān)控服務(wù)器CPU、內(nèi)存的變化,有異常及時告警

看完這篇文章,你有什么收獲嗎,歡迎轉(zhuǎn)發(fā)分享哦~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容