【2023】无痕制作钓鱼邮件

当涉及到网络安全和信息保护时,钓鱼攻击一直是备受关注的话题。钓鱼攻击是一种利用社交工程手段欺骗用户,诱使其提供敏感信息或执行恶意操作的攻击方式。它不仅威胁个人用户的隐私和财产安全,也对组织和企业的机密信息构成严重威胁。为了增强人们对钓鱼攻击的认识,并提高应对此类威胁的能力,钓鱼演练成为一种常见的训练方式。在这篇文章中,我们将探讨钓鱼演练的重要性,并探索如何有效开展这样的训练以保护个人和组织免受这一威胁。在以往的钓鱼演练行动中,很多钓鱼邮件能够发送到对方邮箱,但是要么就是会被放进垃圾邮箱要么就会被提示有风险,本篇将以红队人员视角教你如何从0到1制作一封完美且隐蔽性很强的钓鱼邮件并且对方系统不会存在上诉所说的情况,在最后会指出如何快速识别这种钓鱼邮件。

声明:

利用钓鱼网站骗取银行卡或信用卡账号、密码等私人资料属于非法行为,请不要进行任何非授权的网络攻击,由于传播、利用本文所提供的信息而造成的任何直接或间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。

废话不多说,先说一下本次钓鱼演练需要准备的东西,接下来我们将会从以下5个方面进行钓鱼邮件的制作。

1.香港服务器(必须)

2.域名 

3.cloudflare 

4.EwoMail邮件服务器 

5.gophish

一:服务器准备

最好是香港的,因为国外的ip大概率会被网易邮箱、QQ邮箱进行拦截而且后面做https+域名映射的时候国内服务器域名没有备案的话不会让使用,所以最好选择香港的服务器,网上随便买个香港服务器就行了,系统的话我们选择centos7.9因为后面要安装很多东西最好选择跟我一样的系统版本避免安装时报错,这里需要全新的系统,如果自己有服务器而且上面有安装其他服务的最好重装一下或者购买新的服务器。

二:域名

我们需要购买相似的域名来增加钓鱼的命中率,比如对方的邮箱使用的是zhangsan@bitebi.com(主域名是bitebi.com),那我们需要购买和这个相似的域名,例如:bittbi.com、bitebl.com等相似的域名,域名在哪儿购买都行,国内国外无所谓的,如果是国内例如阿里、腾讯的域名后面进行dns修改的时候需要等2天的时间,因为后面我们需要使用cloudflare进行dns伪装和https所以需要对域名解析的dns进行修改。

图片

我这里买的阿里云的,我们购买成功以后就可以看到我们的域名,这里暂时先不管,我们进行下一步操作。

三:cloudflare搭建

Cloudflare是一家全球性的互联网安全、性能优化和分发服务提供商。该公司提供了一系列的云计算服务,包括内容分发网络(CDN)、DDoS攻击防护、安全防护、域名解析、SSL证书和边缘计算等。我们这里用来使用cloudflare的cdn和https来规避网易邮箱的封禁和拦截,达到伪装和防止溯源的目的。

3.1添加域名站点

https://dash.cloudflare.com/

(1) 选免费 -> 继续 -> 确认

图片

图片

图片

(2) 左边点 DNS-> 记录 -> 添加记录

(3) 添加两条

图片

这里说明一下,类型我们都选择A记录,然后名称就是主域名前面的名称,比如我们申请的域名是bittbi.com这个域名,那么名称我们就可以填写www,那么整个域名就是www.bittbi.com。内容填写我们前面提到的服务器也就是我们的vps。

3.2域名dns更改

这里需要修改域名的dns解析值,查看上图我们会发现cloudflare有一个NS类型的值,这里我们需要在域名里面把值修改为cloudflare中NS类型的值,这样你ping域名的时候就会解析到cloudflare的cdn,这里我们以阿里云为例子,回到刚刚阿里云那个界面点击全部域名那个"1"按钮就会跳转到如下:

图片

点击管理:

图片

选择修改dns,填写我们刚刚cloudflare中NS类型的值,阿里云需要等待48小时dns服务器才会更改生效,如果不着急的话可以选择阿里云,很着急的话选择国外的也行。

3.3cloudflare ssl配置:

(1) 改为灵活,因为完全在国内会非常慢

图片

(2) 点客户端证书 -> 创建

图片

(3) 选择 ECC-> 创建证书

图片

(4) 左边缓存 -> 配置 -> 开发者勾上

图片

(5) 左边规则 -> 添加两个规则 -> 选择缓存级别 -> 选择绕过 -> 保存

图片

这里“url/说明”填写我们之前申请的主域名

*.bittle.com/*
bittle.com/*

*号必须要有,速通符

图片

四:EwoMail邮件服务器

EwoMail邮件服务器是一个用于搭建和管理企业级邮件系统的软件解决方案。它提供了完整的电子邮件服务,包括收发邮件、邮件存储、邮件过滤、用户管理和安全控制等功能。

4.1关于25端口

25端口为SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务器所开放,主要用于发送邮件。EwoMail服务器支持创建邮箱账号,EwoMail服务器创建的不同账号收发邮件没有限制,使用EwoMail创建的邮箱账号,向EwoMail外部发送邮件时,需要使用25端口,这里就是为什么要香港的服务器,因为香港的服务器不需要向服务器厂商申请可以直接开放就能使用,如果是腾讯云、阿里云、京东云等这些国内服务器厂商都要走审批工单才能开放25端口,如果这里使用了这些云服务器那么后面的https就无法使用了,因为域名没有备案无法解析到国内的服务器。

4.2搭建步骤

4.2.1:检查selinux
vi /etc/sysconfig/selinux SELINUX=enforcing 改为 SELINUX=disabled
4.2.2:git安装
yum -y install git cd /root git clone https://gitee.com/laowu5/EwoMail.git cd /root/EwoMail/install #需要输入一个邮箱域名,不需要前缀,列如下面的bittbi.comsh ./start.sh bittbi.com // 注意安装时更改为自己的主域名
4.2.3:host替换
vim /etc/hosts127.0.0.1 mail.bittbi.com smtp.bittbi.com imap.bittbi.com 
4.2.4:创建邮箱账号

登录邮箱管理后台:http://IP:8010 (默认账号admin,密码ewomail123),进行账号创建

图片

图片

注意添加邮箱账号时,需要更换为自己的主域名,也就是sh ./start.sh bittbi.com 命令执行时候的域名,我以示例域名bittbi.com为例那么就是zhangsan@bittbi.com。

4.2.5:邮箱登录

使用浏览器打开http://IP:8000,例如:zhangsan@bittbi.com进行登录

图片

这里可以发送邮件,我们可以自行测试一下邮件能否发送,发送一封测试就行。

4.2.6:注意事项

如果想要重新安装的话只能通过重装系统才能解决,默认后台运行不需要每次都启动脚本,启动一次即可。

五:gophish搭建

Gophish是一款开源的渗透测试工具,用于模拟和执行钓鱼攻击。它的设计目的是帮助安全专业人员评估和增强组织的防御能力,通过模拟真实的钓鱼攻击来测试员工的警觉性和安全意识。

使用Gophish,安全团队可以创建和发送钓鱼电子邮件、网页钓鱼页面以及其他钓鱼形式的伪造信息,以诱使目标用户提供敏感信息或执行特定的操作。Gophish提供了灵活的模板和配置选项,使用户能够定制和伪造各种类型的钓鱼攻击,包括欺骗性的登录页面、恶意附件和虚假的重要通知等。

除了发起钓鱼攻击,Gophish还提供了详细的分析和报告功能。它可以跟踪受攻击用户的行为,例如打开邮件、点击链接或输入凭据等,并生成相应的报告和统计数据。这些数据可以帮助安全团队评估钓鱼攻击的成功率、目标用户的易受攻击性和潜在的安全风险。

需要注意的是,Gophish只能在合法和授权的渗透测试活动中使用。未经授权和合法许可的使用可能涉及非法行为和侵犯隐私问题。在使用Gophish或其他类似工具之前,务必遵循适用法律法规和道德准则,并获得相关授权和许可。

5.1:安装gophish

安装包下载:https://github.com/gophish/gophish/releases,这里我建议本机开代理下载下来然后传到服务器上面进行解压使用,如果服务器网速很好可以使用wget进行下载

wget https://github.com/gophish/gophish/releases/download/v0.10.1/gophish-v0.10.1-linux-64bit.zip 

注意这是64位的

下载以后解压

unzip gophish-v0.10.1-linux-64bit.zip -d ./gophish

进入gophish修改配置文件,因为我们服务器是在公网所以要改一个配置

vi config.json

图片

改为0.0.0.0,即为全部用户可访问

5.2:gophish使用详情
chmod +x gophishnohup ./gophish > gophish.log 2>&1 &

访问https://ip:3333/ (注意使用https协议)尽量登录后在功能面板Account Settings处修改高强度密码(admin/gophish)

如果依旧访问不到后台管理系统,有可能是服务器未对外开放3333端口,可查看防火墙策略、配置iptables 等方式自检

图片

图片

5.3:功能介绍

进入后台后,左边的栏目即代表各个功能,分别是Dashboard仪表板 、Campaigns钓鱼事件 、Users & Groups用户和组 、Email Templates邮件模板 、Landing Pages钓鱼页面 、Sending Profiles发件策略六大功能,接下来逐一介绍此功能。

5.3.1:Sending Profiles 发件策略

说白了就是绑定一个发钓鱼邮件的邮箱账号

图片

Name:这里建议选择邮箱名字,做到见名知其意

From:就是发送到对方邮件后想显示的效果,比如你想模仿网易安全中心那么就是“网易安全中心zhangsan@bittbi.com”,这里的域名要自行替换哦

UserName:就是刚刚邮件服务器创建的邮箱名字

PassWord:邮箱密码

Email Headers:这个需要自己改,如果用默认的直接会被拦截掉,如何去找这个?可以自行百度该字段的意义然后里面会有很多,或者自己先用网易发一封正常的邮件然后导出为eml格式的文件用txt打开找到这个字段复制下来就好了,这里给大家一个例子:

图片

X-Mailer:Foxmail 6, 15, 201, 21 [cn]

图片

这里可以发送一封测试邮件进行测试,如果有收到说明就没问题。

5.3.2:Landing Pages 钓鱼页面

图片

图片

这里有几个点需要注意,重点说一下

Name:还是跟之前一样的,命名规范

Import Site:要克隆的页面,输入域名就可以克隆页面,但是这个里面有很多的坑,要么就是捕捉不到数据要么就是乱码,所以接下里给大家讲讲如何避免这种情况

必看)经验之谈 · 注意事项

在导入真实网站来作为钓鱼页面时,绝大多数情况下并非仅通过Import就能够达到理想下的克隆,通过多次实践,总结出以下几点注意事项

【捕获不到提交的数据】导入后要在HTML编辑框的非Source模式下观察源码解析情况,如果明显发现存在许多地方未加载,则有可能导入的源码并非页面完全加载后的前端代码,而是一个半成品,需要通过浏览器二次解析,渲染未加载的DOM。这种情况下,除非能够直接爬取页面完全加载后的前端代码,否则无法利用gophish进行钓鱼,造成的原因是不满足第2点。

【捕获不到提交的数据】导入的前端源码,必须存在严格存在<form method="post" ···><input name="aaa" ··· /> ··· <input type="submit" ··· />结构,即表单(POST方式)— Input标签(具有name属性)Input标签(submit类型)— 表单闭合的结构,如果不满足则无法捕获到提交的数据

【捕获不到提交的数据】在满足第2点的结构的情况下,还需要求<form method="post" ···>在浏览器解析渲染后(即预览情况下)不能包含action属性,或者action属性的值为空。否则将会把表单数据提交给action指定的页面,而导致无法被捕获到

【捕获数据不齐全】对于需要被捕获的表单数据,除了input标签需要被包含在<form>中,还需满足该<input>存在name属性。例如<input name="username">,否则会因为没有字段名而导致value被忽略

【密码被加密】针对https页面的import,通常密码会进行加密处理,这时需要通过审计导入的前端代码,找到加密的JavaScript函数(多数情况存在于单独的js文件中,通过src引入),将其在gophish的HTML编辑框中删除,阻止表单数据被加密

以上5点是在实践中总结出来的宝贵经验,或许还有其他许多坑未填,但所有的坑通常都围绕在<form><input /></form>结构中,所以如果遇到新坑,先将该结构排查一遍,还是不行,再另辟蹊径。

所以我们在构造钓鱼页面的时候也是最复杂的,这里页面需要大家自己构造,因为不同的场景构造的钓鱼页面也是不一样的,这里我放模板出来也没有意义,如果后面有需要的话我后面在补充。

5.3.3:Email Templates 钓鱼邮件模板

图片

这里给一个做好的模板照片,导入.eml格式的目的是为了套用格式使其看起来更加真实,如下图是我做的一个:

图片

5.3.4:Users & Groups 用户和组

图片

要么Add单独添加,如果量少的话。批量添加的话就是Download CSV Template点击这个下载模板,然后按照格式填入进去在点击旁边红色的按钮导入即可。

5.3.5:Campaigns 钓鱼事件

Campaigns 的作用是将上述四个功能Sending Profiles 、Email Templates 、Landing Pages 、Users & Groups联系起来,并创建钓鱼事件

这个模块就是把之前的全部添加进去,这里需要将的就是URL这一个和Launch Date、Send Emails By (Optional)

图片

图片

url:填入我们之前cloudflare里面设置的域名

https://bittbi.com

这样我们点击跳转以后就会跳转到https这个页面,同时也使用的是https,浏览器也不会报错看起来更真实,而且我们使用了cdn让蓝方队员难以溯源。

Launch Date:

Launch Date 即钓鱼事件的实施日期,通常如果仅发送少量的邮箱,该项不需要修改。如果需要发送大量的邮箱,则配合旁边的Send Emails By效果更佳。Launch Date作为起始发件时间,Send Emails By 作为完成发件时间,而它们之间的时间将被所有邮件以分钟为单位平分。例如,Launch Date的值为2023.06.22,09:00Send Emails By的值为2023.06.22,09:04,如果我们需要发送50封邮件,那么每分钟发送的邮件就是:邮件总数/分钟数,50/5=10,也就是每分钟发送10封。这样的好处在于,当需要发送大量的钓鱼邮件,而发件邮箱服务器并未限制每分钟的发件数,那么通过该设定可以限制钓鱼邮件不受约束的发出,从而防止因短时间大量邮件抵达目标邮箱而导致的垃圾邮件检测,甚至发件邮箱服务器IP被目标邮箱服务器封禁

5.3.6:Dashboard 仪表板

当创建了钓鱼事件后,Dashboard 会自动开始统计数据。统计的数据项包括当创建了钓鱼事件后,Dashboard 会自动开始统计数据。统计的数据项包括邮件发送成功的数量及比率邮件被打开的数量及比率钓鱼链接被点击的数量及比率账密数据被提交的数量和比率以及收到电子邮件报告的数量和比率。另外,还有时间轴记录了每个行为发生的时间点。另外,还有时间轴记录了每个行为发生的时间点

图片

六:总结

整个钓鱼邮件就搭建好了,这里和以往其他文章不一样的地方在于新增了https协议让其看起来更真实,使用了cdn让蓝队增加溯源难度,更加贴合红队以及常见钓鱼攻击者的攻击手法。其次就是在构建域名的时候我们用了https证书和cdn网易邮箱或者qq邮箱在识别我们链接的时候不会拉黑和提示垃圾邮件,因为我们整个域名处于白名单状态,可以饶过网易邮箱的策略。最后唯一需要注意的就是在邮箱构建模块和网页构建这两个部分需要投入很多的精力去伪造,伪造的越好钓的鱼就越多,识别是否钓鱼邮件的最稳的方法就是查看域名,通过查看域名的方式来判断无疑是最合适的方法。在最后再次声明,本次教学分享只为知识探讨和学习利用钓鱼网站骗取银行卡或信用卡账号、密码等私人资料属于非法行为,请不要进行任何非授权的网络攻击,由于传播、利用本文所提供的信息而造成的任何直接或间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/644132.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux第35步_在“移植uboot”前安装libncurses5-dev

在“移植uboot”前&#xff0c;需要在Ubuntu中安装“libncurses5-dev”&#xff0c;否则在“编译uboot”时&#xff0c;会报错。目的是保证顺利移植“uboot”。 1、打开终端 2、输入“sudo apt-get install libncurses5-dev bison flex回车”&#xff1b; 3、输入密码“1234…

3W Star 网易云音乐第三方开源 API 仓库因侵权被要求删除

NeteaseCloudMusicApi是一个使用Node.js编写的非官方网易云音乐API&#xff0c;用于获取网易云音乐平台的歌曲信息。该项目是完全开源的&#xff0c;在GitHub上获得了超过3万的star。 根据公开信息&#xff0c;NeteaseCloudMusicApi的主要目的是整理网易云音乐公开的网页接口&a…

Linux逻辑卷创建与扩容

​ 钢铁知识库&#xff0c;一个学习python爬虫、数据分析的知识库。在职运维&#xff0c;又喜欢开发。 什么是lvm逻辑卷 ​ LVM&#xff08;逻辑卷管理&#xff09;是一种在Linux环境中广泛使用的磁盘管理技术。它允许管理员创建逻辑上的磁盘分区&#xff0c;这些分区可以跨越…

node 第二十三天 mongoDB shell 命令 CRUD 增删改查 基础

什么是 mongoDB shell 命令 mongoDB shell 命令就是在cmd窗口或者powershell窗口与mongoDB交互的命令, 以下简称mongosh 对应我们上一天安装的 mongosh 工具 有什么用 mongosh 对一般的开发者可能意义不大, 因为在开发过程中我们会基于某一款语言来使用mongoDB, 比如在node端我…

需求分析的结构化和面向对象方法

需求分析的方法&#xff0c;主要有结构化&#xff08;SA&#xff09;方法、面向对象分析&#xff08;OOA&#xff09;方法。另外有面向问题域的分析(Problem Domain Oriented Analysis&#xff0c;PDOA)方法&#xff0c;还有一些形式化方法例如VDM ( Vienna Design Method)和Z等…

基于cubeMX的正点原子miniSTM32对W25Q64的存储使用

一、实现目标 使用cubeMX建立项目工程&#xff0c;结合正点原子提供的hal库对W25Q64闪存调用的例程&#xff0c;实现W25Q64的读写。 二、实现过程 1、首先建立cubeMX工程&#xff0c;其他项设置不再叙述&#xff0c;只看连接W25Q64的SPI设置&#xff0c;这里使用SPI1&#xf…

2.1 关系模型的数据结构及形式化定义

2.1.1 关系 单一的数据结构----关系 现实世界的实体以及实体间的各种联系均用关系来表示 。 逻辑结构----二维表 从用户角度&#xff0c;关系模型中数据的逻辑结构是一张二维表 。 建立在集合代数的基础上。 1. 域&#xff08;domain&#xff09; 2. 笛卡儿积&#xff08;C…

proxy 代理的接口报错301问题

项目系统里仅仅这个接口报错&#xff0c;反向代理错误导致。 默认情况下&#xff0c;不接受运行在HTTPS上&#xff0c;且使用了无效证书的后端服务器。如果你想要接受&#xff0c;修改配置&#xff1a;secure: false&#xff08;简单意思&#xff1a;如果本地没有进行过https相…

Dify学习笔记-手册(三)

1、应用构建及提示词 在 Dify 中&#xff0c;一个“应用”是指基于 GPT 等大型语言模型构建的实际场景应用。通过创建应用&#xff0c;您可以将智能 AI 技术应用于特定的需求。它既包含了开发 AI 应用的工程范式&#xff0c;也包含了具体的交付物。 简而言之&#xff0c;一个应…

Linux 一键部署influxd2-telegraf

influxd2前言 influxd2 是 InfluxDB 2.x 版本的后台进程,是一个开源的时序数据库平台,用于存储、查询和可视化时间序列数据。它提供了一个强大的查询语言和 API,可以快速而轻松地处理大量的高性能时序数据。 telegraf 是一个开源的代理程序,它可以收集、处理和传输各种不…

建筑物防雷检测安全接地应用解决方案

雷电是一种自然现象&#xff0c;具有极高的电压和电流&#xff0c;对建筑物及其内部设备、人员和财产可能造成严重的危害&#xff0c;如火灾、爆炸、电击、电磁干扰等。因此&#xff0c;建筑物必须采取有效的防雷措施&#xff0c;以保障建筑物的安全和可靠运行。建筑物防雷检测…

【C/Python】用GTK实现多文档窗体程序

一、用C语言 在GTK&#xff08;GIMP Toolkit&#xff09;中实现多文档接口&#xff08;MDI&#xff09;程序可以使用多种方法。GTK本身并没有提供专用的MDI窗口小部件&#xff0c;但可以使用标签页&#xff08;Notebook&#xff09;或多个窗口&#xff08;Window&#xff09;来…

怎么缩小动图的大小?一分钟快速压缩gif体积

GIF动图是一种使用GIF文件格式创建的动画图像。GIF是一种常见的图像文件格式&#xff0c;它支持多帧图像以形成连续播放的动画效果。与其他图像格式只能表示静态图像不同&#xff0c;GIF格式可以存储多个图像帧&#xff0c;并通过在特定时间间隔内循环播放这些帧来创建动画效果…

【C++记忆站】类和对象(三)

文章目录 再谈构造函数构造函数赋值并非初始化初始化列表explicit关键字 static成员概念特性一、静态成员为所有类对象所共享&#xff0c;不属于某个具体的对象二、静态成员变量必须在类外定义&#xff0c;定义时不添加static关键字三、静态成员函数没有隐藏的this指针&#xf…

基于SpringBoot Vue航空机票预订系统

大家好✌&#xff01;我是Dwzun。很高兴你能来阅读我&#xff0c;我会陆续更新Java后端、前端、数据库、项目案例等相关知识点总结&#xff0c;还为大家分享优质的实战项目&#xff0c;本人在Java项目开发领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目&#x…

uniapp canvas做的刮刮乐解决蒙层能自定义图片

最近给湖南中烟做元春活动&#xff0c;一个月要开发4个小活动&#xff0c;这个是其中一个难度一般&#xff0c;最难的是一个类似鲤鱼跃龙门的小游戏&#xff0c;哎&#xff0c;真实为难我这个“拍黄片”的。下面是主要代码。 <canvas :style"{width:widthpx,height:hei…

(学习日记)2024.01.22:各类型占用字节 与 指针

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

专业粉碎文件,数据安全与销毁:数据销毁实践指南

数据销毁处理 为了满足合规要求及组织机构本身的业务发展需求&#xff0c;组织机构需要对数据进行销毁处理。因为数据销毁处理要求针对数据的内容进行清除和净化&#xff0c;以确保攻击者无法通过存储介质中的数据内容进行恶意恢复&#xff0c;从而造成严重的敏感信息泄露问题。…

大模型-提示词工程

提示原则 1.编写明确具体的指令 策略一&#xff1a;使用分隔符清晰地表示输入的不同部分&#xff0c;分隔符可以是&#xff1a;&#xff0c;“”&#xff0c;<>&#xff0c; 你可以使用任何明显的标点符号将特定的文本部分与提示的其余部分分开。这可以是任何可以使模型…

uniapp微信小程序图片上传功能实现,页面显示文件列表、删除功能

uniapp小程序图片上传功能效果预览 一、template 页面结构 <view class"upload-box"><view class"upload-list"><view class"upload-item" v-for"(item,index) of fileList" :keyindex><image class"img…