當前位置:
首頁 > 最新 > 網站和 Web 應用攻擊

網站和 Web 應用攻擊

一次性進群,長期免費索取教程,沒有付費教程。

教程列表見微信公眾號底部菜單

微信公眾號:計算機與網路安全

提供內容和基於網路的服務(例如,電子郵件和FTP)的網站是普遍存在的,並且大多數組織允許遠程訪問這些服務和幾乎所有可用內容。然而,對於滲透測試者和攻擊者,網站暴露了在網路上的後端服務、訪問網站的用戶客戶端的活動,以及用戶和該網站之間連接數據的頻繁攻擊。

一、對網站進行偵察

網站(提供服務的網站)是特別複雜的。通常情況下,交付給最終用戶的服務使用的是多層架構的Web伺服器,這些伺服器面向互聯網的公眾開放,同時與後端伺服器和位於網路上的資料庫進行通信。

在測試過程中,必須考慮由複雜度引起的幾個額外因素,其中包括以下內容:

網路體系結構,包括安全控制(防火牆、IDS/IPS和蜜罐)和配置,諸如負載均衡。

主機網路服務系統的平台架構(硬體、操作系統和附加應用程序)。

應用、中間件和終極資料庫,它們可能採用不同的平台(UNIX或Windows)、供應商、編程語言,以及商業和專用軟體的組合。

認證和授權過程,包括在應用程序中保持會話狀態的過程。

管理應用程序的基本業務邏輯。

客戶端與網路服務的交互與通信。

鑒於網路服務的複雜性,適應每個網站的特殊架構和服務參數,對滲透測試者是非常重要的。同時,測試過程必須持續且確保沒有遺漏,當前已經提出了幾種方法可以實現這些目標。最廣泛接受的是開放Web應用安全項目(Open Web Application Security Project,OWASP)(www.owasp.org),它列出了10大漏洞。

作為一個最低標準,OWASP向測試人員提供了一種強有力的方向。然而,只專註於前10個漏洞顯然不具有前瞻性,並且該方法已經展示了一些缺口,特別是用該方法去尋找應用程序如何支撐商業活動的邏輯漏洞時。

在使用「殺鏈」方法時,針對一些特定於網路服務偵察的活動,需要強調以下幾點內容:

確定目標站點,特別是關於在哪裡,以及它是如何託管的。

枚舉目標網站的目錄結構和文件,包括確定是否在用一個內容管理系統(Content Management System,CMS)。這可能包括下載網站做離線分析,如文檔的元數據分析,並利用網站創建一個自定義詞表(使用密碼破解程序,如crunch)。它還確保識別所有支持文件。

確定身份驗證和授權機制,並確定在與網路服務的交易中,如何維護會話的狀態。這通常包括對cookies的分析和它們是如何使用的。

枚舉所有的表格。這些是用戶輸入數據以及與Web服務進行交互的主要手段,這些都是一些可利用的漏洞的具體地點,如SQL注入攻擊、跨站腳本。

識別接受輸入的其他領域,如允許文件上傳的頁面,以及可接受的上傳文件類型的任何限制。

標識如何處理錯誤,並且由用戶接收的實際的錯誤消息;往往該錯誤將提供有價值的內部信息,如使用軟體的版本或內部的文件名和進程。

確定哪些頁面需要和保持安全套接字層協議或其他安全協議。

首先進行往期文章所述的《滲透測試之被動偵察》和《滲透測試之主動偵察和漏洞掃描》;尤其確保識別託管的網站,然後使用DNS映射來標識由相同的伺服器提供服務的主機位置(攻擊最常見和最成功的方法之一,是攻擊位於目標伺服器同一物理位置的非目標主機網站,利用伺服器的弱點來獲得root許可權,然後使用特權升級攻擊目標網站)。

其次確定存在的基於網路的防護設備,如防火牆、IDS/IPS和蜜罐技術。一個越來越普遍的保護裝置是Web應用防火牆(Web Application Firewall,WAF)。

如果正在使用WAF,測試人員必須通過編碼來確保繞過WAF,尤其是那些依賴於手工輸入的攻擊。

WAF可以通過手動檢查cookie(一些WAF標籤或修改cookie,涉及Web伺服器和客戶端之間的通信),或者通過改變報頭信息來識別(當一個測試者使用命令行工具連接到埠80時,會被識別)。

WAF檢測過程中,可以自動使用nmap的腳本,http-waf-detect.nse,如下圖所示。

WAF檢測過程

nmap腳本識別一個WAF的存在。然而,腳本測試已經表明,它並不總是得到準確的結果,返回的數據可能過於籠統,以致不能引導一個有效策略來繞過防火牆。

wafw00f腳本是一個自動化的工具,可以識別和提取基於網路的防火牆指紋;試驗已確定它是用於此目的最準確的工具。該腳本很容易從Kali調用,一個樣本的輸出如下圖所示。

wafw00f腳本檢測

負載均衡器(Load Balancing Detector,LBD)是一個bash shell腳本,確定一個給定的域是否使用DNS或HTTP負載均衡。這是從測試者的角度得到的很重要的信息,因為當測試了一個伺服器,它可以解釋看似反常的結果,然後負載均衡器開關要求不同的伺服器。lbd採用多種檢查來識別負載均衡的存在。一個樣本的輸出如下圖所示。

使用lbd

該網站應進行檢查以確定可用於建立和維護它的CMS。CMS應用程序包括Drupal、Joomla和WordPress等,其中,使用威脅管理界面,可以配置一個訪問來提升許可權,或訪問可能含有可利用的漏洞。

Kali包括一台名為BlindElephant的自動掃描儀,用來提取CMS指紋以確定版本信息。樣本輸出如下圖所示。

使用BlindElephant

BlindElephant回顧了CMS組件的指紋圖譜,然後為目前所存在的版本提供了一個最好的猜測。然而,像其他的應用,我們已經發現它可能無法檢測CMS;因此,總是需要驗證其他掃描結果,針對為特定的目錄和文件抓取網站的其他掃描儀內容,或手動檢查站點。

一個特定的掃描工具,如自動化網路爬蟲,可用來驗證已收集的信息,以及確定特定網站的現有的目錄和文件結構。網路爬蟲的典型表現包括管理門戶、配置文件(當前及以前的版本),可能包含內部硬編碼訪問憑據、內部結構信息、網站的備份副本、管理員筆記、機密的個人信息和源代碼。

卡利支持多種網路爬蟲,包括Burp Suite、DirBuster、OWASP-ZAP、Vega、WebScarab和WebSlayer。最常用的工具是DirBuster。

DirBuster是圖形用戶界面驅動的,使用可能的目錄和文件列表,對網站的結構進行蠻力分析的應用程序。可以在一個表或樹中查看響應,並且能準確地反映網站的結構。針對目標網站執行該程序的輸出如下圖所示。

使用DirBuster強力分析網站結構

另外,也可以直接複製一個網站到測試者的位置。這個「克隆網站」允許測試人員輕鬆審查本地文件目錄結構及其內容,提取元數據,並使用該網站的內容作為程序的輸入,如crunch,這將產生一個個性化的詞庫來支持密碼破解。

要克隆一個網站到本地系統,可使用HTTrack。如果它不在Kali中,可以使用apt-get命令下載,在命令提示符下輸入httrack並按回車鍵。系統將提示選擇存儲下載網站的目錄位置。一旦運行程序,你將有目標網站的備份。

如果你已經映射網站或網路服務的基本結構,那麼殺鏈的下一個階段就是確定可被利用的漏洞。

二、漏洞掃描器

使用自動化工具掃描漏洞可能會產生問題。網路漏洞掃描器具有所有掃描器的共同缺點(掃描器只能檢測已知漏洞的簽名,它們不能確定一個漏洞實際上是否還可以被利用;還有就是假陽性的報告發病率很高)。此外,網頁漏洞掃描器不能識別業務邏輯的複雜錯誤,它們沒有準確地模擬黑客所使用的複雜鏈接攻擊。

在努力提高可靠性方面,許多滲透測試者使用多種工具掃描Web服務;當多個工具同時報告可能存在一個特定的漏洞,這樣的共識將直接驅使測試者手動驗證漏洞是否存在。

Kali針對Web服務配有大量漏洞掃描器,並為安裝新的掃描儀和擴展其能力提供了一個穩定平台。這就允許滲透測試人員通過選擇掃描工具來提高測試的有效性:

最大限度的完整性(漏洞發現的總數)和測試精度(這是真實的,沒有假陽性結果的漏洞)。

盡量減少所需的時間,以獲得可用的結果。

盡量減少對被測試網路服務的負面影響。這包括由於流量的增加而使系統反應變慢。例如,最常見的負面影響之一是測試結果的形式,輸入數據到資料庫,然後通過電子郵件發送,一個人提供了一個已經發生更新變化的系統,不受控制的測試結果形式,可以導致發送超過30000封電子郵件!

選擇最有效的工具是非常複雜的。除了已經列出的因素,一些漏洞掃描器也具有相應的漏洞利用和支持後期漏洞活動的功能。對於我們而言,我們會考慮所有工具,掃描可利用的弱點是「漏洞掃描」。Kali提供幾種不同的漏洞掃描器,主要如下:

掃描器擴展了傳統的漏洞掃描程序的功能,包括網站和關聯服務(Metasploit框架和Websploit)。

掃描器拓展了非傳統的功能應用,如Web瀏覽器,支持Web服務漏洞掃描(OWASP Mantra)。

掃描器是專門開發用於支持對網站和網頁服務的偵察和利用檢測(Arachnid、Nikto、Skipfish、Vega、w3af等)。

(一)擴展傳統漏洞掃描器功能

這種類型的漏洞掃描器的最好例子是wmap模塊,與Rapid7的Metasploit框架封裝在一起。使用這個模塊,首先你必須確保PostgreSQL資料庫服務已啟動,命令如下:

其次,從命令提示符啟動msfconsole,並輸入load wmap命令。像大多數框架應用程序一樣,在命令提示符下輸入help或-h,將顯示可供使用的命令。

要管理目標網站,使用wmap_sites命令。-a選項將嚮應用程序的資料庫中添加目標的IP地址。-1選項提供一個對目標網站測試可用的位置列表,如下圖所示。

使用wmap_sites命令

通過選擇目標,測試人員現在能夠使用下面的命令運行wmap模塊:

下圖顯示上述命令的執行結果。

使用wmap_run–e命令

執行此命令,可能需要一些時間來完成(這取決於網站中的頁面數,網站的結構複雜性,以及檢測安全漏洞的模塊操作方式)。

Metasploit框架並不是為複雜的網站和Web服務設計的。本產品與專為網站和Web服務設計的漏洞掃描器相比,結果數量受到了限制。然而,因為它總是處於更新,所以值得監測其掃描能力的變化。

該Websploit應用程序也使用wmap模塊。

(二)擴展Web瀏覽器功能

Web瀏覽器是為與網路服務交互而設計的。它們被選擇作為易受到攻擊評估和利用的工具是自然而然的事。

這種類型的工具的最好的例子是OWASP的Mantra,一個基於Firefox瀏覽器上的第三方安全實用程序的集合。OWASP的Mantra支持Windows、Linux和Macintosh的測試系統,並提供了支持以下活動的實用訪問:

信息採集(information gathering):這些工具提供被動偵察,報告目標的物理位置,揭露底層的站點技術和搜索網站的超鏈接測試。

編輯器(editors):實用編輯程序的集合,編輯、調試、監控HTML、CSS和JavaScript。

代理(proxy):提供代理管理工具,包括FoxyProxy,一個便於在代理之間來回切換的工具。

網路實用工具(network utilities):這些工具為客戶提供FTP和SSH通信,並簡化DNS緩存管理。

應用審計(application auditing):各種用戶代理之間的切換,訪問Web開發工具,控制每個站點的HTTP連接發送,發現SQL注入,XSS漏洞,允許測試人員篡改數據,以及訪問Websecurify工具。

其他(miscellaneous):生成腳本,會話管理和下載,以及訪問加密、解密和散列標籤功能。

該Mantra框架可用於促進對網站的半自動化偵察。

在下圖中,Mutillidae登錄頁面已在Mantra瀏覽器中打開。使用下拉菜單(右上角激活藍色標識)時,SQL注入Me應用的申請——已選自可用的工具中,並顯示在左側面板。

使用Mantra打開Mutillidae登錄頁面

(三)具體網路服務的漏洞掃描器

漏洞掃描器是自動運行的應用程序,也是確定已知漏洞簽名的工具。

Kali附帶了幾個預安裝的漏洞掃描器;可以通過導航訪問依次選擇Kali Linux|Web Applications|Web Vulnerability。滲透測試者通常會使用兩個或三個全面掃描儀對同一目標掃描,以確保有效的結果。需要注意的是一些漏洞掃描器也包括攻擊的功能。

漏洞掃描器是很「嘈雜」的,並且通常是由受害人檢測。然而,作為常規的跨互聯網背景探索的一部分,掃描經常被忽略。事實上,一些攻擊者已經知道通過發動大規模掃描,針對目標作偽裝真實的攻擊,或者誘使防護者禁用檢測系統,以減少他們必須管理的報告的數量。

下表為最重要的漏洞掃描器的快速回顧。

重要漏洞掃描器

大多數測試者開始測試一個網站時都使用Nikto,這是一個簡單的掃描器(特別是有關結果報告),通常提供準確但有限的結果。這種掃描的一個樣本輸出顯示如下圖所示。

使用Nikto測試網站

下一步是使用更先進的掃描器掃描大量的漏洞;相對來說,它們可能需要更長的時間來完成。複雜的漏洞掃描是不尋常的(如確定被掃描的網頁的數目,也就是網站的複雜性,可能包含多種頁面,允許用戶輸入,如搜索功能或表單,從用戶的後台資料庫收集數據),需要數天才能完成。

一種基於驗證發現漏洞數量的、最有效的掃描器是Subgraph Vega。如下圖所示,它會掃描目標,並將漏洞分級為高、中、低或信息。為了得到特別的結果,該測試儀能夠點擊確定結果為「drill down」(深入)。該測試儀還可以修改搜索模塊,這是用Java編寫的,專註於特定的漏洞或找出新的安全漏洞。

使用Subgraph Vega發現漏洞

另外值得使用的掃描器是Web應用程序攻擊和審計框架(Web Application Attack and Audit Framework,w3af),一個基於Python的開源Web應用程序安全掃描器。它提供預配置的漏洞掃描,以支持諸如OWASP標準。使用掃描器的過多選項是有代價的,它需要的時間明顯長於其他掃描器審查目標的時間,並且在很長的測試時間中,很容易出現故障。配置為樣本網站的完整審計w3af實例,如下圖所示。

使用w3af審計

Kali還包括一些特殊應用的漏洞掃描器。例如,WPScan是專門用於WordPress CMS應用的。

三、使用客戶端代理測試安全性

不同於自動漏洞掃描器,客戶端代理為了增加有效性,需要大量人工交互。一個客戶端代理攔截HTTP和HTTPS流量,允許漏洞測試者檢查用戶和應用程序之間的通信。它允許測試者複製數據,或發送請求與應用進行交互。

Kali帶有幾個客戶端代理,包括Burp Suite、OWASP ZAP、Paros、ProxyStrike,漏洞掃描器Vega和WebScarab。經過廣泛測試,我們已經開始依賴Burp代理,將ZAP作為一個備份工具。

Burp主要用於攔截HTTP(S)流量;然而,這是一個更大的工具套件,具有幾個附加功能,其中包括的一部分如下:

應用感知蜘蛛用於爬行站點。

漏洞掃描器,包括序列發生器,以測試會話令牌的隨機性,並轉發操作和重新發送客戶端與網站之間的請求(Kali中打包的Burp代理的免費版不包含漏洞掃描程序中)。

入侵者的工具,可以用來發動自定義的攻擊(Kali中包含的免費版本的工具的速度會受到限制;如果你購買了軟體的商業版本,將不受這些限制)。

能夠編輯現有的插件或寫新的插件,以擴展可以使用的攻擊的數量和類型。

要使用Burp,確保你的Web瀏覽器配置為使用本地代理;通常情況下,你需要調整網路設置,來指定HTTP和HTTPS流量必須在本地主機(127.0.0.1)的埠8080使用。

設置瀏覽器和代理一起工作後,手動映射應用程序。通過關閉代理攔截,然後瀏覽整個應用程序可以完成這一步。按照每一個環節,遞交表格並登錄到該網站儘可能多的領域。從不同的響應,可以推斷出一些額外的內容。站點地圖將填充Target選項卡內的區域(自動爬行也可以使用滑鼠右鍵單擊該網站,並選擇Spider This Host;然而,手工技術給測試者提供了一個深入了解目標的機會,並且它可以識別要避免的區域)。

一旦目標被映射,通過選擇站點地圖中的分支來定義目標–範圍,並使用Add to Scope命令。一旦完成,你可以使用顯示過濾器隱藏在站點地圖上不感興趣的項目。目標網站創建的站點地圖如下圖所示。

目標網站創建的站點地圖

一旦爬蟲任務完成,人工檢查的目錄和文件列表不是公共網站的一部分,或無意中公開出現的任何結構,例如,目錄名為管理、備份、文檔,或筆記,都應進行人工審查。

手動測試使用單引號作為輸入產生錯誤代碼的提示,它可能是一個容易受到SQL注入攻擊的登錄頁面,錯誤代碼的樣本返回顯示,如下圖所示。

返回錯誤信息

代理的真正實力在於它截獲並修改命令的能力。在這個特殊的例子中,我們將使用Mutillidae網站(一個安裝為Metasploitable測試框架的一部分的「破碎」站點,以繞過SQL注入的認證)。

要發動這種攻擊,確保Burp代理配置攔截通信,轉到Proxy標籤,再選擇Intercept(攔截)子選項卡。點擊Intercept is on按鈕,如下圖所示。準備工作完成後,打開瀏覽器窗口,並通過輸入/mutillidae/index.php?page=login.php,訪問Mutillidae登錄頁。輸入用戶名和密碼,然後點擊登錄按鈕。

Burp攔截的信息

如果你返回Burp代理,將會看到該用戶輸入到網頁上的表格中的信息被截獲。

單擊Action按鈕,並選擇Send to Intruder(發送到入侵者)選項。打開主Intruder選項卡,你會看到4個子項:Target、Positions、Payloads和Options,如下圖所示。如果選擇Positions,你會看到來自截獲的信息的5個有效載荷的位置。

Intruder選項卡

這種攻擊將使用Burp代理的狙擊手模式,同時,從由測試儀提供的列表中選取單一輸入表單,同時,發送該輸入到一個單一的有效載荷位置。在這個例子中,我們的目標是用戶名欄位,它是我們基於返回的錯誤信息懷疑的漏洞所在。

定義有效載荷的位置,我們選擇子標籤的Payloads選項,如下圖所示。

選擇Payloads選項

為了發動攻擊,從頂部的菜單選擇Intruder,然後選擇Start Attack。代理將遍歷單詞表,對選定的有效載荷位置作為合法的HTTP請求,它將返回伺服器的狀態代碼。正如你可以在下圖中看到的,大多數選項生產200(請求成功)的狀態代碼;然而,一些數據返回的是302(請求找到;表明所請求的資源目前位於不同的URI下)的狀態代碼。

攻擊返回的狀態代碼

出現302狀態表示攻擊成功,並且所獲得的數據可以用來成功登錄到目標位置。

不幸的是,對Burp代理及其功能的概述實在太簡單。Kali中的免費版Burp可以滿足許多測試任務;然而,嚴謹的測試者(和攻擊者)應該考慮購買商業版本。

四、伺服器漏洞

因為伺服器有廣泛的「受攻擊面」(通信信道、客戶端軟體、伺服器操作系統、應用程序、中間件和後台資料庫),Web服務很容易受到多種攻擊類型的威脅。本書不講述所有可能的攻擊範圍,我們只展示突出Kali能力的幾個類型。

在這個例子中,我們將演示Kali如何發動針對網路伺服器的拒絕服務(DoS)攻擊。

在一般情況下,攻擊提供Web服務的主機系統的操作系統,應遵循之前描述的方法;然而,它們的結構特別容易受到DoS攻擊。

Kali包含幾個稱為應力測試的應用工具,因為它們模擬伺服器的高活性負載,評估它如何應付額外的壓力。如果伺服器或它的應用程序失效,那麼它就遭受了DoS攻擊。

因為許多工具依賴於IPv4的系統,所以無法處理新的IPv6協議(denail6、dos-new-ip6、flood_advertise6,等等)。

然而,最成功的DoS攻擊工具——低軌道離子炮(Low Orbit Ion Cannon,LOIC),必須使用以下步驟手動添加到Kali:

1、使用apt-get install命令,安裝後面的軟體包及其依賴環境:mono-gmcs、mono-mcs、monodevelop和liblog4netcil-dev。

2、從GitHub下載LOIC(https://github.com/NewEraCracker//downloads)到一個單獨的文件夾。使用unzip命令解壓文件。

3、導航到該文件夾,使用下面的命令編譯應用程序:

4、編譯好的應用程序位於/

bin/Debug/LOIC.exe目錄。

一旦輸入攻擊參數,LOIC就可以對目標網站發動攻擊。這種攻擊使用直觀的GUI界面啟動,如下圖所示。

DoS攻擊工具LOIC

五、針對特定應用的攻擊

針對特定應用的攻擊,多於針對特定操作系統的攻擊;當人們考慮到錯誤配置、漏洞和邏輯錯誤可能影響到每個在線的應用時,這是令人驚訝的,任何應用程序都可以被認為是「安全的」。我們將重點介紹一些對Web服務的更重要的攻擊。

(一)暴力破解訪問證書

一個對網站或其服務最常見的初始攻擊,是針對接入認證猜測的用戶名和密碼窮舉攻擊。這種攻擊有很高的成功率,因為用戶往往選擇容易記住的憑據或重用憑據,並且系統管理員經常不控制多路訪問嘗試。

Kali配備了hydra(一個命令行工具)和hydra-GTK(它有一個GUI界面)。這兩種工具允許測試人員蠻力或重用可能的用戶名和密碼,以攻擊特定的服務。多種通信協議支持該應用,包括FTP、FTPS、HTTP、HTTPS、ICQ、IRC、LDAP、MySQL、Oracle、POP3、pcAnywhere、SNMP、SSH、VNC,等等。hydra使用蠻力攻擊判定的HTTP頁面訪問證書,如下圖所示。

使用hydra進行攻擊

(二)資料庫注入攻擊

網站最常見並且可利用的漏洞是注入漏洞,當受害者網站不監控用戶輸入,允許攻擊者與後台系統進行交互時,將發生注入攻擊。攻擊者可以通過精心設計的輸入數據以修改或從資料庫竊取內容,將一個可執行軟體放到伺服器上,或發出指令給操作系統。

其中,評估SQL注入漏洞最有用的工具是一個sqlmap,它是一個Python工具,可以自動開啟Firebird、MicrosoftSQL、MySQL、Oracle、PostgreSQL、Sybase、SAP MaxDB資料庫的偵測和利用。

我們將展示針對Mutillidae資料庫的SQL注入攻擊。第一步是確定Web伺服器,後台資料庫管理系統和可用的資料庫。

啟動Metasploitable虛擬機,並訪問Mutillidae網站。完成後,查看網頁以確定一個接受用戶輸入的頁面(即接收用戶名和密碼的頁面,例如,遠程用戶登錄的表單);這些頁面可能容易受到SQL注入攻擊。然後打開Kali,並在命令提示符下輸入以下內容(使用相應的目標IP地址):

sqlmap返回的數據如下圖所示。

使用sqlmap返回數據

最有可能用來存儲應用程序的數據的資料庫是owasp10資料庫,因此,我們將使用以下命令檢查資料庫的所有表項:

執行上述命令後返回的數據如下圖所示。

顯示owasp10資料庫表項

被列舉的6個表中,一個的標題是accounts。我們將試圖從該部分表中轉儲數據。如果成功,該賬號憑據也將使我們返回資料庫,即使進一步的SQL注入攻擊失敗。為了轉儲憑據,請使用以下命令:

類似的攻擊可以用於從資料庫中提取信用卡號碼。

執行上述命令

六、使用網站後門維持訪問

一旦入侵一台Web伺服器及其服務,最重要的任務就是確保可以維持安全訪問。這通常藉助於一個網路外殼小程序來提供隱身後門進入,並允許使用系統命令,以方便進行後期利用活動。

Kali附帶了幾個Web Shell。在這裡,我們將使用流行的PHP網路外殼小程序Weevely。

Weevely模擬一個遠程會話,並允許測試者或攻擊者利用超過30個模塊進行後期開發利用,包括以下優勢:

瀏覽目標文件系統。

從受感染的系統進行文件傳輸。

對執行審計的通用伺服器配置錯誤。

通過目標系統暴力破解SQL賬戶。

產生逆向TCP外殼。

在已被侵入的遠程系統上執行命令,即使已應用PHP的安全性限制。

最後,Weevely努力隱藏HTTP cookies以逃避偵察。要創建Weevely,從命令提示符下輸入以下命令:

這將在根目錄下創建文件weevely.php。在已被侵入的遠程系統上執行命令,即使已應用PHP的安全性限制;執行weevely的結果如下圖所示。

執行Weevely的結果

使用文件上傳漏洞或其他任何入侵點,包括提供訪問meterpreter進行文件上傳的功能,上傳weevely.php到被感染的網站。

要與網路外殼進行通信,從命令提示符輸入以下命令,以確保目標的地址、目錄和密碼變數被改變,以反映出那些被感染的系統:

在下圖所示的例子中,我們已經證實,使用whoami命令(標識正確的目錄)連接到了網路外殼,使用ls命令來獲取一個文件列表(這再次證實了源網路外殼連接到了weevely.php)。用cat/etc/password命令來查看密碼。

執行whoami、ls等命令

網路外殼也可以用來建立一個反向外殼,連接返回到測試器,使用任一Netcat的或Metasploit的框架作為本地偵聽器。

七、結語

我們研究了網站以及服務,提供了從攻擊者的角度來看授權用戶的服務。我們以殺鏈的角度來看Web服務,目的是了解偵察和漏洞掃描的正確應用。

我們展現了幾種不同的漏洞掃描器;專註於製作和使用修改現有的掃描器,以支持網站和網路服務評估,使用基於瀏覽器的漏洞掃描器,並且它們是專門設計來評估網站及其服務的漏洞掃描器。只對少數漏洞進行了回顧,最後介紹了一種專門針對網路服務的網路外殼的檢查。

微信公眾號:計算機與網路安全

【推薦書籍】


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 計算機與網路安全 的精彩文章:

古代情報工作淺析

TAG:計算機與網路安全 |