最新文章

程序分析 - task8

程序分析-task8程序流程分析首先通过start函数找到WinMain函数其中,能看到他要寻找资源文件,那么也就直接说明了资源文件还有东西,实际上是个没有被加密的dll代码,理论上Binwalk可以分离出来,这里我用静态winhex分离和动态直接取到他释放的做了对比,是一样的,所以这里没什么要注意
2019-12-26 / 1 comments

程序分析 - task7

程序分析-task7程序流程仅就UPX脱壳而言难度不大,可以单步解压缩或者ESP定律直接脱壳。单步解压缩主要是模拟程序运行每步直到程序完整解压完成进入OEP执行ESP定律是使用的栈平衡原理,当一开始的时候和结束的时候一定会还原现场保证寄存器和栈空间的平衡,来进行快速解压缩壳这道题如果是脱壳的话还是比
2019-12-23 / 0 comments

程序分析 - task9

程序分析-task9有人想看就提前发程序分析主体程序流程主体程序加壳UPX3.08,壳上稍微做了修改导致自动解压的时候有问题,不过使用手动方式让其解压之后带壳调试,顺便dump一份代码到IDA对比查看还是可以的。dump出来的文件内容远小于解压前的文件内容,说明该文件有资源段,资源段存有数据。从DI
2019-12-07 / 0 comments

程序分析 - task6

程序分析-task6程序流程查看文件区段信息,能够看到有tls段,那说明可能有TLScallback函数,线程回调函数会在线程启动和终止的时候被触发,触发之后根据条件判断是否执行线程回调的代码。主线程也算线程,所以主线程之前也会触发一次TLS回调函数,多用于反调试反虚拟机,在Linux中是init段
2019-12-07 / 0 comments

程序分析 - task5

程序分析-task5程序分析程序主体中有一点简单的混淆,也就是脏字节4个,nop掉就好了,能正确的看到程序逻辑基本上图中见到的函数在判断完之后都会解密一次代码检测的内容如上图,大致为:IsDebuggerPresentBeingDebuggedsofticeVMXh-VMwareSetLastErr
2019-12-07 / 0 comments

程序分析 - task4

程序分析-task4程序流程程序的起始点在.reloc段,应该是被改过的首先会进入与他相邻的sub_407012函数。sub_407012函数.reloc:00407012sub_407012procnear;CODEXREF:start+2↑p.reloc:00407012.reloc:00407
2019-11-07 / 0 comments

程序分析 - task3

程序分析-task3流程分析程序使用了大量的GetLastError来混淆,没太见过这种玩法的,得去查一下,不过去完混淆的代码图如下很清晰。start函数的内容为:write_file函数内容为:主程序中两个关键函数的大致内容就是,在运行的时候先修改一些不太重要的资源文件(图标等),之后向系统目录释
2019-11-01 / 0 comments

常见四种病毒感染方式

病毒感染方式主要都是PE感染,这里看到网上比较常见的几种感染方式总结。0x01添加新节区感染基本流程:检查SectionHeader表,看有无空间放下一个新的节区表一个IMAGE_SECTION_HEADER的结构体大小为40字节如果满足则添加新节区,修改import表信息,修改EntryPoint
2019-10-31 / 0 comments

程序分析 - task2

程序分析-task2程序分析首先,这好像是一个Delphi写的动态链接库。查询了一下Dllmain与DllEntryPoint之间的区别,大概是VC++的工程里入口函数叫做DLLMain,在其他编译器里叫做DllEntryPoint。然后载入程序进入DLLMain能看到如下界面:CreateSema
2019-10-30 / 0 comments

程序分析 - task1

程序分析-task1文件信息流程分析程序没法调试,缺少了一个库,名字为Adsnds.dll,路径为C:\Adsnds.dll,但是问题不大,尝试静态分析,唯一不太好的一点就是start函数一开始调用的第一个函数的第一个参数没法动态调试的时候确定了,IDA中使用了xref功能,并没有找到相关的索引首先
2019-10-29 / 1 comments