• 评论员观察:70年正青春,不停步向未来 2019-10-12
  • 湖州:好山好水带来金山银山 2019-10-12
  • 陈冰阔腿裤演绎百变时尚 今年你穿阔腿裤了吗? 2019-10-02
  • 安徽“最美罚单”被质疑执法不公 专家称合规 2019-09-26
  • 彩虹之眼文章中国国家地理网 2019-09-24
  • (受权发布)中国人民政治协商会议第十三届全国委员会各专门委员会主任、副主任名单 2019-09-24
  • 北大附小四年级举行第一学期阅读工程启动仪式 2019-09-23
  • 领导干部要夯实履职尽责的“内功” 2019-09-23
  • 白岩松:媒体人要根据新闻事实选择合适表达方式 2019-09-21
  • 昌平线临铁四大盘究竟魅力何在?!跟我来踩盘一探究竟吧! ——凤凰网房产北京 2019-09-21
  • 图解:2017你的城市运动了么? 2019-09-16
  • 中国文化和旅游部严查严管营业性演出市场 2019-09-16
  • 亚冠-恒大2-2战平权健 高拉特双响帕托建功恒大遭淘汰 2019-09-15
  • 火箭杜兰特一口价恐被勇士打劫?纵有3绝技也给不起6千万 2019-09-14
  • 三亚市民投诉“蛙声扰民” 官方“神回复”引热评 2019-09-12
  • 吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|新疆喜乐彩开奖介绍 www.sl-36.com

     找回密码
     注册[Register]

    QQ登录

    只需一步,快速开始

    搜索
    查看: 8963|回复: 69
    上一主题 下一主题

    新疆体彩11选五开奖: [PC样本分析] 一款有意思的VB样本分析

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

    一款有意思的VB样本分析

    前言

    新疆喜乐彩开奖介绍 www.sl-36.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, 下载次数: 62)

    免费评分

    参与人数 23吾爱币 +20 热心值 +21 收起 理由
    狐尼克 + 1 + 1 谢谢@Thanks!
    snatch2null + 1 + 1 谢谢@Thanks!
    zxy126 + 1 + 1 谢谢@Thanks!
    柑桔 + 1 + 1 用心讨论,共获提升!
    L的追梦人生 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
    tyxajh + 1 我很赞同!
    gavin913 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
    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-10-16 15:02

    Powered by Discuz!

    © 2001-2017 Comsenz Inc.

    快速回复 新疆喜乐彩开奖介绍 返回列表
  • 评论员观察:70年正青春,不停步向未来 2019-10-12
  • 湖州:好山好水带来金山银山 2019-10-12
  • 陈冰阔腿裤演绎百变时尚 今年你穿阔腿裤了吗? 2019-10-02
  • 安徽“最美罚单”被质疑执法不公 专家称合规 2019-09-26
  • 彩虹之眼文章中国国家地理网 2019-09-24
  • (受权发布)中国人民政治协商会议第十三届全国委员会各专门委员会主任、副主任名单 2019-09-24
  • 北大附小四年级举行第一学期阅读工程启动仪式 2019-09-23
  • 领导干部要夯实履职尽责的“内功” 2019-09-23
  • 白岩松:媒体人要根据新闻事实选择合适表达方式 2019-09-21
  • 昌平线临铁四大盘究竟魅力何在?!跟我来踩盘一探究竟吧! ——凤凰网房产北京 2019-09-21
  • 图解:2017你的城市运动了么? 2019-09-16
  • 中国文化和旅游部严查严管营业性演出市场 2019-09-16
  • 亚冠-恒大2-2战平权健 高拉特双响帕托建功恒大遭淘汰 2019-09-15
  • 火箭杜兰特一口价恐被勇士打劫?纵有3绝技也给不起6千万 2019-09-14
  • 三亚市民投诉“蛙声扰民” 官方“神回复”引热评 2019-09-12
  • 今天江苏7位数开奖时间 500竟彩足球比分直播 彩乐乐彩票网 双色球开奖直播2019011 快3上海开奖结果查询 江西多乐彩历史开奖号码 介绍篮球的作文 甘肃快3官方 德甲20112012赛程 pk10万能倍投计算器 排列五万能七码走势图 安卓版彩票计划软件下载 广东26选5历史开奖结果 刮刮乐诀窍 重庆时时彩下载版