<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    BeEF 構架

    構架

    架構圖

    文件組織

    下面描述的所有相對文件路徑均來自Beef的根文件夾。

    對于Kali Linux存儲庫安裝,路徑為/usr/share/beef-xss。請注意,它不是最新的beef版本,因此對于新功能和修復。

    SQLite數據庫

    beef.db -beef使用的SQLite數據庫文件

    在kali安裝中,它在 /usr/share/beef-xss/db/beef.db

    配置文件

    config.yaml是beef的全局配置文件。在kali安裝中,它在/etc/beef-xss/config.yaml

    模組

    模塊定義了用于控制掛鉤的瀏覽器的附加功能。

    模塊存儲在modules/文件夾中,如下所示:

    modules/<category>/<module_name>/

    文件夾和文件名的命名約定均為小寫

    每個模塊文件夾中存儲3個文件:

    文件 目的
    config.yaml 模塊信息和配置
    command.js 在瀏覽器中執行的javascript
    module.rb 后端ruby 類定義

    擴展名

    擴展更改/擴展了BeEF的行為方式。

    文件存儲在extensions/文件夾中,如下所示: extensions/<name>/

    存儲在每個擴展文件夾中的文件:

    文件 目的 必要
    extension.rb 必要,為擴展定義類 *
    config.yaml 擴展信息和配置 *

    擴展可以掛鉤(并掛載)REST API中的路徑。它們被安裝在相對于Beef服務器根目錄的路徑上,例如,以下從extensions/admin_ui/api/handler.rb鉤子中提取的代碼鉤住了一個縮小的靜態Javascript文件:

    config = BeEF::Core::Configuration.instance
    bp = config.get "beef.extension.admin_ui.base_path"
    
    auth_js_file = File.read(File.dirname(__FILE__)+'/../media/javascript/ui/authentication.js') + "\n\n"
    web_ui_auth = self.evaluate_and_minify(auth_js_file, params, 'web_ui_auth')
    
    beef_server.mount("#{bp}/web_ui_auth.js", Rack::File.new(web_ui_auth))

    REST API

    REST API是與BeEF核心進行交互的主要方式,可通過管理UI和常規HTTP請求(例如使用curl)使用

    文件存儲在中core/main/rest

    core/main/rest/api.rb 包含用于將路由(HTTP URL路徑,例如/ api / hooks)安裝/映射到BeEF類的實例以進行訪問的代碼。

    core/main/rest/handlers/<name>.rb 定義對安裝的類的不同請求的響應。

    管理界面

    可通過上的BeEF Web服務器訪問管理界面/ui/panel。如果尚未登錄,則會提示您登錄。

    例如,您可以通過localhost http:// localhost:3000 / ui / panel 訪問它

    admin UI被視為擴展,因此所有代碼都存儲在中extensions/admin_ui

    安慰

    Beef控制臺也是一個擴展,但目前不受支持。目前正在進行修復工作。要嘗試,請./beef-console在Beef-console分支中運行

    有關控制臺如何工作的更多信息,請參閱BeEF-Console。

    控制臺不使用REST API,而是通過ActiveRecord直接與數據庫進行交互。在Beef-console分支中,./beef-console單獨運行于服務器實例,但通過數據庫同步。

    聯網

    外部BeEF服務器的典型設置

    掛鉤時,內部網絡中的掛鉤瀏覽器會使用正常的網絡流量(通常在默認端口80/443上)向外部Beef服務器發出呼叫。這使攻擊者可以繞過防火墻控件,以通過掛鉤的瀏覽器(尤其是類似HTTP的服務)掃描和利用內部基礎結構。

    此設置的缺陷在于,所連接的瀏覽器所屬的組織網絡和主機始終與BeEF保持聯系,如果監視網絡,則會增加暴露BeEF端點的風險。

    安全注意事項

    為避免暴露和損害BeEF服務器,請考慮以下配置:

    1. 設置IP地址白名單

    編輯config.yaml(在Beef根文件夾中)以更改允許的Web UI子網。當心IPv6配置;如果將不使用IPv6路由來訪問Beef UI,則最好將其限制為:: 1(本地主機)。例如(此字段位于restrictions:

    permitted_ui_subnet: ["192.168.0.0/16", "::1"]
    
    1. 設置反向代理到安全(HTTPS)端點

    這可以通過多種方式完成:

    • 使用公共端口轉發服務(例如servo.net,ngrok,portmap.io),
    • 設置Linux VPS(AWS,Vultr,Google Cloud,Azure)并使用letencrypt獲得免費證書

    WebRTC網格設置-內部瀏覽器

    一種避免噪音的設置是讓一個“主”鉤子瀏覽器不斷與BeEF服務器通信,而同一內部網絡中的其他鉤子瀏覽器將使用WebRTC設置與主鉤子瀏覽器的p2p通信。這樣,只有一臺主機正在與BeEF服務器進行回叫,因此噪音較小。

    WebRTC網格設置-外部主瀏覽器

    由于WebRTC是對等協議,因此可以使用公共STUN服務器遍歷NAT(網絡地址轉換),該服務器也內置在BeEF中的WebRTC擴展中。

    因此,可以使用攻擊者網絡中的一個掛鉤瀏覽器通過WebRTC來控制其他掛鉤瀏覽器,其中一個與BeEF服務器的初始連接可以建立命令和控制,也可以將此功能直接嵌入執行的Javascript掛鉤中。這樣,如果主瀏覽器的IP地址與BeEF服務器不同,則可以限制BeEF服務器IP的暴露。

    BeEF

    *控制臺擴展處于禁用狀態不受支持,僅在再次啟用此功能后,才可使用*

    介紹

    BeEF包括類似metasploit的控制臺。該控制臺可用于控制掛鉤的瀏覽器和發送模塊。

    配置

    BeEF控制臺是應在主要config.yml文件中啟用的擴展。

    使用率

    該控制臺將隨BeEF腳本自動啟動。

    幫助

    Core Commands
    =============
    
        Command       Description
        -------       -----------
        ?             Help menu
        back          Move back from the current context
        exit          Exit the console
        help          Help menu
        irb           Drops into an interactive Ruby environment
        jobs          Print jobs
        offline       List previously hooked browsers
        online        List online hooked browsers
        quit          Exit the console
        review        Target a particular previously hooked (offline) hooked browser
        show          Displays 'zombies' or 'browsers' or 'commands'. (For those who prefer the MSF way)
        target        Target a particular online hooked browser
    

    掛鉤的瀏覽器

    BeEF > online
    
    Currently hooked browsers within BeEF
    
    Id  IP        Browser  OS
    --  --        -------  --
    6   10.1.1.1  C-21     Linux
    
    BeEF > offline
    
    Previously hooked browsers within BeEF
    
    Id  IP        Browser  OS
    --  --        -------  --
    1   10.1.1.2  FF-15    Windows XP
    [...]
    

    工作

    BeEF > jobs -l
    
    Id  Job Name
    --  --------
    0   http_hook_server
    

    啟動模塊

    選擇目標僵尸

    BeEF > target 6
    

    列出可用的模塊

    BeEF (10.1.1.1) [6] > commands
    
    List command modules for this target
    Id   Command                                               Status       Execute Count
    --   -------                                               ------       -------------
    1    Host/Hook_Default_Browser                             User Notify  0
    2    Host/Detect_CUPS                                      Working      0
    3    Host/Get_Clipboard                                    Not Working  0
    4    Host/Get_Registry_Keys                                Not Working  0
    5    Host/Get_Wireless_Keys                                User Notify  0
    [...]
    

    選擇一個模塊

    BeEF (10.1.1.1) [6] > select 66
    

    查看有關模塊的信息

    BeEF (10.1.1.1) [6] / Detect Google Desktop > cmdinfo
    Module name: Detect Google Desktop
    Module category: Host/
    Module description: This module attempts to detect Google Desktop running on the default port 4664.
    

    啟動模塊

    BeEF (10.1.1.1) [6] / Detect Google Desktop > execute
    [*] Command successfully queued
    [13:21:24][*] Hooked browser [id:6, ip:10.1.1.1] has been sent instructions from command module 'Detect Google Desktop'
    

    查看回應

    BeEF (10.1.1.1) [6] / Detect Google Desktop > response
    
    List of responses for this command module:
    Id  Executed Time     Response Time
    --  -------------     -------------
    48  2012-10-15 13:18  2012-10-15 13:19:04 +0200
    51  2012-10-15 13:21  2012-10-15 13:21:29 +0200
    
    BeEF (10.1.1.1) [6] / Detect Google Desktop > response 51
    Results retrieved: 2012-10-15 13:21:29 +0200
    
    Response:
    google_desktop=Not Installed

    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类