• 总有一朵花是你 美丽中国《美的人》 2019-07-17
  • 【医院抢钱】没商量,【火葬场烧人】没商量。。。[调皮] 2019-07-16
  • 深化殡葬改革 推进移风易俗 胡世忠主持座谈会 2019-07-16
  • 凝聚合作共赢的价值公约数 2019-07-15
  • 2018丹寨万达小镇轮值镇长评选 2019-07-15
  • 三十二万多人取得社会工作者职业资格 2019-07-13
  • 粳米-热门标签-华商生活 2019-07-13
  • “走遍秦皇岛”有效破解城管难题 2019-07-09
  • 《今天我学习》第一集:如何理解党的十九大的鲜明主题 2019-07-09
  • 古人清居生活是啥样?看看这些书画你就知道 2019-07-06
  • 新股上市发行的流通股只占总股本的25%,有些只占总股本的10%,留下了大小非大量减持的后遗症。可以说是带病上市,目的就是不断制造新生资产阶级。 2019-06-29
  • 伊万卡推文上的那句中国谚语,到底啥意思? 2019-06-29
  • 山东京博控股股份有限公司党委书记、董事长马韵升获第十二届人民企业社会责任奖年度人物奖 2019-06-28
  • 玉龙雪山、纳西风情…丽江旅游:卖的不是门票而是文化 未来积极融入东南亚旅游圈 2019-06-28
  • 墨西哥地震与球队进球民众跳跃啥关系?专家:无关 2019-06-25
  • 吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|北京快三走势图一定牛 www.88pwc.com

     找回密码
     注册[Register]

    QQ登录

    只需一步,快速开始

    搜索
    查看: 3848|回复: 30
    上一主题 下一主题

    3d基本走势图: [PC样本分析] 一款有意思的VB样本分析

      [复制链接]
    跳转到指定楼层
    楼主
    Assassin_ 发表于 2019-7-3 17:31 回帖奖励
    使用论坛附件上传样本压缩包时必须使用压缩密码?;?,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!

    一款有意思的VB样本分析

    前言

    北京快三走势图一定牛 www.88pwc.com VB - 这个本来不想分析的,不过这几天VB的木马程序逐渐增多,还是分析了。不过不分析还好,在分析的时候碰到一些有意思的东西,值得看一下。
    首先在看的时候,你需要知道一些东西,VB的一些基础和Windows调试器的一些原理,这个就很有意思的地方了,因为之前没遇到过。以上不了解也没关系,在文章中我会以最简单的话来说一下这些部分。

    分析

    样本信息

    文件名:uzi.exe
    样本大小: 600K
    MD5: D99D7FE10CC64F40C6168BFF11379292
    SHA-256: E14A7CDB3043FC278A1E34839A968D6E99B7D4755B8297C198E17A8DFE2D5CBE
    样本其他信息:

    环境与工具

    Windows32、OD、exeinfo、IDA、VB Decompiler、google

    初探

    这之前我看了一些VB相关的东西,但是感觉还是自己调试时,才能真正了解。
    首先将样本拖入VB Decompiler,观察整体结构,但是静态看并不能分析出什么有价值的东西,于是动态调试起来

    在调试过程中发现一些端倪

    这里存在一个DllFuntionCall,该函数为VB的API接口
    该接口首先会通过LoadLibrary和GetProcAddress动态获取其API地址


    这里我们看到一个关键函数
    EnumThreadWindows,该API会通过会调用程序定义的回调函数

    查看代码,回调函数为0x0046e99d

    查看回调,其实本能的就会发现这些代码肯定是有问题的

    狐狸尾巴

    找到这个回调直接下断点,运行,代码是结果膨胀的,而且还很多,至少中间几百行都是??吹难刍?。

    查找关键代码

    1. 找到??槭椎刂?br />
    2. 调用关键API,申请空间大小为0xB02C

    3. 拷贝代码
    4. 异或0x9A88393C 解码
    5. 解码后代码通过jmp eax调用

    self-debugging

    进入代码一路F7,不管乱跳的jmp,找到关键函数0x003B1423,该函数通过查找DllFuntionCall的API接口函数,动态调用API

    当看到这些API时,发现这些为调试器的API

    直接来到创建进程,可以清楚的看到进程是以调试状态运行的

    这里说一下调试器中比较重要的一个函数 WaitForDebugEvent

    该函数包含两个参数 BOOL WaitForDebugEvent(   LPDEBUG_EVENT lpDebugEvent,
    DWORD         dwMilliseconds );

    第一个参数为指针,表明事件类型
    第二个为等待调试事件的事件,一般为INFINITE

    其中第一个参数指向一个结构体
    DEBUG_EVENT typedef struct _DEBUG_EVENT {   DWORD
    dwDebugEventCode;   DWORD dwProcessId;   DWORD dwThreadId;   union {
    EXCEPTION_DEBUG_INFO      Exception;
    CREATE_THREAD_DEBUG_INFO  CreateThread;
    CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
    EXIT_THREAD_DEBUG_INFO    ExitThread;
    EXIT_PROCESS_DEBUG_INFO   ExitProcess;
    LOAD_DLL_DEBUG_INFO       LoadDll;
    UNLOAD_DLL_DEBUG_INFO     UnloadDll;
    OUTPUT_DEBUG_STRING_INFO  DebugString;
    RIP_INFO                  RipInfo;   } u; } DEBUG_EVENT, *LPDEBUG_EVENT;

    第一个参数为事件码 第二三个参数为进程、线程ID
    最后一个为共用体,由第一参数决定,基本每种事件来,都会有与之对应的一个结构体,可以获取相应的信息,这里就不展开了。

    接下来我们看样本的具体操作
    查看调试器主体部分,已经采用注释

    可以看到该基本所有来的事件都是通过ContinueDebugEvent 放过去了。
    主要关注内存访问异常
    首先获取ntdll??榈牡刂?,与获取异常的??榈刂方斜冉?,如果大于等于的话,就直接修改内存地址为可读可执行



    我们猜测该调试程序如果直接调试可能通过引起内存访问异常,进而调试失败。

    调试被调试程序

    首先,找到调试开关,还是比较明显的

    我们首先把ntdll ??榈氖粜孕薷奈?x40,防止那个内存访问异常(内存访问异??赡懿换岬?,我调试过程中,存在访问异常,之后再复现的时候,死活不出现访问异常了)
    找到自身??榈刂?,并找到加密代码

    代码复制解码

    密钥解码

    二者最后xor运算

    解码之后得到一个PE文件

    再次创建进程,以挂起的形式进行创建

    之后就是常规操作了
    ??樾对?br />

    申请空间,大小为A200

    代码写入

    获取进程上下文


    设置进程上下文

    最后恢复进程并退出

    RAT

    该RAT为一个LOKI.bot,该文件文件具有信息窃取和键盘记录等功能,该RAT有时间再分析,很规矩rat,如果有兴趣,可以自行研究,不过之后应该也会写关于这个的相关报告。

    总结

    总体主要是有调试器的参与,其他比较基础,适合新手。

    附件:52pojie
    sample.zip (191.44 KB, 下载次数: 26)

    免费评分

    参与人数 16吾爱币 +13 热心值 +15 收起 理由
    gym_168 + 1 + 1 用心讨论,共获提升!
    RyanEdward + 1 我很赞同!
    13180707766 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
    fx_hong + 1 用心讨论,共获提升!
    daniel7785 + 1 热心回复!
    zys_ + 1 + 1 我很赞同!
    VicZ + 1 + 1 感谢分享
    siuhoapdou + 1 + 1 谢谢@Thanks!
    zx618 + 1 + 1 谢谢@Thanks!
    树上有猫丶 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
    抄经大弟子 + 1 + 1 热心回复!
    sudiasuka + 1 + 1 谢谢@Thanks!
    luoxiaosan + 1 用心讨论,共获提升!
    笙若 + 1 + 1 谢谢@Thanks!
    为海尔而战 + 1 + 1 技术分享,向大牛致敬!
    hexie666 + 1 + 1 我很赞同!

    查看全部评分

    发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

    推荐
    hxp.china.sh 发表于 2019-7-16 16:41
    我有个VB写的工具,这个工具一运行就报个窗口,消息是不在服务期内,不能使用,确定后就关闭了。OD载入,运行,跳出窗口,F12暂停,ALT+k或ALT+F9都不能返回到程序领空上面,一直在user32调用循环,一直不能返回用户代码,有什么好方法吗?。?!跳过这个窗口能正常运行登陆进去。。
    推荐
    fxinyi 发表于 2019-7-10 10:52
    自己平常也用VB写一些小东西,但很少自己去这样分析,看来以后把自己写的再反分析一下,也是一个不错的学习方法 ,感谢破友分享,收藏学习.
    头像被屏蔽
    沙发
    hexie666 发表于 2019-7-3 18:58
    3#
    NB2665597272 发表于 2019-7-3 21:20
    可以加精了
    4#
    lovejoan 发表于 2019-7-4 08:18
    这年代了还有人用VB写木马~~估计是重操旧业的吧
    5#
    x163326 发表于 2019-7-4 09:28
    这么古董了呀?
    6#
    Joduska 发表于 2019-7-4 10:20
    希望多分享分析流氓软件
    7#
    uulive 发表于 2019-7-4 10:25
    谢谢,我来学习一下。
    8#
    yeqiang163 发表于 2019-7-4 13:34
    古董木马啊 学习了!
    9#
    jim19 发表于 2019-7-5 01:07
    前排 很不错?。。。?!
    10#
    单调的调调 发表于 2019-7-5 07:22
    这个必须支持楼主
    您需要登录后才可以回帖 登录 | 注册[Register]

    本版积分规则 警告:禁止回复与主题无关内容,违者重罚!

    快速回复 收藏帖子 返回列表 搜索

    RSS订阅|小黑屋|联系我们|北京快三走势图一定牛 ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

    GMT+8, 2019-7-22 03:29

    Powered by Discuz!

    © 2001-2017 Comsenz Inc.

    快速回复 北京快三走势图一定牛 返回列表
  • 总有一朵花是你 美丽中国《美的人》 2019-07-17
  • 【医院抢钱】没商量,【火葬场烧人】没商量。。。[调皮] 2019-07-16
  • 深化殡葬改革 推进移风易俗 胡世忠主持座谈会 2019-07-16
  • 凝聚合作共赢的价值公约数 2019-07-15
  • 2018丹寨万达小镇轮值镇长评选 2019-07-15
  • 三十二万多人取得社会工作者职业资格 2019-07-13
  • 粳米-热门标签-华商生活 2019-07-13
  • “走遍秦皇岛”有效破解城管难题 2019-07-09
  • 《今天我学习》第一集:如何理解党的十九大的鲜明主题 2019-07-09
  • 古人清居生活是啥样?看看这些书画你就知道 2019-07-06
  • 新股上市发行的流通股只占总股本的25%,有些只占总股本的10%,留下了大小非大量减持的后遗症。可以说是带病上市,目的就是不断制造新生资产阶级。 2019-06-29
  • 伊万卡推文上的那句中国谚语,到底啥意思? 2019-06-29
  • 山东京博控股股份有限公司党委书记、董事长马韵升获第十二届人民企业社会责任奖年度人物奖 2019-06-28
  • 玉龙雪山、纳西风情…丽江旅游:卖的不是门票而是文化 未来积极融入东南亚旅游圈 2019-06-28
  • 墨西哥地震与球队进球民众跳跃啥关系?专家:无关 2019-06-25
  • 体育彩票走势图31选7 下载诈金花 广西十一选五走势 52棋牌真人游戏 天津11选5玩法规则 曾道人点特玄机黑白图 时时彩四星复式怎么玩 新疆十一选五助手下载 3d试机号分析麦久彩票网 体彩顶呱刮单张彩票最高可中 陕西陕西十一选五一定牛走势图 双色球福彩官方网 体彩20选5基本走势图 爱彩乐走势图 辽宁省福利彩票中心主任