【前戏】

信息探测:主要是网站的脚本语言、数据库、搭建平台、操作系统、服务器IP、注册人信息、网站防护情况。

简单说一下这些信息的获取方式:

1.【目标站的脚本语言识别】

1-1 最简单的方法,在域名后面分别加个/index.asp /index.aspx /index.php /index.jsp 大部分网站根目录都会放个index首页文件。这是最快速最简单的方式。

1-2 爱站 站长工具这些综合查询,一般都会给出网站的脚本语言。

1-3 用一些发包工具,也可以探测。比如我们用burp发包时就会返回。

1-4 网站的robots.txt robot.txt site.xml 这些文件很可能会有暴露网站的语言

1-5 在网站任意界面直接查看源码,搜索asp或aspx或ph或jsp 如果看到前面跟的是网站的域名,那就是网站支持的语言。

1-6 如果不是静态或者伪静态,多点开几个界面,可以看到脚本后缀。

1-7 用google搜索site:目标站域名 inurl:脚本语言类型 如果收录不是很少,一般都能看出来。

1-8 如果是php的站,网上有下载《php秒知程序》,在以上不能用的情况下可以判断出来。

1-9 扫目录或者用爬行工具都可以。

可以说,网站语言是最好判断的。

2.【目标站使用的数据库】

2-1 如果语言为asp,基本就是access数据库 aspx可能是mssql或mysql很少是access 极少会是oracle jsp的站oracle居多 

2-2 试网站报错也可能会间接给出数据库信息,使网站报错的方法下面会详细讲。很多方法。

2-3 存在注入时 在参数后面加上 and len('a')=1 如果返回正常,一般数据库为mssql或mysql 大站的话可能是db2  界面返回错误的话,数据库基本是oracle

2-4 这个是网上的办法 在参数后面加上 ;and (select count(*) from sysobjects)>0 如果返回正常那就是mssql数据库 如果不正常那就不是mssql

2-5 这个很简单,其实你扫一下端口。就知道是什么数据库了。1433对于mssql数据库 而3306对应mysql数据库。 如果端口被更改,可以逐一用 xx.xx.xx.xxI:端口 访问尝试,如果是数据库端口,会返回对应的无法连接数据库的英文 。不是数据库,服务器会一直载入或者找不到界面。

2-6 有点鸡肋,老站的话不确定是不是access,可以用一下暴库漏洞,找个二级目录的文件,然后在一级目录下把/替换成%27 爆出数据库,那肯定就是access。虽然现在不多了,但是可以随手一试。

加个表情,缓解一下疲劳。这里大都是自己的经验,如果引用会说明。

3.【目标网站的搭建平台探测】

这个的话网上也没有什么资料。主要方法不是很多。

3-1 大部分网站直接放进爱站 站长工具,查一下就有了

3-2 查不出来的话,可以用软件发包,如果用的不是和爱站一样的探测方式,就可以得到搭建平台信息

3-3 通过遗留文件获取到网站的搭建平台 一些探针文件都会有。而且可以有绝对路径。所以需要强大的字典和随手一试

3-4 其实有时候目标站查不出来,我们可以查旁站,一般和目标站搭建平台一样的。但是这里要确保IP是真实的。

  我是想不到更多的办法了,希望有其他方法的朋友分享出来。不过一般情况下这几个就够了。

4【目标站的操作系统】

4-1 爱站这些一般都能返回

4-2 发包也可以返回

4-3 可以区别是windows还是linux得小技巧,在网站任意文件链接修改任意字符为大写,返回正常为windows 返回错误为linux 这就是特性,原理大家都懂的。

4-4 ping 目标站 根据返回的TTL值可以大概判断出操作系统。这个我也没记,需要用的时候百度一下 TTL对于操作系统就可以。 另外说一个小技巧 ping的时候如果返回的TTL不稳定,可以在后面加个 -T 大小写都可以。就会持续返回了。修网线的都用这个参数,哈哈!

4-5 根据搭建平台判断目标操作系统 比如是IIS6.0 一般就是win2003 IIS7.0 7.5 大部分是win2008 IIS8.0 8.5 一般就是win2012 这个有点基础的人应该都明白。

5.【探测服务器真实IP】

5-1 我一般就直接在爱站这些网站查,多用几个查询网站对比一下IP。

5-2 查询的时候,如果看到有带有子域名,并且站不多。基本上就是真实IP。

5-3 用seay大法师的神器,子域名挖掘工具。很容易可以看出来

5-4 这是一个简单的方法,直接本地ping网站 但是不要加www. 一般情况真实IP居多。

5-5 很多主站虽然使用了CDN 但是分站,子域名。一般不会使用。所以这个也可以探测到真实的IP.

6.【获取网站注册人的信息】

作用:这个作用很大啊,虽然以前我不这么认为!  比如一个站你一定要搞,旁站和C短没办法利用的时候。那就用注册人的邮箱查询他的其他网站,收集密码。然后在搞目标站,爆破之类的就很好搞了。

6-1 爱站 站长之类的可以查询到注册人的信息,邮箱啊 姓名啊 联系方式啊。然后我们收集起来,社工库查一下密码。然后用工具生成字典。爆破他的网站,几率就会很大。

6-2 网站一般也会有暴露,比如版权那边 联系方式那边。

7.【获取网站防护情况】

安全狗啊,防火墙啊,云盾啊等等。。

7-1 直接用网站防护探测工具判断,八九不离十。下载的话,有群的朋友们,我已经共享上去了。

7-2 找个带参数的界面,加上 and 1=1 如果有安装防护(大部分都会开启注入防护),会暴露防护软件。如果不是高版本的,网上也是有一些方法绕过的。额,扯远了。 7-3 网站底部,可能会有防护软件的平台入口。细心观察。昨天就是一个站底部有云盾超链接。

歇一会。

  以上的方法基本可以获取到网站的全面信息。 俗话说,知己知彼,百战不殆。

【开始】

  先不要想着找注入,什么的。 先观察一下网站,大概结构。是什么CMS。这很重要,知道了是什么CMS,日站(友情检测),就快速多了。

【浅谈CMS识别的几种方法】

  1. 看网站底部,如果未修改的话,一般都会有CMS的信息以及版本。

  2. robots.txt  确实很多robots都会有CMS的版权,一般在头部居多。

  3. 这个方法我常用,就是在google里site:目标站 CMS 或者内容管理系统。很多时候都能出结果。

  4. 找到后台的话,后台大部分都会有CMS的信息。

  5. 通过网站链接来识别,很多时候链接中已经包含了CMS的信息。所以仔细观察,扫目录也可以,就不单说了。

  6. http://whatweb点bugscaner点com/ 这个是大名鼎鼎的bugscan团队开发的在线CMS识别平台,非常给力。我也用这个接口写了个工具。可以批量,需要的话联系我,分享。

但是不要看了这个在线的平台就忘记上面看的方法了,切记。没有捷径的啊。苦为良药。

【正式开始日站(友情检测)】

如果你够认真的话,大部分的站都能判断出是什么CMS,然后我相信你会用百度。你需要做的就是耐心的多看,多尝试。多翻几页搜索结果。够耐心,还是有很多站可以秒的。防护什么的除外。

即使有防护,实在搞不下的话也可以在网上下载相应的源码。本地测试,很多利用的地方啊。

  如果识别不出CMS或者全部利用失败。

1.【网站文件探测】

1-1.我们需要扫描网站的目录,文件。还是推荐御剑,但是字典要用大字典。

1-2.放进AWVS或者其他的漏洞扫描器里面跑

个人习惯:先随手尝试找后台,一般在域名后面加admin manage manager login 等等一些常用的,或者是用网站域名结合试试。也有可能是域名前两个字母 后两个字母+admin等等 反正就是要多试试。大部分都能找到。实在找不到也没事,后面讲找后台的多种方法。

【提示】

后台登录的时候注意一下提示框的内容,比如输入错误的账号密码有些站(大部分)是提示 账号或密码不正确,但是有的站提示密码不正确。那时候就可以确定我们输入的账号是正确的。因为账号验证通过。程序员在写提示的时候,是分别提示的。

  如果很容易找到了后台,那就先尝试一下弱口令。多尝试几个。记得,多尝试几个!耐心。不行的话用网站域名登录,或者加上弱口令稍微组合一下。 如果没有耐心也可以,随手特殊符号登录,比如管理员账号我用~!@#¥%&* 密码随便填。如果登录报错呢,那就是没过滤完全。然后用排除法看看对哪些字符没过滤。 这时候可以尝试POST注入,直接用工具就可以。

如果对登录没产生影响,那就看登录有没有验证码。

【后台无验证码情况下】:

爆破。最好用前面收集的注册人信息,然后用字典生成器,生成一下,在添加上常用的密码。可以用burp爆破,这个百度上搜索:《burp suite暴力破解网站密码》,有个百度经验就是讲这个的。 或者用AWVS自带的爆破,《杨凡的AWVS系列教程22课》有详细说明。

为什么和大家说这两个工具,因为确实好用,【后台有验证码情况下】 这个时候也分为好几种情况,

1.验证码不变(老站居多)

2.先验证用户名密码

3.先验证的是验证码

1的利用方法,验证码不变,我们只要抓包仍然可以爆破。

2的利用方法,如果先验证用户名和密码,一般会提示错误。然后密码清空。这时候验证码没变化的(先验证用户的大部分都这样),我们同样抓包也可以无视验证码。直到正确,验证码才会变化。