首页
社区
课程
招聘
27
[原创] 分享一份恶意代码分析方向的基础技能表
发表于: 2021-2-23 21:19 22213

[原创] 分享一份恶意代码分析方向的基础技能表

2021-2-23 21:19
22213

概述

最近一段时间,遇到不少朋友问我关于"恶意代码分析如何入门","应该哪些书","如何提升分析能力"之类的问题,断断续续回复了之后,我也思考了一些相关的内容,在这里整理成了一份《恶意代码分析基础技能表》分享给大家。主要是为刚刚开始学习恶意代码分析的同学一点点经验。
忙中难免出错,若文章有不对的地方希望各位大佬海涵。

 

基础技能

汇编基础

  1. x86汇编
    x86汇编依旧是目前恶意代码分析中可执行文件的主流,属于恶意代码分析中最重要的基本功。关于x86汇编的学习途径有很多,个人推荐是王爽老师的《汇编语言》
    同时,论坛也有许多资料,比如https://bbs.pediy.com/thread-191802.htm,https://bbs.pediy.com/thread-216825.htm 可利用论坛进行搜索学习。

  2. x64汇编
    随着计算机的发展,x64汇编势必会逐渐成为主流,相比x86汇编,x64多了一些寄存器和指令,相对来说会复杂一些,可先熟练掌握x86汇编再对x64进行学习。
    https://bbs.pediy.com/thread-43967.htm
    https://bbs.pediy.com/thread-44078.htm
    https://bbs.pediy.com/thread-206780.htm

  3. ARM汇编/MIPS汇编以及其他汇编
    对于恶意代码分析来说,x86-x64架构是主流,但诸如ARM、MIPS架构的恶意样本偶尔也会遇到,对于初学者来讲,这些架构不属于一上来就必须要掌握的范畴,但想要更上一层楼,这个技能点是必不可少的。

编程基础

在恶意代码分析的时候,常常会遇到由不同语言编写的恶意软件,想要对其进行详细分析,就需要"掌握"这门语言。其中,有的只需要能读,有的则需要能写。

  1. C语言
  2. C++
    C++开发方向推荐《C++ Primer》
    逆向方向推荐钱老师的《C++反汇编与逆向分析技术揭秘》
  3. C#
    由于C#强大的语言特性,越来越多的攻击者会选择使用C#样本作为Downloader或者loader。因此掌握C#的开发技术是非常重要的。虽然C#本身的语法并不复杂,但是却有着很多高级用法,分析一些比较高级的C#样本时,则需要对C#本身的一些特性有比较深刻的了解。
  4. python
  5. JavaScript
    JavaScript通常出现在webshell中,但在windows平台的恶意样本中也经常会看到。js脚本通常会结合其他的脚本文件出现在攻击的第一阶段,调试js脚本可通过浏览器F12自带的控制台。

  6. Powershell
    Powershell作为windows强大的命令行shell工具。从诞生开始就不断被攻击者用来执行恶意操作。在实际攻击中,Powershell通常用于下载或加载后续payload,起到一个承上启下的作用。

  7. VBS(VBA)
    VBS是基于Visual Basic的脚本语言。vbs脚本由wscript加载执行,VBA是嵌入在office宏中的VBS代码,需要依赖office执行。而带宏的office文档作为钓鱼界的常青树,宏代码的分析和调试尤为重要。
  8. autoit
    Autoit是一种类似BASIC的脚本语言,常用于自动化变成和批量管理。近年来也不断被攻击者利用编写恶意样本,比如南亚APT组织"白象"。

编译器识别

不同的编译器所生成的代码大相径庭。为了在分析的时候能够更快的定位到关键代码,避免分析到库函数或者框架中,我们需要熟悉不同编译器生成样本的结构,最简单的方法就是使用不同的编译器编译出样本,然后分别去分析,查找自己写的代码,久而久之,在遇到不同编译器生成的恶意样本时,就能快速定位到恶意代码了。

文件结构

pe文件结构

推荐《WindowsPE权威指南》
https://bbs.pediy.com/thread-121488.htm

 

辅助工具
Stud_PE
v2.6.0.5 https://bbs.pediy.com/thread-125638.htm

 

LoadPE
工具下载:https://bbs.pediy.com/thread-161746.htm
练习文章:https://bbs.pediy.com/thread-77120.htm

 

CFF Explorer
原版下载: https://tool.pediy.com/index-detail-165.htm
坛友改进:https://bbs.pediy.com/thread-94129.htm

 

EXEINFO
0.0.5.7 B https://bbs.pediy.com/thread-257082.htm
0.0.5.2 https://bbs.pediy.com/thread-249128.htm

elf文件结构

https://bbs.pediy.com/thread-261349.htm

office文档文件结构

推荐阅读:https://www.decalage.info/files/THC17_Lagadec_Macro_Pest_Control2.pdf

lnk文件结构

https://bbs.pediy.com/thread-260953.htm

常用红队框架

CobaltStrike

https://mp.weixin.qq.com/s/iTzZGKkXK48NR8YT1OTw_Q
https://www.yuque.com/p1ut0/qtmgyx/gsytex

msf

https://www.yuque.com/p1ut0/qtmgyx/ik3omh#YbxEP

Veil

https://www.yuque.com/p1ut0/qtmgyx/ik3omh#YbxEP

Empire

https://github.com/EmpireProject/Empire

威胁情报

通用威胁情报

商业木马

诸如AgentTesla、njrat、Remcosrat之类的商业远控/窃密木马是目前灰黑产的主力军。
https://mp.weixin.qq.com/s/esL5BWuVwI8_ZZdKANUGFg

网银木马

网银木马危害极大,更新迭代也很快,比较出名的有Emotet、Qbot、TrickBot等。出于利益的驱使,网银木马和勒索病毒通常比APT相关的样本更难对付。

勒索病毒

自从Lazarus搞出震惊全球的wannacry事件之后,全球范围内的勒索软件就没停过。勒索作为当今网络安全中面临的一个难题,本文中不做过多介绍,关于勒索推荐关注正正大佬的公众号:<安全分析与研究>

捆绑广告

国内外都有很多捆绑软件类型的恶意软件,这类软件比较烦人~ 有点打法律擦边球的感觉~~

威胁情报来源

笔者之前整理过一个常用的威胁情报来源
https://bbs.pediy.com/thread-265627.htm
https://www.yuque.com/p1ut0/qtmgyx/mcgn7i

 

威胁情报的来源是相当多的,作为个人而言,有限的精力不可能每天消化掉所有的资源,应该建立适合自己的数据处理体系,在众多数据中提取出有用的信息。

安全公司博客

对于初学者而言,安全公司博客是一个不错的情报来源。博客里的文章都是全球各大安全公司研究人员的心血,通过阅读和练习这些文章,可以有效的提升自己的技术水平和见识。

Twitter

Twitter也是一个不错的来源,很多安全研究员会在Twitter上分享自己最新捕获的样本和最新的研究结果。

Telegram

想要了解有些恶意软件是如何传播的?不然通过tg打人受害者内部,看看恶意软件都从哪儿来。

vt

vt应该是恶意代码分析过程中最直接、最丰富的数据来源,无论是对于个人用户还是企业用户,vt都发挥着至关重要的作用。

app.any.run

免费沙箱、开放了样本下载功能,目前应该是除VT以外最大的恶意样本来源。

bazaar

由个人用户运营的恶意样本共享站点。


[招生]科锐逆向工程师培训(2025年3月11日实地,远程教学同时开班, 第52期)!

最后于 2021-2-27 17:01 被jux1a编辑 ,原因: 重新上传图片附件
上传的附件:
收藏
免费 27
支持
分享
赞赏记录
参与人
雪币
留言
时间
mb_lcildhiy
为你点赞!
2024-11-30 21:13
tgergo
你的帖子非常有用,感谢分享!
2024-7-28 14:07
wx_鉲佈奇喏
为你点赞~
2024-1-16 15:16
mb_nawzeazk
为你点赞~
2023-10-23 19:58
伯爵的信仰
为你点赞~
2023-8-7 00:00
M0cK1nG-b1Rd
为你点赞~
2023-4-14 22:37
Ox小伍
为你点赞~
2023-3-15 09:48
PLEBFE
为你点赞~
2023-1-14 05:21
g0mx
为你点赞~
2022-7-8 10:44
KEEEY
为你点赞~
2022-6-15 11:06
34r7hm4n
为你点赞~
2021-10-26 08:05
sushuangju
为你点赞~
2021-10-17 13:37
guyioo
为你点赞~
2021-9-29 14:19
天象独行
为你点赞~
2021-5-7 09:46
从黎明到衰落
为你点赞~
2021-4-16 14:32
平头猿小哥
为你点赞~
2021-3-31 14:15
F1ame7w7
为你点赞~
2021-3-23 21:24
君行早
为你点赞~
2021-2-26 09:15
黑的默
为你点赞~
2021-2-25 13:12
luchchuan
为你点赞~
2021-2-25 09:37
psycongroo
为你点赞~
2021-2-24 22:45
Risks
为你点赞~
2021-2-24 16:45
Jev0n
为你点赞~
2021-2-24 12:47
五毒女
为你点赞~
2021-2-24 08:37
peaceSh4wn
为你点赞~
2021-2-23 23:14
堂前燕
为你点赞~
2021-2-23 22:06
yichen115
为你点赞~
2021-2-23 21:24
最新回复 (22)
雪    币: 968
活跃值: (6853)
能力值: (RANK:462 )
在线值:
发帖
回帖
粉丝
2
思维导图是在语雀创作的 https://www.yuque.com/p1ut0/qtmgyx/xwd9w0,转换为图片之后传上来可能有点模糊
2021-2-23 21:20
0
雪    币: 968
活跃值: (6853)
能力值: (RANK:462 )
在线值:
发帖
回帖
粉丝
3
最后,希望对逆向,或者威胁情报感兴趣的同学明白喜欢的<逆向>到底是什么。逆向并不是一个学科,只是一门技术。在此技术基础上,可以选择深耕软件破解、木马分析、漏洞挖掘、安全研发等多个方向。所以首先需要确定喜欢的的<逆向>属于哪一类,并花费一定的时间去了解和学习相关的知识。 提升分析能力最直接的方式就是不断的练习。目前网上已经有非常多完整的分析报告,在能下载到文章中样本的情况下,可以先独立对样本进行分析,分析之后对比自己的分析和原文作者的分析有何不同,进行查漏补缺。 只有先将分析能力提升起来,才能做更多有意义的事情。个人的一个小建议是可以尝试摒弃IDA的F5功能,尝试只阅读汇编代码试试看(别喷我这是回到石器时代~~),刚开始这样做是非常痛苦的,但对自身的成长和提升将会比上来就看F5代码要大的多。经过一行一行代码,一本一本书籍,一篇一篇笔记堆起来,自然就能水到渠成。
2021-2-23 21:30
0
雪    币: 56043
活跃值: (21220)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
4
顾何 思维导图是在语雀创作的 https://www.yuque.com/p1ut0/qtmgyx/xwd9w0,转换为图片之后传上来可能有点模糊
感谢分享!
原图以附件形式再上传一份,附件图片不失真。
2021-2-23 22:07
0
雪    币: 11248
活跃值: (4902)
能力值: ( LV12,RANK:404 )
在线值:
发帖
回帖
粉丝
5
醍醐灌顶
2021-2-23 22:17
0
雪    币: 968
活跃值: (6853)
能力值: (RANK:462 )
在线值:
发帖
回帖
粉丝
6
kanxue 感谢分享! 原图以附件形式再上传一份,附件图片不失真。
感谢段老师提醒,原图已上传
2021-2-23 22:19
0
雪    币: 968
活跃值: (6853)
能力值: (RANK:462 )
在线值:
发帖
回帖
粉丝
7
堂前燕 醍醐灌顶[em_63]
感谢大佬肯定
2021-2-23 22:19
0
雪    币: 6
活跃值: (1242)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
感谢
2021-2-24 08:33
0
雪    币: 1498
活跃值: (14683)
能力值: ( LV12,RANK:380 )
在线值:
发帖
回帖
粉丝
9
收藏=学会  进我收藏夹吃灰吧
2021-2-24 09:26
0
雪    币: 3317
活跃值: (3534)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
10
优秀,可以根据这个图来查缺补漏了
2021-2-24 10:08
0
雪    币: 1349
活跃值: (2020)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
收藏=学会  进我收藏夹吃灰吧
2021-2-24 10:19
0
雪    币: 2564
活跃值: (13149)
能力值: ( LV12,RANK:312 )
在线值:
发帖
回帖
粉丝
12
感谢整理
2021-2-24 11:11
0
雪    币: 69
活跃值: (180)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Esc
13
2021-2-24 15:43
0
雪    币: 356
活跃值: (71)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
查漏补缺
2021-2-24 20:33
0
雪    币: 5023
活跃值: (2709)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
非常用,感谢分享!
2021-2-26 09:08
0
雪    币: 2325
活跃值: (2304)
能力值: ( LV6,RANK:89 )
在线值:
发帖
回帖
粉丝
16
顾何 最后,希望对逆向,或者威胁情报感兴趣的同学明白喜欢的到底是什么。逆向并不是一个学科,只是一门技术。在此技术基础上,可以选择深耕软件破解、木马分析、漏洞挖掘、安全研发等多个方向。所以首先需要确定喜欢的的 ...
感谢
2021-3-9 14:02
0
雪    币: 1058
活跃值: (1187)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
17
感谢分享
2021-3-9 15:08
0
雪    币: 185
活跃值: (6679)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
18
PC端反病毒研发方向呢?
2021-3-30 11:53
0
雪    币: 243
活跃值: (3331)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
19
vt是什么,网站么
2022-7-15 14:18
0
雪    币: 968
活跃值: (6853)
能力值: (RANK:462 )
在线值:
发帖
回帖
粉丝
20
wx_好一脚头球 vt是什么,网站么
https://www.virustotal.com/
恶意代码分析时的常用网站,可快速的查询样本的基本信息
2022-7-15 21:12
0
雪    币: 243
活跃值: (3331)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
21
顾何 https://www.virustotal.com/ 恶意代码分析时的常用网站,可快速的查询样本的基本信息
谢谢
2022-7-17 18:06
0
雪    币: 535
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
22
感谢 收藏了
2024-6-24 17:12
0
雪    币: 775
活跃值: (366)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
23
收藏收藏
2024-11-30 16:53
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册