博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第1章 静态分析基础技术
阅读量:2061 次
发布时间:2019-04-29

本文共 992 字,大约阅读时间需要 3 分钟。

书中的例子

fakenet模拟网络的工具

1 使用反病毒引擎扫描

  • VirusTotal
  • VirScan

2 哈希值

winMD5.exe

计算文件的md5值,在线搜索

3 查找字符串

Strings.exe 下载页面

下载后解压,将exe放在C:\windows\system32下即可
Strings可查看PE文件中字符串,有助于推断出恶意代码的用途

4 加壳和混淆

加壳后的恶意程序打印的字符串很少

注意:加壳的恶意代码至少会包含LoadLibary 和 GetProcAddress两个API函数 ,它们用来加载和使用其它函数功能

4.1 文件加壳

加壳程序

4.2 PEiD检测加壳

UPX加壳工具 官网

脱壳
upx.exe -d pefile

5 PE文件格式

PE portable File Format(可移植文件) dll exe

6 链接库和函数

PE文件的导入表 其它文件的函数 链接在主函数中

6.1 链接分类

  • 静态链接: 将库中的代码复制到可执行代码中
  • 运行时链接:在程序运行中,需要时链接相应的库
    通常会使用LoadLibrary和GetProcAddress两个函数,可访问系统中任意库中的任意函数 恶意代码常用
  • 动态连接: 在程序被装载入内存时,链接相应的库,windows下最常用
    PE头中的导入表中存储有引用的库和函数信息

6.2 动态链接库

Dependency Walker

常见的DLL
windows API的命令规范
A ansi版本的api
W unicode版本的api
Ex 后面扩展的api
如MessageBoxW MessageBoxA CreateWindowEx

6.3 导入函数

PE头中包含文件使用的特定函数相关信息

6.4 导出函数

用来提供给其它程序使用的函数信息

7 静态分析技术实践

8 PE文件头

PE节
使用python 解析PE文件,
#-*- coding:utf-8 -*-import pefile,sys#输出文件的PE头部信息print(pefile.PE(sys.argv[1]))
PE文件格式

PE文件格式可参考这个

8.2 使用resourcehacker工具查看资源节

8.3 其它的PE工具

PEBrowse Pro

PE Explorer

8.4 PE文件头

image.png

转载地址:http://zeqlf.baihongyu.com/

你可能感兴趣的文章
Python 格式化打印json数据(展开状态)
查看>>
解决windows下libcurl中curl_formadd()的CURLFORM_FILENAME使用中文导致post失败的问题
查看>>
Centos7 安装curl(openssl)和libxml2
查看>>
Centos7 离线安装RabbitMQ,并配置集群
查看>>
Centos7 or Other Linux RPM包查询下载
查看>>
运行springboot项目出现:Type javax.xml.bind.JAXBContext not present
查看>>
Java中多线程向mysql插入同一条数据冲突问题
查看>>
Idea Maven项目使用jar包,添加到本地库使用
查看>>
FastDFS集群架构配置搭建(转载)
查看>>
HTM+CSS实现立方体图片旋转展示效果
查看>>
FFmpeg 命令操作音视频
查看>>
问题:Opencv(3.1.0/3.4)找不到 /opencv2/gpu/gpu.hpp 问题
查看>>
目的:使用CUDA环境变量CUDA_VISIBLE_DEVICES来限定CUDA程序所能使用的GPU设备
查看>>
问题:Mysql中字段类型为text的值, java使用selectByExample查询为null
查看>>
程序员--学习之路--技巧
查看>>
解决问题之 MySQL慢查询日志设置
查看>>
contOS6 部署 lnmp、FTP、composer、ThinkPHP5、docker详细步骤
查看>>
TP5.1模板布局中遇到的坑,配置完不生效解决办法
查看>>
PHPstudy中遇到的坑No input file specified,以及传到linux环境下遇到的坑,模板文件不存在
查看>>
TP5.1事务操作和TP5事务回滚操作多表
查看>>