• 03 复制行为动态分析


    (很久以前的学习记录,放到博客上来)

    下载新的exe继续逆向,下载时就被360 safe隔离了,放行拉出来。

    运行结果:

    图片

    查看Process Monitor,结果与之前类似,在查注册表,CreateFile:

    图片
    图片
     
     在C:UsersasusAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup处找到原来exe拷贝到C盘下的wsample01b.exe

    拖到ollydbg中反汇编:

    00401000    55              PUSH EBP
    00401001    8BEC            MOV EBP,ESP
    00401003    B8 04200000     MOV EAX,2004
    00401008    E8 D3080000     CALL wsample0.004018E0
    0040100D    A1 00304000     MOV EAX,DWORD PTR DS:[403000]
    00401012    33C5            XOR EAX,EBP
    00401014    8945 FC         MOV DWORD PTR SS:[EBP-4],EAX
    00401017    68 00100000     PUSH 1000
    0040101C    8D85 FCDFFFFF   LEA EAX,DWORD PTR SS:[EBP-2004]
    00401022    50              PUSH EAX
    00401023    6A 00           PUSH 0
    00401025    FF15 04204000   CALL DWORD PTR DS:[<&KERNEL32.GetModuleF>; KERNEL32.GetModuleFileNameW
    0040102B    8D8D FCEFFFFF   LEA ECX,DWORD PTR SS:[EBP-1004]
    00401031    51              PUSH ECX
    00401032    6A 00           PUSH 0
    00401034    6A 00           PUSH 0
    00401036    6A 07           PUSH 7
    00401038    6A 00           PUSH 0
    0040103A    FF15 B4204000   CALL DWORD PTR DS:[<&SHELL32.SHGetFolder>; SHELL32.SHGetFolderPathW
    00401040    68 14214000     PUSH wsample0.00402114                   ; UNICODE "wsample01b.exe"
    00401045    8D95 FCEFFFFF   LEA EDX,DWORD PTR SS:[EBP-1004]
    0040104B    52              PUSH EDX
    0040104C    FF15 08204000   CALL DWORD PTR DS:[<&KERNEL32.lstrcatW>] ; KERNEL32.lstrcatW
    00401052    6A 00           PUSH 0
    00401054    8D85 FCEFFFFF   LEA EAX,DWORD PTR SS:[EBP-1004]
    0040105A    50              PUSH EAX
    0040105B    8D8D FCDFFFFF   LEA ECX,DWORD PTR SS:[EBP-2004]
    00401061    51              PUSH ECX
    00401062    FF15 00204000   CALL DWORD PTR DS:[<&KERNEL32.CopyFileW>>; KERNEL32.CopyFileW
    00401068    8B4D FC         MOV ECX,DWORD PTR SS:[EBP-4]
    0040106B    33CD            XOR ECX,EBP
    0040106D    33C0            XOR EAX,EAX
    0040106F    E8 2F000000     CALL wsample0.004010A3
    00401074    8BE5            MOV ESP,EBP
    00401076    5D              POP EBP
    00401077    C3              RETN
     

    看到四句call调用的函数:GetModuleFileNameW ,SHGetFolderPathW ,  lstrcatW , CopyFileW

     最后的CopyFileW可能就是用来复制wsample01b.exe本身的。

     00401000处下断点调试:

    图片

    F8单步跳出执行指令,到 00401062    FF15 00204000   CALL DWORD PTR DS:[<&KERNEL32.CopyFileW>>; KERNEL32.CopyFileW
     
    单步跳出执行,可以看到ollydbg中当前栈的变化,显示出了要复制文件源路径和目标路径

    图片 

    0019DED8   0019DEE4  UNICODE "F:wsample01b.exe"
    0019DEDC   0019EEE4  UNICODE "C:UsersasusAppDataRoamingMicrosoftWindowsStart MenuProgramsStartupwsample01b.exe"
  • 相关阅读:
    PKG_COLLECTION_LHR 存储过程或函数返回集合类型
    【Linux】将Oracle安装目录从根目录下迁移到逻辑卷
    【故障处理】ORA-28040: No matching authentication protocol
    【故障处理】队列等待之enq IV
    【故障处理】告警日志报“ORA-01565 Unable To open Spfile”
    【故障处理】一次RAC故障处理过程
    小麦苗健康检查脚本说明
    【密码】Oracle用户密码系列
    【ASM】ASMSNMP用户已存在
    【故障处理】CRS-1153错误处理
  • 原文地址:https://www.cnblogs.com/lsh123/p/7859232.html
Copyright © 2020-2023  润新知