freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Web安全基础-信息收集
2020-11-09 17:39:39

引言:笔者也是初入渗透测试行业,旨在分享一些自己的心得体会,有不足的地方欢迎大家指正。

信息收集

信息收集是指通过各种方式获取所需要的信息,以便我们在后续的渗透过程更好的进行。因为只有我们掌握了目标网站或目标主机足够多的信息之后,我们才能更好地对其进行漏洞检测。

信息收集方式

主动收集:与目标主机进行直接交互,从而拿到目标信息,缺点是会记录自己的操作信息

被动收集:不与目标主机进行直接交互,通过搜索引擎或者社会工程等方式间接的获取目标主机的信息

主要收集内容

1、网站的信息
2、服务器的配置信息

3、只要与目标网站相关联的信息,都应该尽量去搜索

网站信息收集

0x01 CMS指纹识别

常用方式:

1、通过指定特殊目录或者特殊文件

2、底部信息@pwoered by

3、html中注释掉的内容

4、robots.txt文件中的关键字

5、火狐wappalyzer插件

6、whatweb工具

7、潮汐指纹:http://finger.tidesec.net

8、CMS识别工具 http://whatweb.bugscaner.com/look

CMS漏洞利用:确定了cms版本后,这里可以通过百度搜索相应漏洞

PS:可能大佬们有更好的方法,我现在就是这样很笨拙的去找

1604910143_5fa8fc3fbca5fea42f535.png!small?1604910165430

0x02 判断中间件版本

1、火狐插件判断

1604910496_5fa8fda0b797522ced160.png!small?1604910518376

2、响应包判断

1604910575_5fa8fdefca5f466fcca6f.png!small?1604910597435

3、fofa.so搜索

1604911243_5fa9008b9d215c4f87fa7.png!small?1604911265326

4、zoomeye搜索

1604911326_5fa900de3faf24823fe88.png!small?1604911347885

知道了网站是什么CMS,我们还要直到web服务器是什么,Apache、Nginx、Tomcat还是IIS。例如:Nginx版本<0.83会有解析漏洞IIS6.0会有文件名解析漏洞IIS7.0会有畸形解析漏洞。

中间件漏洞利用:这里需要注意的是版本,不同web中间件的不同版本,配合文件上传漏洞利用方式不一样。

PS:目前还未找到更高效的中间件收集方式,以后有了我会更新。

0x03 判断数据库类型

1. 从页面返回的报错信息判断

没有关闭报错信息,可以直接查看

2. 从端口判断:

oracle:1521、mssql:1433、mysql:3306、mongodb:  27017

3. 从数据特有的表判断:

oracle数据库:and (select count(*) from sys.user_tables)>0 and 1=1

mysql数据库5.0以上:  information_schema 库

access数据库:and (select count(*) from msysobjects)>0 and 1=1

mssql数据库:and (select count(*) from sysobjects)>0 and 1=1

4. 从数据库安装路径判断:

@@datadir

5. 判断是mssql 还是 mysql:

mysql 有  version()  mssql 没有,如果报错则是mssql

6. 判断mssql 还是 oralce :

在mssql中可以调用substring(), oracle则只可调用substr(),mysql也有substr()

0x04 网站目录结构

常用工具:burp、dirbuster、7kbscan

1604912140_5fa9040c332ccbabe1dec.png!small?16049121618581604912211_5fa904539b80424677c84.png!small?1604912233652

收集信息:

1、.SVN泄露

2、.git泄露

3、网站备份压缩文件

4、DS_Store文件

5、WEB-INF文件

6、配置文件泄露

PS:这里的工作是重中之重,其实也可以利用google语法,配合fofa,zoomeye进行目录扫描(需要读者自行扩展)

0X05 Whois信息收集

常用收集网站:

国外的who.is:https://who.is/

站长之家:http://whois.chinaz.com/

爱站:https://whois.aizhan.com/

PS:这里可能收集不到什么有效信息,但是别灰心,总会有奇迹的!

0X06 真实IP

如果渗透目标购买了CDN服务,可以ping通目标的域名,但得到的不是真正的目标Web服务器,这就导致了我们无法直接得到目标的真实IP。

常规方法:

1、查询DNS历史解析记录

https://dnsdb.io/zh-cn

1604912820_5fa906b44f83492f570c2.png!small?1604912841997

2、可以通过在线代理网站访问

https://asm.ca.com/en/ping.php //可能会得到真实IP

1604912888_5fa906f8022958731194a.png!small?1604912909697


3、查询子域名

一般情况下都是主站挂CDN,子域名流量不大的时候,可以不需要挂在CDN,因为浪费钱。


4、网站漏洞查找

扫描网站测试文件,如phpinfo、test等,从而找到真实 IP


5、网站邮件订阅查找

网站用户注册验证邮件或者RSS订阅功能,查看邮件,寻找头文件中的邮件服务器域名IP。


6、网络空间引擎搜索

钟馗之眼、shodan、fofa(推荐使用:https://fofa.so)


PS:验证是否为真实IP

通过IP直接访问,看是否为该网站。

服务器信息收集

0x01 WAF信息收集

手工:提交恶意数据,简单粗暴

工具:nmap -p80,443 --script=http-waf-detect    ip

0x02 判断操作系统

1、通过大小写来判断

windows不敏感

www.baidu.com/abc.php www.baidu.com/ABC.php

2、通过TTL值来判断

windows的TTL值是:128 linux的TTL值是:64

例如:ping  10.10.10.x

3、端口服务判断

windows端口 linux端口

IIS                 80 ssh               22

RPC              135 NetBios 137 138 139

SMB             445

Mssql            1433

4、网站语言判断

例如:asp肯定是windows

0x03 开放端口

工具:nmap

常用命令:

主机发现类:nmap -P0 -v 192.168.0.0/24

端口扫描类:nmap -sS 192.168.0.12

PS: Nmap用法太多,这里不赘述。度娘那里有很多大佬用的nmap语句详解

其他信息收集

子域名、旁站信息收集过程和主站保持一致,越详细越好。

C段信息使用扫描工具的时候,一定要注意频率,避免被封禁IP

还有企业公众号、APP等移动端信息需要收集

# web安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者