找到后台登录页面
- 下载个可以根据网址+字典测试联通的软件,如’御剑’。
- 谷歌搜索
site : www.xxx.com inurl : admin|manager|system|
。
网站克隆
- 类似爬虫,根据种子url+js脚本,下载网站全部资源,如 ‘秋秋网页下载器’。
静态页面
如www.xxx.com/index.php
。
你可以猜测www.xxx.com/admin.php
是CMS登录,不过这个不是试出的,可以用软件,软件里输入www.xxx.com
,并选择一个字典,就是类似admin|manager|system|
这类的单词,然后遍历,测试http返回的状态,200
通信成功,自己看看这些成功的页面哪个像。
url重写(伪静态)
静态
url是真实的服务器文件路径
url重写(伪静态)
url不是真实的服务器文件路径而是一个字符串,这个字符串有统一的正则表达式解析规则,解析后就是真实的服务器文件路径。
如:
1. http://target.com/cat-product/123456.html
通过想象推测,这个链接的可能重写方式是
2. http://target.com/index.php?cat=product&id=123456
路由
也就是说我们访问1
的url,实际访问的却是2
的url,1
已经没有服务器文件路径这一含义了,在用户输入1
访问时,服务器有特殊的过滤文件使用正则表达式把1
转化成2
,我们也可以称其为路由功能。
如何实现
首先定义一个统一入口main.jsp
,所有发给apache的请求都转发给它,如下:
RewriteRule ^/(js|css|images)/(.+)$ /$1/$2?%{QUERY_STRING} [L]
RewriteRule ^(.+)$ /main.jsp?u=http://%{HTTP_HOST}$1&%{QUERY_STRING} [L]
第一行,所有静态内容直接请求静态文件。 第二行,通过main.jsp
取到请求的url以及query string
,那么你就可以随意使用硬盘的文件响应这个请求。
比如
http://www.domain.com/js/jquery.js
就直接请求硬盘上的jquery.js文,而用户列表页面
http://www.domain.com/users?type=1
则被转发成
http://www.domain.com/main.jsp?u=http://www.domain.com/users&type=1
用户1的信息显示页面
http://www.domain.com/user/1?type=1
则被转发成
http://www.domain.com/main.jsp?u=http://www.domain.com/user/1&type=1
在main.jsp
页面,通过获取query string
,可以获得参数u为
http://www.domain.com/user/1
type为1,对u进行拆分,就能得到user和1,将user/1转发到
http://www.domain.com/user.jsp?id=1
即可获得user 1的信息了。