>
文章首发于《黑客X档案》2005年05月刊(黑客研究院) 转载请注明版权归《黑客X档案》所有
俗话说,天底下没有免费的午餐。各类网站都披上了为特殊需求的消费者服务的伪装外衣,打出了“收费网站---VIP会员专区”这张能大笔赚钱的“王牌”。正当网站经营者大赚特赚的时候,可苦了我们这些渴求学习更多知识,学习先进技术的穷学生。用辨证唯物主义的观点看问题,事物的发展都是相对的。“矛”和“盾”本身都是共同出现的。沿用到当代IT行业就出来了,搞“黑客的”和“网络安全的”、搞“软件编程的”和“软件破解的”,而相对“收费网站”就滋生出“网站破解”的一些网络爱好者。
这些“网站破解”的爱好者,也破解到的AB密码也公布到聚集着一些志同道合的人交流的网站“AB联盟网站”。而这些AB密码的破解,不外忽就是使用“AccessDiver”和“GoldenEye”这样的软件。使用国外的代理,在软件上挂上字典暴力破解,而字典的好坏和网站用户密码复杂度等很多客观因数有关。如果你的命够好,相信“功夫不辜有心人”一定能破解出来网站会员密码。
“收费网站”的会员登陆,一般能够分为两大类:
第一类:弹出式入口:弹出式入口是密码验证系统的一种方式,就是在进入会员区的时候弹出一个提示框让你输入用户名和密码进行登录。在“黑客基地”网站中点击“VIP会员专区”的连接中的某个教程,会弹出下图(图1-0)所示的一个用来输入用户名、密码的提示框,那就证明这个网站的入口是弹出式的。
第二类:表单式入口:表单式入口区别于弹出式入口,没有弹出式用户名、密码输入框,而是一个登录页面,采用form表单形式将用户输入的信息(用户名和密码)提交到一个验证地址去验证。
其实表单式入口的基本原理大致类似,也是要把你输入的信息发送到某个地址去验证。只不过表单式入口提供给你的输入方式不同,不像弹出式入口那样给你一个弹出式输入框,而是给你一个网页,里面有输入用户名和密码的地方。这个网页中输入用户名和密码的地方,在网页源文件中可以看到,是从<form......>开始到</form>结束的一段代码,在这段代码中定义了这个表单的发送方式、发送地址、发送数据等等信息。当你在网页中填好用户名和密码,点击登录按钮后,你输入的信息就被发送到form中定义的地址去验证。如果通过验证,允许你进入会员区。如果没有通过验证,进入错误提示页面,并且显示一些错误提示信息,让你重新输入。
几个基本概念:
表单式入口――区别于弹出式入口,没有弹出式用户名、密码输入框,而是一个登录页面,采用form表单形式将用户输入的信息(用户名和密码)提交到一个验证地址去验证。
提交地址――在表单式入口的登录页面中定义的,用来验证登录信息的地址。
Post data――发送数据,也就是发送到提交地址去验证的信息。
Keyword――关键字,是我们在验证返回信息中选择的,用来让AD进行识别的特殊信息。
因为表单式入口,可以使用动态网站编写代码实现,还可以使用某些后台管理网站程序,相对弹出式入口,浅显易懂。今天我就把弹出式入口网站服务的实现详细做下剖析,希望能对各位黑友和网管有所帮助。
经过偶长期的研究“弹出式入口”网站的服务搭建,经验总结可以分为Linux系统搭建的Apache服务器和Windows 系统搭建的IIS服务器、Apache服务器、以及第三方软件服务器搭建的四个类别。
一、 Linux系统
Apache服务器的目录安全认证
Apache实现身份认证的基本原理是:当系统管理员启动身份认证功能后,可以在要限制的目录中添加一个默认名“.htaccess"的文件。当用户访问该路径下的资源时,系统就会弹出一个对话框,要求用户输入“用户名/口令"。也就是说,它的身份认证功能不是人为由程序控制,而是由系统直接控制的。这样就避免了用户记录需要认证的资源的超级链接,不会下次直接访问资源。这样可做为专门管理网页存放的目录或做为会员区等。
测试环境:
操作系统:Red Hat Linux 9.0
内核版本:2.4.20-8
IP地址:192.168.10.36
前期准备,必须已经安装Apache
第1步:
我们在/var/www/html(apache的主页根目录)下建立一个vip目录
# mkdir /var/www/html/vip
第2步
然后我们编辑httpd.conf
添加
Alias /vip "/var/www/html/vip"
<Directory "/var/www/html/vip">
Options Indexes MultiViews
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
注释:AllowOverride AuthConfig #表示进行身份验证 这是关键的设置(图1-1)
第3步
在要限制的资源的目录内创建并编辑.htaccess文件
# vi /var/www/html/vip/.htaccess
AuthName ″黑客X档案″
AuthType Basic
AuthUserFile /usr/local/apache/secrets/.htpasswd
AuthGroupFile /usr/local/apache/secrets/.htgroup
Require group hackbase
Require valid-user
注释:
AuthName #描述信息,您想显示的“领域名称”
AuthUserFile /usr/local/apache/secrets/.htpasswd #存放可以访问受限制的资源的用户名和密码
AuthGroupFile /usr/local/apache/secrets/.htgroup #存放可以访问受限制的资源的组名以及其中的用户
repuire group hackbase 、require valid-user 或者 require user frank #限制资源的组名、所有合法用户还是指定用户
密码文件推荐使用.htpasswd,因为apache默认系统对“.ht”开头的文件默认不允许外部读取,安全系数会高一点哦。
参数require group 指定哪些组的用户可以访问认证资源,这样,当再次访问需要认证的资源存在的目录时,系统就会弹出对话框,要求输入“用户名/口令"。(图1-2)
小知识:
基于用户名和密码的认证只是方法之一,时常会有不需要知道来访者是谁, 只需要知道来自哪里的情况。
Allow和Deny指令可以允许或拒绝来自特定主机名或主机地址的访问, 同时,Order指令告诉Apache处理这两个指令的顺序, 以改变过滤器。