Goblin 紅藍(lán)對(duì)抗釣魚攻擊演練系統(tǒng)

本文轉(zhuǎn)載自網(wǎng)絡(luò)
作者:雨蓯
原文鏈接:https://www.ddosi.org/goblin/

項(xiàng)目地址
GitHub:
https://github.com/xiecat/goblin
Goblin簡(jiǎn)介

Goblin 是一款適用于紅藍(lán)對(duì)抗的釣魚演練工具。通過(guò)反向代理,可以在不影響用戶操作的情況下無(wú)感知的獲取用戶的信息,或者誘導(dǎo)用戶操作。也可以通過(guò)使用代理方式達(dá)到隱藏服務(wù)端的目的。內(nèi)置插件,通過(guò)簡(jiǎn)單的配置,快速調(diào)整網(wǎng)頁(yè)內(nèi)容以達(dá)到更好的演練效果

特點(diǎn):

支持緩存靜態(tài)文件,加速訪問(wèn)
支持 dump 所有請(qǐng)求,dump 匹配規(guī)則的請(qǐng)求
支持訪問(wèn)日志輸出到 es、syslog、文件等
支持通過(guò)插件快速配置,調(diào)整不合適的跳轉(zhuǎn)或者內(nèi)容
支持植入特定的 js
支持修改響應(yīng)內(nèi)容或者 goblin 請(qǐng)求的內(nèi)容
支持通過(guò)代理方式隱藏真實(shí) IP

Goblin下載地址:
①GitHub:
goblin_0.4.4_darwin_amd64.tar.gz5.44 MB
goblin_0.4.4_darwin_arm64.tar.gz5.47 MB
goblin_0.4.4_linux_386.tar.gz4.8 MB
goblin_0.4.4_linux_amd64.tar.gz5.17 MB
goblin_0.4.4_linux_arm64.tar.gz4.74 MB
goblin_0.4.4_linux_armv6.tar.gz4.81 MB
goblin_0.4.4_windows_386.zip5.03 MB
goblin_0.4.4_windows_amd64.zip5.25 MB
goblin_0.4.4_windows_arm64.zip4.81 MB
goblin_0.4.4_windows_armv6.zip4.96 MB
②云中轉(zhuǎn)網(wǎng)盤:
解壓密碼:www.ddosi.org
https://yzzpan.com/#sharefile=I9gN46sH_37228
Goblin安裝方法

從 Docker 中下載
docker pull becivells/goblin
Dockerfile 如下:
FROM scratch
COPY goblin /usr/bin/goblin
ENTRYPOINT ["/usr/bin/goblin"]
WORKDIR /goblin
工作目錄在 goblin ,首先創(chuàng)建goblin目錄,切換到目錄下,執(zhí)行
docker run -it --rm -v $(pwd):/goblin/ -p 8084:8084 becivells/goblin
注意事項(xiàng)
$(pwd) 是路徑代表當(dāng)前路徑(goblin) 也可以使用
docker run -it --rm -v goblin:/goblin/ -p 8084:8084 becivells/goblin
即可自動(dòng)生成配置文件、插件目錄、靜態(tài)文件目錄并且下載地理位置數(shù)據(jù)庫(kù)
命令參數(shù)

────────╔╗──╔╗
────────║║──║║
╔══╗╔══╗║╚═╗║║─╔╗╔══╗
║╔╗║║╔╗║║╔╗║║║─╠╣║╔╗╗
║╚╝║║╚╝║║╚╝║║╚╗║║║║║║
╚═╗║╚══╝╚══╝╚═╝╚╝╚╝╚╝
╔═╝║  v0.3.9-next - 2021-09-12T08:12:09Z
╚══╝
        From: https://github.com/xiecat/goblin

請(qǐng)?jiān)趌icense許可范圍內(nèi)使用此工具。
goblin 不對(duì)因使用此工具而產(chǎn)生的任何風(fēng)險(xiǎn)負(fù)責(zé)。
使用說(shuō)明同意此聲明
 
goblin用法:
  -config string
        網(wǎng)絡(luò)服務(wù)器端口 (默認(rèn) "goblin.yaml")
  -gen-plugin string
        生成規(guī)則文件
  -log string
        服務(wù)器日志 (默認(rèn) "goblin.log")
  -log-level int
        日志模式[1-5] 1.dump所有日志包括GET日志、POST日志、2.記錄POST日志,3.記錄轉(zhuǎn)儲(chǔ)登錄規(guī)則;4.記錄錯(cuò)誤日志;5.記錄異常退出日志(默認(rèn)1)
  -print-config
        輸出配置文件
  -test-notice
        測(cè)試消息通知
  -v    顯示goblin版本
  -w    將配置寫入配置文件
代理配置






前置配置
前面可以使用 cf 做 cdn 訪問(wèn)者溯源困難
后置配置
配置文件中 proxyserveraddr 配置即可
Proxy:
  MaxIdleConns: 512 # 代理一些配置默認(rèn)即可
  IdleConnTimeout: 2m0s
  TLSHandshakeTimeout: 1m0s
  ExpectContinueTimeout: 1s
  maxcontentlength: 20971520 # 處理響應(yīng)數(shù)據(jù)最大值默認(rèn) 20M,超過(guò)這個(gè)值,插件中需要讀取 body 的操作會(huì)被取消
  ProxyServerAddr: "socks5://127.0.0.1:1080"   # 設(shè)置代理,設(shè)置后通過(guò)代理進(jìn)行網(wǎng)頁(yè)請(qǐng)求
  ProxyCheckURL: https://myip.ipip.net/ # 訪問(wèn)此地址檢查代理設(shè)置是否正確
  PluginDir: plugins
注意事項(xiàng)

如果是在服務(wù)器端部署則需要修改 ip 地址如有疑問(wèn)可以參考 site 講解
  Site:
    server_ip:8084:  ## 修改為域名或者 server ip
      Listen: 0.0.0.0
      StaticPrefix: x9ut17jbqa
      SSL: false
      CAKey: ""
      CACert: ""
      ProxyPass: https://www.baidu.com
      Plugin: demo
插件系統(tǒng)

插件系統(tǒng)介紹詳細(xì)使用方法見(jiàn)文檔插件系統(tǒng)
高階用法

goblin 使用反向代理,前端使用 cf 等代理 Goblin, 即可隱藏 Goblin 主機(jī) 具體文檔可以參考 goblin 代理配置
JS 注入
js 注入有兩種方式一種是跟著頁(yè)面走(Replace 需要自己追加 \ 標(biāo)簽),一種是跟著全局 js 文件走各有好處。
這兩種其實(shí)都是使用 Replace 功能
使用 InjectJs 注入
具體文檔可以參考 goblin InjectJs 模塊
- url: /base.js # 待替換的js 盡量選擇全局 js
  Match: word   # 匹配方式
  InjectJs:
    File: aaa.js # 要替換的 js。 可以為文件或者 url
使用 replace 注入
具體文檔可以參考 goblin Replace 模塊
- url: /art_103.html # 待替換的網(wǎng)頁(yè)
  Match: Word
  Replace: # 替換模塊
    - Request:
        Method: # 匹配到如下請(qǐng)求方式方可替換
          - GET
          - POST
        Header:
          goblin: 1.0.1  # 替換的 header 頭內(nèi)容。為空則是刪除。
      Response: # 替換的響應(yīng)內(nèi)容
        Body:
          Append: "



作者:雨蓯


歡迎關(guān)注微信公眾號(hào) :釋然IT雜談