吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7998|回复: 8
收起左侧

[PC样本分析] Tear(窗口撕裂)

  [复制链接]
安静的小酒吧 发表于 2015-12-29 13:13
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!
本帖最后由 安静的小酒吧 于 2015-12-29 14:14 编辑

Tear(窗口撕裂)病毒分析--我在吾爱的第五个样本分析
安静的小酒吧
基本信息
样本名称:Tear(窗口撕裂).exe
样本来源:卡饭论坛(http://bbs.kafan.cn/thread-1861298-1-1.html
样本大小:52KB
MD5458CA58C53F2C8156A6E909E9431C68E
SHA-1C2928EBF61B97FC4603C61FC069F72309FE54F0C


感染现象:
直接上图,6的不行!还有撕裂的音效哦!
image1.png
image2.png
image3.png


行为分析
0x00 先查壳,VB写的
image4.png
0x01 VB的代码逆的不多,尤其不喜欢动态调试VB的程序,去爱盘下一个VB Decompiler,人进去直接看源码
image5.png
代码结构十分简单,简单分析之后结构如下:
绘图1.jpg
0x02 看到上面的流程图就很明白了吧,简单流程就是初始化完成后设置了一个2000ms的定时器,定时检查是否有可见的窗口,如果有就进行撕裂,然后Paly一个撕裂的音效。
0x03 撕裂窗口原理
         A.随机产生撕裂的形状,随机算法就不分析了
         
[Visual Basic .NET] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Dim var_12C As Global[/align]  loc_0040388A: On Error Resume Next
loc_004038B2: Randomize(10)//产生一个随机数
loc_004038D2: If var_407334 <> 0 Then GoTo loc_004038F0
loc_004038DE: var_eax = %cobj
loc_004038E4: var_16C = vbNullString
loc_004038EE: GoTo loc_004038FA
loc_004038F0: 'Referenced from: 004038D2
loc_004038F0: var_16C = vbNullString
loc_004038FA: 'Referenced from: 004038EE
loc_0040391B: var_7C = Global.Screen
loc_00403920: var_130 = var_7C
loc_0040397B: var_124 = Global.Width
loc_00403983: var_138 = var_124
loc_004039C9: If var_407334 <> 0 Then GoTo loc_004039E7
loc_004039D5: var_eax = %cobj
loc_004039DB: var_178 = vbNullString
loc_004039E5: GoTo loc_004039F1
loc_004039E7: 'Referenced from: 004039C9
loc_004039E7: var_178 = vbNullString
loc_004039F1: 'Referenced from: 004039E5
loc_00403A12: var_80 = Global.Screen
loc_00403A17: var_140 = var_80
loc_00403A7A: var_148 = Global.TwipsPerPixelX
loc_00403AD7: cdq
loc_00403AD8: idiv ecx
loc_00403ADA: var_4C = CLng(var_124)
loc_00403AFE: If var_407334 <> 0 Then GoTo loc_00403B1C
loc_00403B0A: var_eax = %cobj
loc_00403B10: var_184 = vbNullString
loc_00403B1A: GoTo loc_00403B26
loc_00403B1C: 'Referenced from: 00403AFE
loc_00403B1C: var_184 = vbNullString
loc_00403B26: 'Referenced from: 00403B1A
loc_00403B47: var_7C = Global.Screen
loc_00403B4C: var_130 = var_7C
loc_00403BA7: var_124 = Global.Height
loc_00403BAC: var_138 = var_124
loc_00403BEF: If var_407334 <> 0 Then GoTo loc_00403C0D
loc_00403BFB: var_eax = %cobj
loc_00403C01: var_190 = vbNullString
loc_00403C0B: GoTo loc_00403C17
loc_00403C0D: 'Referenced from: 00403BEF
loc_00403C0D: var_190 = vbNullString
loc_00403C17: 'Referenced from: 00403C0B
loc_00403C38: var_80 = Global.Screen
loc_00403C3D: var_140 = var_80
loc_00403CA0: var_148 = Global.TwipsPerPixelY
loc_00403CFD: cdq
loc_00403CFE: idiv ecx
loc_00403D00: var_54 = CLng(var_124)
loc_00403D60: var_44 = CLng(vbNullString)
loc_00403E5C: var_eax = GetWindowRect(hWin, var_64)//获取窗口的位置,并计算大小
loc_00403E7A: var_68 = var_5C - var_64
loc_00403E90: var_74 = var_58 - var_60

         B 撕裂效果的实现
          撕裂效果的实现使用了两个比较特殊的函数CreatePolygonRgnSetWindowRgn
[Visual Basic .NET] 纯文本查看 复制代码
1
2
loc_004063B6: var_eax = CreatePolygonRgn(edx+0000000Ch+var_384, var_24, 2)
 loc_004063EB: var_eax = SetWindowRgn(hWin, CreatePolygonRgn(edx+0000000Ch+var_384, var_24, 2), -1)

其中CreatePolygonRgn创建一个由一系列点围成的区域。windows在需要时自动将最后点与第一点相连以封闭多边形
SetWindowRgn设置了一个窗口的区域.只有被包含在这个区域内的地方才会被重绘,而不包含在区域内的其他区域系统将不会显示。其中最后一个参数为-1表示NULL,空值,这样的话就不会显示出来。
所以结合这两个函数的功能就可以知道,撕裂窗口原理是先产生一个封闭的包围,然后让这个封闭的包围不显示出来。
查杀方法
打开任务管理器,结束对应进程就可以。

小结
这是一个很小型的病毒样本,没有隐藏行为,没有太多的恶意感染现象,只是产生一个比较好玩的效果。
那么问题来了:这到底是算一个恶搞的软件还是一个病毒样本呢?
或许这就像好人和坏人的区别一样吧,两者之间并没有很明显的界限。只是你看的角度决定而已吧。

样本在这(解压密码:52pojie): Tear.zip (19.71 KB, 下载次数: 63)

免费评分

参与人数 4威望 +1 热心值 +3 收起 理由
hs258 + 1 我很赞同!
by丶小虫 + 1 用心讨论,共获提升!
C-FBI-QM + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩.
willJ + 1 感谢发布原创作品,吾爱破解论坛因你更精彩.

查看全部评分

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

520_ai_in@sina. 发表于 2015-12-29 13:24
卡法论坛...楼主打错字了
 楼主| 安静的小酒吧 发表于 2015-12-29 14:15
stupidjia 发表于 2016-1-31 15:03
病毒效果不错,虽然简单但是有意思,收藏之~~感谢楼主分享~~~
Windows10 发表于 2016-2-19 10:53
有点意思
zdfs530 发表于 2016-3-27 20:52
看帖回复一下
MAXtoDEATH 发表于 2016-4-4 13:04
如果对Decompiler做好反调,做好容错处理与字符变形加密的话。。。
by丶小虫 发表于 2016-4-18 20:59
谢谢楼主的分享
6fingers 发表于 2016-8-7 22:18
好有意思的病毒
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-3-27 07:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表