项目简介
特点:
支持缓存静态文件,加速访问
支持 dump 所有请求,dump 匹配规则的请求
支持访问日志输出到 es、syslog、文件等
支持通过插件快速配置,调整不合适的跳转或者内容
支持植入特定的 js
支持修改响应内容或者 goblin 请求的内容
支持通过代理方式隐藏真实 IP
快速部署
Docker 快速部署
docker pull becivells/goblin
FROM scratch
COPY goblin /usr/bin/goblin
ENTRYPOINT ["/usr/bin/goblin"]
WORKDIR /goblin
docker run -it --rm -v $(pwd):/goblin/ -p 8084:8084 becivells/goblin
goblin用法:
-config string
网络服务器端口 (默认 "goblin.yaml")
-gen-plugin string
生成规则文件
-log string
服务器日志 (默认 "goblin.log")
-log-level int
日志模式[1-5] 1.dump所有日志包括GET日志、POST日志、2.记录POST日志,3.记录转储登录规则;4.记录错误日志;5.记录异常退出日志(默认1)
-print-config
输出配置文件
-test-notice
测试消息通知
-v 显示goblin版本
-w 将配置写入配置文件
高阶用法
goblin 使用反向代理,前端使用 cf 等代理 Goblin, 即可隐藏 Goblin 主机,具体文档可以参考下文。
https://goblin.xiecat.fun/guide/proxy.html
S 注入
js 注入有两种方式一种是跟着页面走(Replace 需要自己追加 <script> 标签),一种是跟着全局 js 文件走各有好处。
使用 InjectJs 注入
具体文档可以参考 goblin InjectJs 模块
https://goblin.xiecat.fun/plugin/injectjs.html
- url: /base.js
Match: word
InjectJs:
File: aaa.js
使用 replace 注入
https://goblin.xiecat.fun/plugin/replace.html
- url: /art_103.html # 待替换的网页
Match: Word
Replace: # 替换模块
- Request:
Method: # 匹配到如下请求方式方可替换
- GET
- POST
Header:
goblin: 1.0.1 # 替换的 header 头内容。为空则是删除。
Response: # 替换的响应内容
Body:
Append: "<script type='text/javascript' src='{{ .Static }}a.js'></script>" # 追加字符串
下载地址
文章来源:HACK分享吧
黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!
如侵权请私聊我们删文
END
原文始发于微信公众号(黑白之道):红蓝对抗中的仿真钓鱼系统
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论