怎么去杜绝这种的访问啊https://abc.aspx?Name=empName&Pwd=123

问题描述

怎么去杜绝这种的访问啊https://abc.aspx?Name=empName&Pwd=123我的是vb.net的项目,,怎么能够防止这种访问,对服务器的攻击呢?ImportsvenderPublicClassloginInheritsSystem.Web.UI.PageProtectedascPublicAsascPublicProtectedAmsAuthAsAmsAuth#Region"WebForm디자이너에서생성한코드"'이호출은WebForm디자이너에필요합니다.<System.Diagnostics.DebuggerStepThrough()>PrivateSubInitializeComponent()EndSubProtectedWithEventstxtEmpNoAsSystem.Web.UI.WebControls.TextBoxProtectedWithEventstxtPwdAsSystem.Web.UI.WebControls.TextBoxProtectedWithEventsbtnLoginAsSystem.Web.UI.WebControls.ImageButton'참고:다음의자리표시자선언은WebForm디자이너의필수선언입니다.'삭제하거나옮기지마십시오.PrivatedesignerPlaceholderDeclarationAsSystem.ObjectPrivateSubPage_Init(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Init'CODEGEN:이메서드호출은WebForm디자이너에필요합니다.'코드편집기를사용하여수정하지마십시오.InitializeComponent()EndSub#EndRegionPrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load'여기에사용자코드를배치하여페이지를초기화합니다.IfNotPage.IsPostBackThentxtEmpNo.Text=GetCookies("loginCheck")IfSession("gLoginSabun")<>""ThenResponse.Redirect("main.aspx")EndIfEndIfEndSubPrivateFunctionGetCookies(ByValsKeyAsString)AsStringIfCookiesIDChecked(sKey)=TrueThenGetCookies=Request.Cookies(sKey).Value.ToString()ElseGetCookies=""EndIfEndFunctionPrivateSubSetCookies(ByValsKeyAsString,ByValsValueAsString)IfCookiesIDChecked(sKey)=TrueThenResponse.Cookies(sKey).Value=sValueResponse.Cookies(sKey).Expires=DateAdd(DateInterval.Day,15,Now).ToShortDateStringElseDimLocalCookieAsHttpCookieLocalCookie=NewHttpCookie(sKey)LocalCookie.Value=sValueLocalCookie.Expires=DateAdd(DateInterval.Day,15,Now).ToShortDateStringResponse.Cookies.Add(LocalCookie)EndIfEndSubPrivateFunctionCookiesIDChecked(ByValkeyAsString)AsBooleanDimiAsIntegerDimLocalCookieCollAsHttpCookieCollectionLocalCookieColl=NewHttpCookieCollectionDimLocalCookieAsHttpCookieLocalCookieColl=Request.CookiesDimarr1()AsStringarr1=LocalCookieColl.AllKeysCookiesIDChecked=FalseFori=0Toarr1.Length-1LocalCookie=LocalCookieColl(arr1(i))IfLocalCookie.Name=keyThenCookiesIDChecked=TrueExitForEndIfNextEndFunctionPrivateSubbtnLogin_Click(ByValsenderAsSystem.Object,ByValeAsSystem.Web.UI.ImageClickEventArgs)HandlesbtnLogin.ClickIftxtEmpNo.Text=""ThenCallascPrintMsg("사원번호를입력하여주십시요.",Me)ExitSubElseIftxtPwd.Text=""ThenCallascPrintMsg("비밀번호를입력하여주십시요.",Me)ExitSubEndIfCallgLoginCheck()EndSubPrivateSubbtnLogin_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)btnLogin.Attributes.Add("onMouseover","na_change_img_src('btnLogin','document','./image/main/login_icon_a.gif',true);")btnLogin.Attributes.Add("OnMouseOut","na_restore_img_src('btnLogin','document');")EndSubPrivateSubgLoginCheck()DimiCntAsIntegerDimrvAsLongDimdChngDateAsDateDimiWrngNumb,num,num2AsIntegerDimJUMIN_NUMB,bymdAsStringDiminputDesionDimlogin_flagAsStringDimli_rv,login_Error_msgAsStringOnErrorGoToascErrli_rv=""li_rv=AmsAuth.PassCheck(Trim(txtEmpNo.Text),Trim(txtPwd.Text),"MQ04",Request.UserHostAddress)'인증서버User_idCheck(2003.12.22ByNGJ.)num=Len(Trim(li_rv))num2=num-975login_flag=Trim(Left(li_rv,2))''login_Error_msg=Replace(Trim(Left(li_rv,num)),vbCrLf,"")Iflogin_flag="00"Then'Login성공처리및시스템계속진행CallgLoginCheck2()ElseIflogin_flag="01"Then'PWD변경화면을Openlogin_Error_msg="DefaultPassword를변경해야합니다.n"login_Error_msg&="또는n"login_Error_msg&="귀하는최근30일이내에Password를변경하지않으셨습니다.n"login_Error_msg&="기존Password를변경하셔야합니다.n"Response.Write("<script>")Response.Write("alert('"&login_Error_msg&"');")Response.Write("calWindow=window.open('./Source_C/MSTC091.aspx?sSabun="&Trim(txtEmpNo.Text)&"','MSTC091','height=179px,width=243px,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,left=400px,top=300px');")''Response.Write("calWindow.opener=self;")Response.Write("</script>")Else'PasswordCheck오류or인증실패txtPwd.Text=""Iflogin_flag="20"Thenlogin_Error_msg="귀하는최근90일동안시스템을한번도사용하지않아n"login_Error_msg&="더이상시스템을사용할수없습니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"ElseIflogin_flag="30"Thenlogin_Error_msg="귀하는하루에동일시스템로그인시연속하여5번Passwordn"login_Error_msg&="인증을실패하여더이상시스템을사용할수없습니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"ElseIflogin_flag="40"Thenlogin_Error_msg="귀하는HELPDESK에의해부여된DefaultPassword를n"login_Error_msg&="5일이내에변경하지않아더이상시스템을사용할수없습니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"ElseIflogin_flag="E1"Thenlogin_Error_msg="존재하지않는USERID입니다.n"ElseIflogin_flag="E2"Thenlogin_Error_msg="Password가틀렸습니다.n"login_Error_msg&="Password는대/소문자를구별합니다.n"ElseIflogin_flag="E3"Thenlogin_Error_msg="5연속Password인증에실패하였습니다.n"login_Error_msg&="더이상시스템을사용할수없습니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"ElseIflogin_flag="90"Thenlogin_Error_msg="귀하는퇴직했거나또는사용중지요청등에의해더이상n"login_Error_msg&="더이상시스템을사용할수없습니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"ElseIflogin_flag="91"Thenlogin_Error_msg="귀하는퇴직했거나또는사용중지요청등에의해더이상n"login_Error_msg&="더이상시스템을사용할수없습니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"ElseIflogin_flag="X1"Thenlogin_Error_msg="인증관리시스템오류입니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"ElseIflogin_flag="X2"Thenlogin_Error_msg="인증관리시스템오류입니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"Elselogin_Error_msg="인증관리시스템오류입니다.n"login_Error_msg&="HELPDESK(T.032-520-5114)에게연락하시길바랍니다.n"EndIfResponse.Write("<script>")Response.Write("alert('"&login_Error_msg&"');")Response.Write("</script>")ExitSubEndIfExitSub

解决方案

解决方案二:
前台界面代码是在这http://topic.csdn.net/u/20120315/17/c6da17d3-a160-4930-9c44-55df931df19f.html
解决方案三:
无法去杜绝这种的访问https://abc.aspx?Name=empName&Pwd=123但是可以忽略。如果是防止注入的话用参数化SQL就可以解决。如果是其他原因可以对获取到的值编码字符替换之类的方法都可以。
解决方案四:
引用2楼gzw13999的回复:

无法去杜绝这种的访问https://abc.aspx?Name=empName&amp;Pwd=123但是可以忽略。如果是防止注入的话用参数化SQL就可以解决。如果是其他原因可以对获取到的值编码字符替换之类的方法都可以。

是的。可以忽略掉,不去处理这些没用的参数就好了。如果说你的方法就是要这样去传参数,可以在服务端设置一个验证码,可以确保是服务端自己使用这个方法,而客户端不能使用。比如服务端要使用https://abc.aspx?Name=empName&Pwd=123,服务端就Redirect到https://abc.aspx?Name=empName&Pwd=123&vld=17458327521348,保存vld,然后在服务端的接收部分去检查发来的请求vld是不是在你保存的vld列表中,如果在就继续执行,如果不在就忽略。因为用户手动输入的vld必然不在你的vld列表,这样就能防止用户去使用这个方式了,只有服务端能redirect。vld推荐使用GUID韩文注释。。。。鸭梨山大
解决方案五:
你用session传递参数,这些忽略即可
解决方案六:
不用url传参,改用Session传值,比较安全。
解决方案七:
强制使用Request.Form("Name")来接收传递过来的参数。

时间: 2024-09-08 23:44:39

怎么去杜绝这种的访问啊https://abc.aspx?Name=empName&amp;amp;Pwd=123的相关文章

php curl访问调用https时报错解决办法

PHP 调用CURL提示错误:SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed.这个是因为证书过期导致的. SSL-ERROR 需要到 http://curl.haxx.se/ca/cacert.pem 下载信任证书.下载后,使其生效有两种方法: 第一种方

httpclient如何访问https页面?

问题描述 请各位帮个忙,我在写java的时候,用httpclient访问一个https网页,想获取页面信息,并且这个网站在客户端有密钥,我想要访问的是用户登录之后的一个index页面,不知道应该怎么去实现,试了好久,总是"javax.net.ssl.SSLHandshakeException:Receivedfatalalert:handshake_failure"这个错误,麻烦大家帮我看一下,是什么原因造成的,跪谢!

PHP的curl扩展不能访问https的连接

网站支付需要和财付通进行一个对接,财付通给了一个https的接口连接 将此连接放入到PHP的页面中调用curl获取此链接的返回信息, 发现使用curl访问此https的连接有问题, 然后随便找了一个http的连接试了试是正常的 看来是curl访问https类型的连接有问题 应该是openssl有猫腻, 然后重新编译安装了一下openssl 下载地址:http://www.openssl.org/source/ openssl 编译 ./config --prefix=/usr/local/ope

PHP CURL访问HTTPS使用

  https服务器post数据  代码如下   function curlPost($url, $data, $timeout = 30) {     $ssl = substr($url, 0, 8) == "https://" ? TRUE : FALSE;     $ch = curl_init();     $opt = array(             CURLOPT_URL     => $url,             CURLOPT_POST    =&g

php使用curl访问https示例分享

 curl是利用URL语法在命令行方式下工作的开源文件传输工具,下面介绍一下php使用curl访问https的示例,大家参考使用吧 为方便说明,先上代码吧   代码如下: /**   * curl POST   *   * @param   string  url   * @param   array   数据   * @param   int     请求超时时间   * @param   bool    HTTPS时是否进行严格认证   * @return  string   */   fu

php使用curl访问https示例分享_php实例

为方便说明,先上代码吧 复制代码 代码如下: /**  * curl POST  *  * @param   string  url  * @param   array   数据  * @param   int     请求超时时间  * @param   bool    HTTPS时是否进行严格认证  * @return  string  */  function curlPost($url, $data = array(), $timeout = 30, $CA = true){      

PHP CURL访问HTTPS使用详解

三年前写过一篇<一个简陋的支持HTTPS的PHP CURL封装函数>,当时只是知其然不知其所以然,今天来详细梳理一下. https服务器post数据  代码如下 复制代码 function curlPost($url, $data, $timeout = 30) {     $ssl = substr($url, 0, 8) == "https://" ? TRUE : FALSE;     $ch = curl_init();     $opt = array(     

聊聊HTTPS和SSL/TLS协议

要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识. 大致了解几个基本术语(HTTPS.SSL.TLS)的含义 大致了解 HTTP 和 TCP 的关系(尤其是"短连接"VS"长连接") 大致了解加密算法的概念(尤其是"对称加密与非对称加密"的区别) 大致了解 CA 证书的用途 考虑到很多技术菜鸟可能不了解上述背景,俺先用最简短的文字描述一下.如果你自认为不是菜鸟,请略过本章节,直接去看"HTTPS 协议的需求".

CDN HTTPS解决方案及优化实践

2017在线技术峰会,阿里云CDN技术专家容恪来为大家解析CDN HTTPS 红包背后的技术实践.本文主要从SSL/TLS 及 HTTP/2开始谈起,着重分析了HTTPS 架构和优化实践,最后对用户如何更好使用 HTTPS作了指导.   以下是精彩内容整理: SSL/TLS及HTTP/2介绍 HTTPS 对于HTTPS,其实是在HTTP 之下增加了 SSL/TLS的传输.在整个TCP/IP协议中的结构如图,传输层之上是会话层,会话层中传输的是SSL/TLS协议,HTTP 是在应用层.如果不用 S