指纹识别
在渗透测试中,对目标服务器进行指纹识别是相当有必要的,因为只有识别出相应的Web容器或者CMS,才能查找与其相关的漏洞,然后才能进行相应的渗透操作。
在线指纹识别网站:
TSscan:https://scan.top15.cn/web/
BugScaner:http://whatweb.bugscaner.com/look/
云悉指纹:http://www.yunsee.cn/finger.html
WhatWeb:http://whatweb.bugscaner.com/look/
常见的网站指纹识别工具有:
whatweb,wappalyzer火狐插件 等。
whois
whois是用来查询域名注册所有者等信息的传输协议。
简单的说,就是通过whois来对域名信息进行查询,可以查到注册商、注册人、邮箱、DNS解析服务器、注册人联系电话等等,可以进行邮箱反查域名,爆破邮箱,社工,域名劫持,寻找旁站等等。
因为有些网站信息查得到,有些网站信息查不到,所以推荐以下信息比较全的查询网站,直接输入目标站点即可查询到相关信息。
在线whois查询
- 国内WHOIS信息查询地址:
(1)站长之家
http://whois.chinaz.com/
(2)爱站网
https://whois.aizhan.com/
(3)腾讯云
https://whois.cloud.tencent.com/
(4)美橙互联
https://whois.cndns.com/
(5)爱名网
https://www.22.cn/domain/
(6)易名网
https://whois.ename.net/
(7)中国万网
https://whois.aliyun.com/
(8)西部数码
https://whois.west.cn/
(9)新网
http://whois.xinnet.com/domain/whois/index.jsp
(10)纳网
http://whois.nawang.cn/
(11)中资源
https://www.zzy.cn/domain/whois.html
(12)三五互联
https://cp.35.com/chinese/whois.php
(13)新网互联
http://www.dns.com.cn/show/domain/whois/index.do- 国外WHOIS信息查询地址
https://who.is/
一定要养成收集站点邮箱账号收集的习惯(因为好多官方后台都是用内部邮箱账号登录的,指不定哪天你就得到一个进后台的机会)。
(1)通过说明文档以及网站页面收集,或者网站发表者以及留言板信息处收集账号
(2)通过 teemo,metago,burpusit,awvs,netspker 或者 google 语法收集
(3)搜索相关 QQ 群收集相关企业员工的社交账号
用途: 可用来进行爆破或者弱口令登录以及撞裤攻击。
备案信息
网站备案信息是根据国家法律法规规定,由网站所有者向国家有关部门申请的备案,如果需要查询企业备案信息(单位名称、备案编号、网站负责人、电子邮箱、联系电话、法人等)
在线网站备案查询
(1)天眼查
https://www.tianyancha.com/
(2)ICP备案查询网
http://www.beianbeian.com/
(3)爱站备案查询
https://icp.aizhan.com
(4)域名助手备案信息查询
http://cha.fute.com/index
利用技巧
(1)DNS解析记录可以反查IP,比较早的解析记录有时可以查到真实IP,需要留意一下。
(2)注册人电话,注册人邮箱等社工信息可以钓鱼或者收集进字典来爆破目标办公系统。
站点信息
操作系统
服务器信息包括服务器用的操作系统:Linux 还是 Windows 。
知道了服务器的操作系统之后,还需要知道操作系统使用的具体版本。
因为很多低版本的操作系统都存在已知的漏洞。
操作系统判断方法:
- 大小写
访问网站:
http://www.xxx.com/index.html
http://www.xxx.com/inDex.html
Windows操作系统不区分大小写,Linux系统大小写敏感,用此方法能够判断是Windows还是Linux系统。- ping
判断是Linux还是Windows最简单就是通过ping来探测,Windows的TTL值都是一般是128,Linux则是64。
所以大于100的肯定是Windows,而几十的肯定是Linux。
但是,通过TTL值来判断服务器类型也不是百分之百准确的,有些windows服务器的TTL值也是几十,而且有的服务器禁止ping。
脚本类型
我们需要知道网站用的脚本类型:php 、Jsp 、Asp 、Aspx 、html。
为什么要进行脚本类型探测?
- 网站会进行伪装,要么没有后缀,要么就是伪静态。
- 有些站点会修改解析后缀,比如:本来是PHP的站点,可以修改文件把asp后缀当作php解析。
- 如果不是静态或者伪静态
则多点开几个界面,可以看到脚本后缀。- 最简单的方法,在域名后面分别加个 /index.asp /index.aspx /index.php /index.jsp
不报错则是网站支持的脚本语言
原理:
大部分网站根目录都会放个index首页文件,这是最快速最简单的方式。- F12审查元素,在返回头一般都能看到网站脚本。
- 网站的 robots.txt site.xml 这些文件很可能会有暴露网站的语言
这个直接就访问,robots.txt 等等就可以,存在的话网站脚本一目了然。- 在网站任意界面直接查看源码,搜索asp或aspx或php或jsp
很多伪静态的站,都可以用这种方法。他会调用一些动态脚本,在源码会看到。- 用google搜索
site:xxx filetype:php
site:目标站域名
inurl:脚本语言类型
如果收录不是很少,一般都能看出来。- 抓取数据包,分析cookie或session名称,有可能有脚本前缀
比如:php的站点, session名称是 phpsesssion.
物理路径
参考:物理路径探测
敏感文件、目录
参考:敏感文件目录探测
数据库
我们需要知道网站用的是哪种类型的数据库:Mysql、Oracle、SqlServer 还是 Access 。
虽然这几种数据库的语法大体上相同,但是还是有区别的。
所以我们还是要知道目标网站用的是哪种数据库,并且数据库是哪个版本的。
几种数据库的区别:
- Access 全名是Microsoft Office Access,是由微软发布的关联式数据库管理系统。
小型数据库,当数据库达到100M左右的时候性能就会下降。
数据库后缀名: .mdb 一般是asp的网页文件用access数据库- SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),是一个比较大型的数据库。端口号为1433。数据库后缀名 .mdf
- MySQL 是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的应用软件之一,MySQL数据库大部分是php的页面。默认端口是3306
- Oracle又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。常用于比较大的网站。默认端口是1521
首先,成本上的差距,access是不要钱的,mysql也是开源的,sql server 是收费的一般也就几千,Oracle的费用则数万。
其次,处理能力,access支持千以内的访问量,sql server支持几千到上万的访问,而Oracle则支持海量的访问。
再次,从数据库的规模来看,access是小型数据库,,mysql 是中小型数据库,sql server是中型数据库,Oracle是大型数据库。
判断网站搭建数据库的方法:
- 【根据脚本语言判断】
如果语言为asp,基本就是access数据库
aspx可能是mssql很少是access
jsp的站oracle居多
php一般为mysql (也有可能是其他数据库)- 【根据报错判断】
在参数后面使网站报错也可能会给出数据库报错信息,报错方法很多,可以修改参数为不存在的参数,比如9999999 也可以用特殊符号,等等。- 【根据数据库特性判断】
存在注入时 在参数后面加上 and len(‘a’)=1 如果返回正常,一般数据库为mssql或mysql,大站的话可能是db2,界面返回错误的话,数据库基本是oracle
在参数后面加上 ;and (select count(*) from sysobjects)>0 如果返回正常那就是mssql数据库,如果不正常那就不是mssql(sql server)- 【根据端口判断】
这个很简单,其实你扫一下端口,就知道是什么数据库了。
1433对应mssql数据库
3306对应mysql数据库。
1521对应oracle数据库
如果端口被更改,可以逐一用 xx.xx.xx.xx::访问尝试,端口 如果是数据库端口,会返回对应的无法连接数据库的英文 。不是数据库,服务器会一直载入或者找不到界面。
中间件
知道了这些信息之后,我们就需要知道网站用的web服务器是什么类型的:Apache、Nginx、Tomcat 还是 IIS。
知道了web服务器是哪种类型后,我们还要探测web服务器具体的版本。
比如Ngnix版本<0.83会有解析漏洞 ,IIS6.0会有文件名解析漏洞、IIS7.0会有畸形解析漏洞等。
不同的web服务器版本,存在着不同漏洞。
CMS
CMS又称整站系统。常见的CMS有:WordPress、Dedecms、Discuz、PhpWeb、PhpWind、Dvbbs、PhpCMS、ECShop、、SiteWeaver、AspCMS、帝国、Z-Blog等。
CMS指纹识别又有很多方法,比如说御剑指纹识别、Webrobot工具、whatweb工具、还有在线查询的网站等等。
CMS在线指纹识别:
http://whatweb.bugscaner.com/look/
WAF
Waf也叫Web应用防火墙,是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
常用的两种方式:
(1)手工(提交恶意数据,简单粗暴)
(2)Kaili工具(WAFW00F、Nmap)
- Nmap探测WAF有两种脚本
一种是http-waf-detect。
命令:nmap -p80,443 --script=http-waf-detect ip
一种是http-waf-fingerprint。
命令:nmap -p80,443 --script=http-waf-fingerprint ip- WAFW00F探测WAF
命令:wafw00f -a 域名
参考
https://www.cnblogs.com/linuxsec/articles/10371652.html
https://blog.csdn.net/qq_36119192/article/details/84027438
https://blog.csdn.net/lowhacker/article/details/89449701
转载:https://blog.csdn.net/qq_38265674/article/details/111051418