WEB开发网
开发学院网络安全安全技术 Web安全实践(12)密码探测 阅读

Web安全实践(12)密码探测

 2009-01-05 13:49:41 来源:WEB开发网   
核心提示: 这是一个常规的Post请求数据段,最后的部分传送的是用户名和密码,Web安全实践(12)密码探测(3),这些数据在网络上传输的时候应该是被加密的,因为采用了https连接,一般我们可以将随机生成的验证码的内容放入Session中,用户提交的时候将提交的内容与Session中的验证码进行比较

这是一个常规的Post请求数据段,最后的部分传送的是用户名和密码,这些数据在网络上传输的时候应该是被加密的,因为采用了https连接。暴力探测也就是不断的向目标服务器发送类似的请求,根据响应来判断是否成功。

12.4关于程序设计

具体的暴力破解程序的设计不是几句话就能说清楚的,希望有机会把具体的程序展示出来。

下面是一段自动登录的代码,展示了暴力破解的一个横断面。具体可参HttpWebRequest和HttpWebResponse的相关介绍。

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(targetURL);
request.Method = "POST"; //post
  
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.1124)";
Stream newStream = request.GetRequestStream();
newStream.Write(data, 0, data.Length);
newStream.Close();
request.CookieContainer = cc;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
cc.Add(response.Cookies);
Stream stream = response.GetResponseStream();
string result = new StreamReader(stream, System.Text.Encoding.Default).ReadToEnd();
return result;

如果你理解了如何发送登录信息,那么再结合多线程和字典攻击就可以写出自己的web密码探测工具了。

当然我们没处理验证码的情形,如果它的验证码存储在cookie中或者隐藏字段中那是十分可笑的事情,我们可以直接用程序读取。验证码一般存储在服务器端,一般我们可以将随机生成的验证码的内容放入Session中,用户提交的时候将提交的内容与Session中的验证码进行比较判断。关于验证码的具体内容我想在后面的绕过验证一节中继续讨论。

上一页  1 2 3 

Tags:Web 安全 实践

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接