Web渗透测试攻防之浅述信息收集

2022-11-08|

前言

众所周知渗透测试的本质是信息收集,在渗透测试中信息收集的质量直接关系到渗透测试成果的与否。在对系统进行渗透测试前的信息收集是通过各种方式获取所需要的信息,收集的信息越多对目标进行渗透的优势越有利。通过利用获取到的信息对系统进行渗透。只有掌握了足够多的目标信息才能更好的对目标系统进行渗透。正所谓知彼知己百战不殆。

1.信息收集的分类

从信息收集方式分类可将信息收集分为两大类:

①主动信息收集
②被动信息收集

1.1 主动信息收集

通过主动扫描目标主机或网站,对目标进行探测性扫描获取相关信息。这种方式获取到的信息更为准确能获取到的信息更多,但缺点也比较明显。通过主动信息收集容易留下明显的攻击访问痕迹,易发现和被溯源。

1.2 被动信息收集

通过搜索引擎等公开渠道进行相关信息的检索收集信息,这种方式不直接与目标建立交互访问连接,避免了留下访问痕迹。被动信息收集的优缺点正好与主动信息收集的优缺点相反,被动信息收集不会留下访问痕迹避免被溯源发现,但收集到的信息依赖于搜索引擎,准确性和质量无法保证。

2.信息收集目标和方法

2.1 域名信息

2.1.1 Whois

通过whois查询可以获得域名注册者邮箱地址等信息。一般情况下对于中小型网站,域名注册者就是网站管理员。利用搜索引擎对whois查询到的信息进行搜索,获取更多域名注册者的个人信息。通过whois查询获取IP、法人的名字、电话、邮箱、地址等信息对社工攻击具有很大的作用。

相关:


站长之家查询接口:https://whois.chinaz.com/

阿里云查询接口:https://whois.aliyun.com/

全球whois查询:https://www.whois.com/cn/

2.1.2 搜索引擎查找

搜索引擎通常会记录域名信息,可以通过搜索引擎高级搜索语法进行查询 。

例如使用google高级搜索语法查找baidu的子域名语法为site:baidu.com

利用空间测绘搜索引擎语法进行搜索,目前比较常用的空间测绘搜索引擎入下:

fofa:https://fofa.info/toLogin

鹰图:https://hunter.qianxin.com/

quake:https://quake.360.cn/quake/#/index

钟馗之眼:https://www.zoomeye.org/

Shodan:https://www.shodan.io/

2.1.3 第三方查询

国外有一些第三方应用提供了子域名查询功能,因工具多为国外应用,多数使用对国内查找效果不够好,列举如下:

  • DNSDumpster
  • Virustotal
  • CrtSearch
  • threatminer
  • Censys

2.1.4 网站信息利用

在网站中可以根据网站本身的功能特点收集网站本身、各项安全策略、设置等可能暴露泄漏出的一些信息。

网站本身的交互通常不囿于单个域名,会和其他子域交互。对于这种情况,可以通过爬取网站,收集站点中的其他子域信息。这些信息通常出现在JavaScript文件、资源文件链接等位置。

网站的安全策略如跨域策略、CSP规则等通常也包含相关域名的信息。有时候多个域名为了方便会使用同一个SSL/TLS证书,因此有时可通过证书来获取相关域名信息。

2.1.5 CDN

可通过验证网站是否使用了CDN进行域名查找,一般使用了CDN的域名的父域或者子域名不一定使用了CDN,可以通过这种方式去查找对应的IP。另外CDN可能是在网站上线一段时间后才使用的,可以通过查找域名解析记录的方式去查找真实IP。

2.1.6 域名枚举

通过工具进行子域名枚举也是一种有效的域名搜集手段,域名枚举采用主动信息收集的方式,这种方式向目标站点发送了大量的请求数据包容易被检测发现。比较常用的域名枚举工具有:


*   [Layer子域名挖掘机]http://www.xdowns.com/soft/525081.html
*   [burp插件domain_hunter_pro]https://github.com/bit4woo/domain_hunter_pro/releases/download/v1.4/domain_hunter_pro-v1.4-jar-with-dependencies.jar
*   [dirsearch]https://github.com/maurosoria/dirsearch
*   [dirb]http://dirb.sourceforge.net/
*   [御剑后台扫描]https://www.xiazaiba.com/html/84460.html
*   [teemo]https://github.com/bit4woo/teemo
*   [subDomainsBrute]https://github.com/lijiejie/subDomainsBrute

2.2 端口信息

2.2.1 常见端口脆弱点

端口

服务

可能存在的风险威胁

21

ftp

是否支持匿名/弱口令

80

web

常见web漏洞/web管理后台弱口令

443

Openssl

心脏滴血以及一些web漏洞测试

873

rsync

是否支持匿名/弱口令

2601/2604

zebra路由

默认口令

3690

svn

svn泄露/未授权访问

6379

redis

一般无认证,可直接访问

7001

weblogic

默认弱口令

8061/8161

ActiveMQ

弱口令/远程命令执行

8080

tomcat

弱口令/默认口令

8089

jboss

未授权访问/弱口令

8649

ganglia

信息泄漏

8888

宝塔

未授权等多个漏洞

11211

memcache

未授权访问

27017

mongodb

未授权访问

2.2.2 常见端口扫描方式

在传输层TCP/IP协议中包含TCP、UDP两种协议,其中TCP面向连接的数据传输协议中通过TCP请求建立“三次握手”连接的原理就是端口扫描技术的基本原理,端口扫描就是根据TCP请求的“三次握手”原理在此基础上进行的。端口扫描并非TCP建立连接的过程,而是通过TCP连接的中不同阶段的状态进行实现的。

TCP连接“三次握手”的过程如上图所示,在TCP建立连接的过程中从图中也可以看出服务端有四种不同的状态:

(1)CLOSED状态:除了收到RST数据包进行丢弃,收到其他数据包一律返回RST。

(2)LISTEN状态:如果收到客户端建立连的接请求SYN数据包则进行第二次握手返回SYN和ACK,然后转入SYN-RCVD状态。如果收到ACK第三次握手包返回RST,收到其他包一律丢弃。


标签: 信息 扫描 端口 网站 收集 搜索 搜索引擎 通过 方式 进行

文明发言,请先登录

文明上网理性发言,请遵守国家法律法规。

最新评论

©2003- 黑基网 黑名单存档手机版网站地图免责条款法律声明隐私保护