文章分类 | 软件分类 | 最新软件 | 杀毒软件 | 实用软件  | MTV下载  | 设为首页 |
  | 下载分类 | 最近更新
您的位置: 首页 >> 文章首页 >> 技术开发 >> .Net 专栏 >> ASP.NET技巧 >>  
ASP.NET技巧点击TOP10
·ASP.NET 2.0中使用自定义provider2006-2-10 12:49:07
·灵活正确的实现.NET插件机制2006-2-10 12:42:54
·asp.net如何生成图片验证码(简单)2006-2-10 12:24:18
·如何保证web app中的Send Email线程稳定性2006-2-10 12:00:59
·.NET环境下几种不同的邮件发送解决方案2006-2-10 12:00:59
·如何获取当前程序文件的路径 Current Path2006-2-10 12:46:13
·在Asp.net中为图像加入版权信息2006-2-10 12:42:56
·关于用ASP.Net识别远程主机服务器种类2006-2-10 12:02:36
·web中,如何读取Word内容(包含表格,但不包含图片)并且显示在页面中或保存进数据库中2006-2-10 12:00:57
·asp.net开发wap程序必备:识别来访手机品牌型号2006-2-10 12:46:17
.Net 专栏点击TOP10
·ADO.net中数据库连接方式2006-2-9 17:35:03
·ASP.NET里的事务处理2006-2-5 12:41:30
·使用Web服务将C#代码转换为VB.NET代码2006-2-9 18:10:39
·十天学会ASP.net之第九天2006-2-6 10:10:06
·如何给DataGrid添加双题头分类显示2006-2-5 18:46:43
·使用嵌套的Repeater控件2006-2-5 12:41:52
·Net 下安装、调试的常见问题与错误2006-2-9 9:04:53
·在ASP.NET中值得注意的两个地方2006-2-9 16:40:07
·C#中的非安全编程2006-2-9 17:32:38
·ASP.NET中利用cookies保持客户端信息2006-2-9 17:33:25

 

关于用ASP.Net识别远程主机服务器种类
作者:我去下载           时间:2006-2-10 12:02:36


这几天做ASP.Net追捕,也算是我入门吧。思路很简单,主要就是识别远程主机传回的Banner,判断远程主机服务器。这可能不够准确,因为合格的管理员可能会去修改Banner。

代码如下(从我的Web追捕里找出来的,用VB.Net)

            Dim swWriter As StreamWriter
            '用以向网络基础数据流传送数据
            Dim nsStream As NetworkStream
            '创建发送数据的网络基础数据流
            Dim tcpClient2 As TcpClient
            '通过它实现向远程主机提出TCP连接申请
            Dim sHostName As String
            Dim srRead As StreamReader
            '从网络基础数据流中读取数据
            'HTTP服务追捕
            If TcpConnect(ZSIP, 80) = "CG" Then
                OppHTTP.Text = "HTTP服务已开启!服务软件类型:未知"
                Try
                    'tcpClient = New TcpClient(IPAddress, Port)
                    tcpClient2 = New TcpClient(ZSIP.ToString(), 80)
                    tcpClient2.ReceiveTimeout = 1000000
                    tcpClient2.SendTimeout = 1000000
                    '对远程主机的8000端口提出TCP连接申请
                    nsStream = tcpClient2.GetStream()
                    '通过申请,并获取传送数据的网络基础数据流
                    swWriter = New StreamWriter(nsStream)
                    swWriter.WriteLine("Get /index.htm HTTP/1.1")
                    swWriter.WriteLine("Host:" & IP.Text)
                    swWriter.WriteLine("Accept:*/*")
                    swWriter.WriteLine("Referer:")
                    swWriter.WriteLine()
                    '刷新当前数据流中的数据
                    swWriter.Flush()
                    srRead = New StreamReader(nsStream, Encoding.Default)
                    '以得到的网络基础数据流来初始化StreamReader实例
                    Dim L As Integer = 0
                    Do While Not srRead.Peek = -1 And L < 20
                        StrHttp = StrHttp & srRead.ReadLine()
                        L = L + 1
                    Loop
                    If InStr(StrHttp, "IIS") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:IIS 版本未知"
                        SystemFW = "WindowsNT/2000/XP/2003"
                    End If
                    If InStr(StrHttp, "Apache") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 版本未知"
                    End If
                    If InStr(StrHttp, "Netscape-Enterprise") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Netscape-Enterprise 版本未知"
                    End If
                    If InStr(StrHttp, "Microsoft-IIS/5.0") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:IIS 5.0"
                        SystemFW = "Windows2000"
                    End If
                    If InStr(StrHttp, "Microsoft-IIS/5.1") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:IIS 5.1"
                        SystemFW = "Windows2000/XP"
                    End If
                    If InStr(StrHttp, "Microsoft-IIS/6.0") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:IIS 6.0"
                        SystemFW = "Windows2003"
                    End If
                    If InStr(StrHttp, "Apache/2") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 2.x"
                    End If
                    If InStr(StrHttp, "Apache/2.0.54") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 2.0.54"
                    End If
                    If InStr(StrHttp, "Apache/2.0.52") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 2.0.52"
                    End If
                    If InStr(StrHttp, "Apache/2.1.6") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 2.1.6"
                    End If
                    If InStr(StrHttp, "Apache/1.3.2") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 1.3.x"
                    End If
                    If InStr(StrHttp, "Apache/1.3.20") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 1.3.20"
                    End If
                    If InStr(StrHttp, "Apache/1.3.23") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 1.3.23"
                    End If
                    If InStr(StrHttp, "Apache/1.3.26") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 1.3.26"
                    End If
                    If InStr(StrHttp, "Apache/1.3.27") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 1.3.27"
                    End If
                    If InStr(StrHttp, "Apache/1.3.33") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Apache 1.3.33"
                    End If
                    If InStr(StrHttp, "Netscape-Enterprise/4.1") > 0 Then
                        OppHTTP.Text = "HTTP服务已开启!服务软件类型:Netscape-Enterprise 4.1"
                    End If
                    If InStr(StrHttp, "Unix") > 0 Then
                        SystemFW = "类Unix/Linux系统"
                    End If
                Catch
                End Try

因为是摘出来的,所以有的变量没有定义,大家自己去琢磨吧。
ZSIP:分析出的真实IP

分页:
相关文章:
Copyright© 2005-2006 wqxz.com, All Rights Reserved. 购买虚拟主机请与本站联系