windows下分析恶意代码工具列表
windows工具
尽量从官网下载工具
工具
火绒剑
Resource Hacker
使用Resource Hacker来查看资源节
Windows®应用程序的免费资源编译器和反编译器
http://www.angusj.com/resourcehacker/
Process Monitor
Process Monitor是Windows的高级监视工具,可显示实时文件系统,注册表和进程/线程活动。微软官方出品
进程监视器-Windows Sysinternals | 微软文档
https://docs.microsoft.com/en-us/sysinternals/downloads/procmon
Process Explorer v16.30
https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer
Process Hacker
监视系统资源,调试软件和检测恶意软件。
和ProcessExplorer有点像。
官网:Overview - Process Hacker
https://processhacker.sourceforge.io/
CFF
查看PE文件
下载– NTCore
https://ntcore.com/?page_id=345
exeinfope
查壳
调试器
IDA
IDAPython脚本
IDA插件:FindCrypt2查找加密算法的常量
IDA的熵指插件:ida-ent.plw
Windbg
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/debugger/debugger-download-tools
开始菜单-》windows kit-》Windbg
WinDbg 命令三部曲:(一)WinDbg 命令手册 - 匠心十年 - 博客园
https://www.cnblogs.com/gaochundong/p/windbg_cheat_sheet.html
OllyDbg的OllyDump插件,脱壳,可以转储当前进程分内存,搜索加壳可执行文件的OEP
OllyDbg的LoadDll.exe,调试DLL
如何在对API函数(如MessageBoxA)的调用上设置断点?-这很简单。打开命令行(Alt + F1)并键入“ BPX MessageBoxA”,或在Disassembler中搜索所有迭代模块调用,单击对MessageBoxA的任何调用,并在每次对该函数的调用上设置断点。
BPX一般中断在程序调用API的地址处。BP会中断在API的写入地址处。二这有所不同,根据需要选择。
IDR(交互式Delphi重构器)
ImpRec
修复一个加壳的导入表
ProcDump
微软提供的一个命令行实用程序,用来转储一个Windows进程分内容。优点是在不停止进程或调试进程的情况下转储进程中的内存。
https://docs.microsoft.com/en-us/sysinternals/downloads/procdump
获取system权限:PSTools
参考链接:https://www.jianshu.com/p/1e48b3a24e31
以管理员身份启动cmd,使用以下命令即可以System用户启动任务管理器。
PsExec -i -s -d cmd
Autoruns for Windows - Windows Sysinternals 查看启动项
https://docs.microsoft.com/en-us/sysinternals/downloads/autoruns
API Monitor是一个免费软件,可以让你监视和控制应用程序和服务,查看API调用。
http://www.rohitab.com/apimonitor
Detours
Detours是微软提供的一个开发库,使用它可以简单、高效、稳定(呵呵)地实现API HOOK的功能。
DetourAttach((void **)&OldMessageBoxW, NewMessageBoxW);//实现函数拦截
养成看github的issue的习惯
PVOID
https://blog.csdn.net/u012370255/article/details/28257043
PVOID等效于void * —无类型指针
https://stackoverflow.com/questions/56305389/ms-detours-detourattach-fails
WINAPI
WINAPI 是这样定义的
#define WINAPI __stdcall
__stdcall 是一种函数参数传递压栈顺序和堆栈平衡的约定
因为在windows编程中默认的参数传递都是__stdcall方式的
没有什么问题的。
void* (void * BindKeyT)(const char* key) = actual_BindKeyT;// actual_BindKeyT is a pointer to a function that will be defined elsewhere,
// and whose declaration you will include in your project through a header file
// or a dll importvoid * BindKeyD(const char* key)
{// Code for your hook function
}DetourAttach(&(PVOID&)BindKeyT, BindKeyD);
LPSTR和LPWSTR是Win32和VC++所使用的一种字符串数据类型。LPSTR被定义成是一个指向以NULL(‘\0’)结尾的32位ANSI字符数组指针,而LPWSTR是一个指向以NULL结尾的64位双字节字符数组指针。
'L’代表Long,'P’代表Pointer(指针),'STR’表示String。
https://baike.baidu.com/item/LPSTR/9782867
LONG WINAPI DetourAttach(_Inout_ PVOID *ppPointer,_In_ PVOID pDetour)
{return DetourAttachEx(ppPointer, pDetour, NULL, NULL, NULL);
}
spy++
visual stdio自带
查看句柄
inspect.exe
Inspect.exe是一个基于Windows的工具,使您可以选择任何UI元素并查看该元素的可访问性数据。
Windows软件开发工具包(SDK)已安装Inspect。它位于SDK安装路径(Inspect.exe)的\ bin \ < 版本 > \ < platform >文件夹中。
https://docs.microsoft.com/en-us/windows/win32/winauto/inspect-objects
C:\Program Files (x86)\Windows Kits\10\bin\
LookHandles
操作Windows句柄
MFCSPY可以方便反编译MFC程序,大概只支持到vc6.0,
其后续版本xspy,链接为https://github.com/lynnux/xspy/releases
不常用
VirusTotal
在线反病毒引擎
TCPView
TCPView将显示系统上所有TCP和UDP端点的详细列表
OSP Driver Loader
加载驱动
DependencyWalker可以用来查看dll或exe依赖的dll文件。简称depends
官网http://www.dependencywalker.com/的是2006年的版本
在win10上可能不能正常运行,在win7下可正常运行
使用Dependency Walker对x86可执行文件进行性能分析在Windows 7 x64上挂起-代码日志
https://stackoverflow.com/questions/8832936/profiling-x86-executable-with-dependency-walker-hangs-on-windows-7-x64/36049618#36049618
查看进程依赖那个dll,linux使用ldd命令。
查看dll中有哪些导出函数windows使用dumpbin,linux使用objdump查看so中有哪些函数。
查看dll中符号的地址使用nm。
ApateDNS
显示DNS请求,模拟DNS
https://www.fireeye.com/services/freeware.html
https://www.fireeye.com/services/freeware/apatedns-download-confirmation.html
Regshot
注册表快照
regshot download | SourceForge.net
https://sourceforge.net/projects/regshot/
查询DNS的网站:
DomainTools(http://whois.domaintools.com/ )–>whois历史记录的查询,能够进行反向IP查询,国内不可访问
RobTex(http://www.robtex.com) 单个IP地址指向的多个域名信息
BFK DNS logger(http://www.bfk.de/bfk_dnslogger_en.html)DNS检测信息
Sysinternals
https://docs.microsoft.com/en-us/sysinternals/
PE Explorer
Portmon
在win10上无法运行。
Portmon是一个实用程序,用于监视和显示系统上的所有串行和并行端口活动。
Windows的Portmon-Windows Sysinternals | 微软文档
https://docs.microsoft.com/en-us/sysinternals/downloads/portmon
RootkitRevealer-Windows Sysinternals | Windows Server 2003 微软文档
https://docs.microsoft.com/en-us/sysinternals/downloads/rootkit-revealer
2006年的程序,在win10上无法运行。
由于永久rootkit通过更改API结果来工作,因此使用API的系统视图与存储中的实际视图不同,因此RootkitRevealer会将最高级别的系统扫描结果与最低级别的系统扫描结果进行比较。最高级别是Windows API,最低级别是文件系统卷或注册表配置单元的原始内容(配置单元文件是注册表的磁盘存储格式)。因此,RootkitRevealer会将Rootkit(无论是用户模式还是内核模式)操纵Windows API或本机API从目录列表中删除它们的存在,都将被视为Windows API返回的信息与所见信息之间的差异。在FAT或NTFS卷的文件系统结构的原始扫描中。
PEID查壳,KANAL插件用来从PE文件中找出普遍使用的加密算法
ASPack 壳,可用AspackDie脱之
yoda’s Protector 脱壳机:stanko_popov@abv.bg
UPX加壳与脱壳
PEBrowse Professional
查看PE文件
http://www.smidgeonsoft.prohosting.com/
windows下分析恶意代码工具列表相关推荐
- windows下 Source Monitor代码度量工具的使用
windows下 Source Monitor代码度量工具的使用 引用链接: https://www.cnblogs.com/xuehanyu/p/4520965.html 1.总体介绍 Source ...
- Windows下的包管理工具scoop
Windows下的包管理工具scoop 包管理工具? 顾名思义就是程序软件包的安装工具,可以管理操作系统上的软件,我们熟知的Ubuntu上的apt-get(在Ubuntu16以上可以直接用apt了), ...
- Windows下安装自动化部署工具Fabric
Windows下安装自动化部署工具Fabric 部署应用程序用FTP还是SCP还是rsync复制文件?如果你需要手动复制,用一次两次还行,一天如果部署50次不但慢.效率低,而且容易出错. 正确的部署方 ...
- windows下的命令行工具babun
Babun 可以直接在winodows下面编译linux代码 但是本人只成功编译过个个go的linux 和 C的linux,C++的编译不出来东西 安装很简单,下下来,直接双击批处理 install ...
- windows下安装node版本管理工具及nvm use切换不成功问题解决
windows下安装node版本管理工具及nvm use切换不成功问题解决 参考文章: (1)windows下安装node版本管理工具及nvm use切换不成功问题解决 (2)https://www. ...
- 【包管理工具】Windows下的软件包管理工具Chocolatey介绍、安装软件出现错误的解决方法
文章目录 1. Chocolatey是什么? 2. 为什么要使用Chocolatey? 3. 如何下载Chocolatey? 4. 如何使用Chocolatey? 5. 示例一:使用Chocolate ...
- linux/windows下udp测试小工具
原文:https://www.zendstudio.net/archives/tcp-udp-socket-toolkit/ 还记得我在好久好久之前和你们推荐的Fiddler和Charles debu ...
- Windows下好用的工具集合
TeraCopy 描述:windows下快速复制文件的工具.特别是在大量文件拷贝时,微软自带的复制功能比较慢,且容易卡死. 官方地址:http://codesector.com/downloads L ...
- cscript 执行代码_在Windows上执行恶意代码 by cscriptmshta
Windows自带的可执行文件+合理构造的payload脚本=获得会话 cscript 简介 在cscript.exe来寻找和连接脚本的运行库,最常见的有VBScript和JavaScript. WS ...
最新文章
- 【原创】多台电脑如何公用一个键盘鼠标进行操作 - Mouse with Borders 软件
- sql 集合查询 数据更新操作语句
- Leetcode怎么调试java代码,在Clion上调试LeetCode代码
- Mycat配置文件schema.xml的详解
- 多线程-threading和进程VS线程(python 版)
- java的compare to(),java – compare()和compareTo()之间有什么区别?
- ES6新特性_ES6语法糖-class中的getter和setter设置---JavaScript_ECMAScript_ES6-ES11新特性工作笔记038
- found linux系统wget出现not_Java 9 AOT 试用:仅支持 64 位 Linux和java.base 模块编译
- sql serevr中脚本导出
- 【Hive】条件函数
- C#按Esc后退出对话框
- Ubuntu 下J2EE开发环境搭建
- HDU 1429--胜利大逃亡(续)【BFS amp;amp; 状态压缩】
- python Tk()、Frame()、TopLevel()用法
- msgpack在java和go中序列化的区别
- 流畅的python学习记录——第五章:一等函数
- 【Axure原型分享】自动编号的中继器表格
- html页面会出现浏览器崩溃,大规模WebGL应用引发浏览器崩溃的几种情况及解决办法...
- github相关问题
- 01 - Python 调用outlook发送邮件
热门文章
- 计算机视觉 图像分类简介
- 图像对齐深度学习算法调研
- 5G时代,App最重要的竞争力应该是什么?
- stata绘制roc曲线_使用Stata进行ROC曲线分析实例分析-roc曲线分析实例
- 问鼎CodeXGLUE榜单,华为云UniXcoder-VESO-v1算法取得突破
- 北大计算机博士有多难考,中国最难考的一所大学,博士生超过2万,是清华北大之和...
- 重磅!清华大学又迎来一位外籍院长
- unity android surface,安卓surfacetexture用unity显示
- 计算机网络之电子邮件系统
- YAML标准(什么是yaml)