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

简介:

本系列导航http://www.cnblogs.com/xuanhun/archive/2008/10/25/1319523.html

安全技术区http://space.cnblogs.com/group/group_detail.aspx?gid=100566 

前言

(作者:玄魂)

 

接着上一篇的用户名枚举的话题接下来简单的探讨一下常见的密码探测。

园友Hunts.C昨天留言谈到了校内网,他说"就是个用户ID和邮箱,实际上这里的用户ID就是用户名的作用啊。 只不过它的登录是使用邮箱登录",其实校内网支持的登录方式为用户名登录和邮箱登陆两种方式,另外对每个用户都分配了唯一的IDHunts.C说的对,ID和用户名的作用是相同的,但是对于用户名枚举来说,ID是对用户名的隐藏,因为用ID是不能登陆的。

这一次要 说的内容比较少。

正文

12.1自动化密码探测

所谓自动化密码探测就是利用探测软件不断的向目标发出请求,根据响应来判断探测成功与否。

自动化探测一般有两种方式。 一是对同一用户名尝试不同的密码,二是对不同的用户尝试相同的密码。第二种方法更能有效的防止账户锁定。

对于用户名和密码生成有两种方式,一是使用既存的字典,二是程序根据使用者给定的用户名或密码组合规则不断生成。

对于自动化密码探测最大的障碍是验证码和人机区分测试(简单的问题)。

12.2社会工程学

"社会工程学"这个词我不知道是怎么产生的,一开始觉得叫行为心理学似乎更合适。后来才知道社会工程学其实就是间谍活动。

(1)推测法。根据相关信息,常见的如生日,姓名,电话号码,常用的数字组合(1213456等),字母组合,邮箱,父母的名字等等。

(2)欺骗。你可以根据他给你的QQ等信息,通过聊天逐步得到他的相关信息。

(3)利用客服。比如你可以冒充邮箱用户本人给客服打电话说密码丢失。以前听说QQ可以,前天园友告诉我yahoo的信箱也可以,真是不可思议。

(4)"社会工程"允许你以接近目标本人或他的家人,朋友的方式来获得你想要的信息,当然这个web攻击本身关系不紧密,但是却是黑客攻击的手段之一。

 

12.3 Post用户名,密码

目前也有很多现成的软件可供选择,用来破解web登录密码。关于工具的使用不是我们要讨论的重点,我们看一下它的工作原理。

下面是我登录校内网的时候一段POST数据(实际分析过程中应是全过程数据分析,这只是局部):

POST /Login.do HTTP/1.1

Host: login.xiaonei.com

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language: zh-cn,zh;q=0.5

Accept-Encoding: gzip,deflate

Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

Referer: http://www.xiaonei.com/SysHome.do

Cookie: syshomeforreg=1; isnewreg=1; XNESSESSIONID=abc_7S1cRa2rw8aernG6r; ick=abc_7S1cRa2rw8aernG6rheifer.xiaonei.com; __utma=204579609.1392121359.1231048483.1231048483.1231048483.1; __utmb=204579609; __utmc=204579609; __utmz=204579609.1231048483.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none); _de=8EAD38BFFD04FDBE; userid=201573034; univid=5426; gender=1; univyear=2005; hostid=201573034; BIGipServerpool_profile=3737916938.20480.0000; xn_app_histo_201573034=6-35-17954-4-8-16555-12012-3-2-13496-19; mop_uniq_ckid=123.189.16.137_1231047874_1991448146

Content-Type: application/x-www-form-urlencoded

Content-Length: 83

email=xuanhun&password=xuanhun521&origURL=http%3A%2F%2Fwww.xiaonei.com%2FSysHome.do

这是一个常规的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中的验证码进行比较判断。关于验证码的具体内容我想在后面的绕过验证一节中继续讨论。


本文转自悬魂博客园博客,原文链接:http://www.cnblogs.com/xuanhun/archive/2009/01/04/1368250.html,如需转载请自行联系原作者

相关文章
|
安全 前端开发 JavaScript
互联网并发与安全系列教程(07) - 常见的Web安全漏洞(其它漏洞)
互联网并发与安全系列教程(07) - 常见的Web安全漏洞(其它漏洞)
113 0
|
安全 数据安全/隐私保护
渗透攻击实例-后台弱口令
渗透攻击实例-后台弱口令
|
前端开发
如何利用dnslog探测目标主机杀软
如何利用dnslog探测目标主机杀软
230 0
|
安全 网络安全 PHP
网络安全-RCE(远程命令执行)漏洞原理、攻击与防御
网络安全-RCE(远程命令执行)漏洞原理、攻击与防御
1186 0
网络安全-RCE(远程命令执行)漏洞原理、攻击与防御
|
安全 前端开发 JavaScript
信息服务上线渗透检测网络安全检查报告和解决方案2(安装文件信息泄漏、管理路径泄漏、XSS漏洞、弱口令、逻辑漏洞、终极上传漏洞升级)
信息服务上线渗透检测网络安全检查报告和解决方案2(安装文件信息泄漏、管理路径泄漏、XSS漏洞、弱口令、逻辑漏洞、终极上传漏洞升级)
233 0
|
2月前
|
存储 监控 网络安全
内网渗透测试基础——敏感数据的防护
内网渗透测试基础——敏感数据的防护
44 2
|
3月前
|
安全 物联网 网络安全
网络安全的盾牌:漏洞防御与信息保护策略
【9月更文挑战第25天】在数字时代的浪潮中,网络安全和信息安全的重要性日益凸显。本文旨在探讨网络安全漏洞的成因、加密技术的应用以及提升安全意识的必要性。通过深入浅出的分析,揭示网络攻防的复杂性和对策的多样性,强调个人和企业应如何构建坚固的防线以保护数据不受威胁。
|
2月前
|
SQL 安全 网络安全
数字堡垒的裂痕:网络安全漏洞与防御策略
【8月更文挑战第78天】在数字化时代的浪潮中,网络安全成为了保护数据资产和用户隐私的重要防线。本文将深入探讨网络安全的薄弱环节—漏洞,并分析加密技术如何成为防御的关键一环。同时,提升个人和组织的安全意识,也是构建坚固数字堡垒的必要条件。文章通过实际代码示例,展示漏洞检测与修复过程,以及加密技术的应用,旨在增强读者对网络安全防护的认识,鼓励采取积极措施以应对日益复杂的网络安全挑战。
|
6月前
|
SQL 安全 网络安全
数字堡垒:网络安全漏洞与防护策略
【6月更文挑战第12天】在数字化时代,网络安全已成为个人和企业不可忽视的重要议题。本文将深入探讨网络安全的薄弱环节,加密技术的重要性以及提升安全意识的必要性,旨在为读者提供一套全面的网络安全知识框架。
|
6月前
|
安全 PHP 数据安全/隐私保护
WAF攻防-菜刀&冰蝎&哥斯拉&流量通讯&特征绕过&检测反制&感知
WAF攻防-菜刀&冰蝎&哥斯拉&流量通讯&特征绕过&检测反制&感知
110 0