当前位置: 首页 > news >正文

gophish

Gophish 使用指南:基础与高级用法

基础用法

1. 安装与启动

# 下载Gophish (根据系统选择对应版本)
wget https://github.com/gophish/gophish/releases/download/v0.12.1/gophish-v0.12.1-linux-64bit.zip
unzip gophish-v0.12.1-linux-64bit.zip
cd gophish-v0.12.1-linux-64bit# 启动Gophish
./gophish

2. 登录管理界面

  • 默认地址: https://localhost:3333
  • 默认用户名: admin
  • 首次登录后修改密码

3. 创建钓鱼活动基本流程

3.1 创建目标用户组
  1. 导航至 “Users & Groups” → “Groups”
  2. 点击 “New Group”
  3. 输入组名
  4. 添加目标用户(姓名、邮箱)
  5. 保存
3.2 创建钓鱼邮件模板
  1. 导航至 “Email Templates”
  2. 点击 “New Template”
  3. 输入模板名称
  4. 编辑邮件内容(支持HTML)
  5. 可添加附件
  6. 保存
3.3 创建钓鱼页面
  1. 导航至 “Landing Pages”
  2. 点击 “New Page”
  3. 输入页面名称
  4. 编辑HTML内容或导入现有页面
  5. 可选择捕获提交的数据
  6. 保存
3.4 创建发送配置
  1. 导航至 “Sending Profiles”
  2. 点击 “New Profile”
  3. 配置SMTP服务器信息
  4. 测试连接
  5. 保存
3.5 启动钓鱼活动
  1. 导航至 “Campaigns”
  2. 点击 “New Campaign”
  3. 选择之前创建的用户组、邮件模板、钓鱼页面和发送配置
  4. 设置活动时间
  5. 启动活动

高级用法

1. 高级钓鱼技术

1.1 动态内容替换

在邮件和页面中使用 {{.}} 语法插入动态内容:

  • {{.FirstName}} - 用户名字
  • {{.LastName}} - 用户姓氏
  • {{.Position}} - 用户职位(如果在用户数据中定义)
  • {{.Email}} - 用户邮箱
1.2 时间延迟发送

在创建活动时:

  1. 设置 “Launch Date” 为未来时间
  2. 使用 “Send Emails By” 控制发送速度
1.3 多阶段钓鱼
  1. 创建多个连续活动
  2. 使用第一个活动收集信息
  3. 基于收集的数据定制后续活动

2. API集成

2.1 使用Gophish API

Gophish提供REST API用于自动化操作:

# 获取所有活动示例
curl -k -H "Authorization: YOUR_API_KEY" https://localhost:3333/api/campaigns/
2.2 自动化用户导入

通过API批量导入用户:

import requests
import jsonurl = "https://localhost:3333/api/import/group"
headers = {"Authorization": "YOUR_API_KEY","Content-Type": "application/json"
}
data = {"name": "Imported Group","targets": [{"email": "user1@example.com", "first_name": "John", "last_name": "Doe"},{"email": "user2@example.com", "first_name": "Jane", "last_name": "Smith"}]
}response = requests.post(url, headers=headers, data=json.dumps(data))

3. 高级配置

3.1 自定义SSL证书
  1. 准备证书和密钥文件

  2. 修改config.json:

    {"admin_server": {"listen_url": "0.0.0.0:3333","use_tls": true,"cert_path": "gophish_admin.crt","key_path": "gophish_admin.key"},"phish_server": {"listen_url": "0.0.0.0:80","use_tls": false}
    }
    
3.2 数据库迁移
  1. 备份现有数据库
  2. 修改config.json中的db_path
  3. 使用SQLite命令处理数据库

4. 分析与报告

4.1 导出结果
  1. 导航至活动详情页
  2. 点击 “Export Results”
  3. 选择CSV或JSON格式
4.2 自定义报告

使用API获取数据并生成自定义报告:

import requests
import pandas as pdurl = "https://localhost:3333/api/campaigns/1/results"
headers = {"Authorization": "YOUR_API_KEY"}response = requests.get(url, headers=headers)
data = response.json()df = pd.DataFrame(data)
df.to_excel("campaign_report.xlsx")

5. 规避检测技术

5.1 邮件头修改

在发送配置中自定义邮件头:

X-Mailer: Microsoft Outlook 16.0
X-Priority: 3
5.2 URL混淆技术
  1. 使用URL重定向服务
  2. 部署多个钓鱼服务器
  3. 定期轮换域名
5.3 反沙箱技术
  1. 在页面中添加JavaScript检测虚拟机环境
  2. 根据用户代理显示不同内容

相关文章:

  • 机器学习基础 - 回归模型之线性回归
  • 同一电脑下使用 python2 和 python3
  • 使用开源免费雷池WAF防火墙,接入保护你的网站
  • 100个用户的聊天系统:轮询 vs WebSocket 综合对比
  • 重生之--js原生甘特图实现
  • WordPress AI插件能自动写高质量文章吗,如何用AI提升网站流量
  • Python 3.14:探索新版本的魅力与革新
  • 7.11 Python CLI开发实战:API集成与异步处理核心技术解析
  • 人工智能在创意设计中的应用:激发无限可能
  • 【高频考点精讲】JavaScript事件循环机制:从宏任务微任务到渲染时机
  • P12167 [蓝桥杯 2025 省 C/Python A] 倒水
  • Python Transformers 库介绍
  • 慧星云荣登杭州AI卧龙图
  • 未来乘用车电气/电子(E/E)架构与商用车电气/电子架构有何不同?
  • 692. 前K个高频单词(map的练习)
  • Linux操作系统复习
  • 小火电视桌面TV版下载-小火桌面纯净版下载-官方历史版本安装包
  • 链表系列一>两两交换链表中的结点
  • #什么是爬虫?——从技术原理到现实应用的全面解析 VI
  • Java集成Redisson实现分布式锁(实战)
  • 经济日报金观平:充分发挥增量政策的经济牵引力
  • 今年地质灾害防治形势严峻,哪些风险区被自然资源部点名?
  • 青海西宁市公安局原党委委员、副局长王小华被“双开”
  • 受折纸艺术启发可移动可变形的新型超材料问世
  • 美联储官员:若特朗普高额关税致失业率飙升,将支持降息
  • 为什么猛起身会头晕?你的身体在发出这个警报