web安全之信息打点

目录

前言

一.web架构篇

(1)域名

C段旁注

子域名

goole hacking语法

在线子域名查询网站

工具查询子域名

whois信息

域名反查IP

(2)操作系统

TTL值判断

大小写判断

(3)数据库

端口开放情况判断

数据库和语言的常用搭配判断

(4)中间件

中间件和语言常用搭配判断

看返回数据包

开放端口判断

(5)语言

URL后缀判断

 根据cookie值判断

返回的响应包判断

 二、源码篇

 开源cms源码获取方式

识别cms的类型

下载已识别的cms源码

闭源售卖源码获取方式

购买或直接下载源码

自主开发源码获取方式

composer.json文件泄露

git源码泄露

svn源码泄露

网站备份文件泄露

DS_Store 文件泄露

三、阻碍篇

CDN服务

判断网站是否开启CDN服务

 Waf

Waf指纹识别

负载均衡

判断目标站点是否开启负载均衡服务

四、CDN绕过篇

国外请求

子域名ping

邮件服务查询

遗留文件扫描

DNS历史记录查询

使用工具查询




前言

        在渗透测试的过程中,信息收集贯穿着整个渗透测试的过程,做好信息收集可以为后面的工作增加更多的攻击面,总得来说信息收集是渗透测试的基石。

一.web架构篇

(1)域名

C段旁注:

C段:同网段不同服务器

旁注:同服务器不同站点

在线C段旁注查询工具:同IP网站查询,C段查询,IP反查域名,在线C段,旁站工具 - WebScan
 

子域名:

1.goole hacking语法:

用site:baidu.com来查找baidu.com的子域名


 

2.在线子域名查询网站:

子域名查询|ip反查域名 - DNSGrep

3.工具查询子域名:

https://github.com/euphrat1ca/LayerDomainFinder
 

whois信息:

whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息(如域名所有人、域名注册商、域名注册日期和过期日期等)。 通过域名whois查询,可以查询域名归属者联系方式,以及注册和到期时间。

whois在线查询工具:

站长工具_whois查询工具_爱站网

SEO综合查询 - 站长工具

https://whois.cloud.tencent.com/


域名反查IP:

 利用ping命令:


 

(2)操作系统

TTL值判断:

通过TTL值判断操作系统的方法不一定准确,因为对方可能修改过TTL值,如果对方未对TTL值进行修改,那么我们可以通过下列的默认操作系统的TTL值对操作系统进行判断:
1、WINDOWS NT/2000   TTL:128
2、WINDOWS 95/98     TTL:32
3、UNIX              TTL:255
4、LINUX             TTL:64
5、WIN7          TTL:64
 

大小写判断:

在linux系统和windows系统中,linux系统对大小写敏感,windows系统对大小写不敏感,我们可以针对网站对大小写是否敏感进行操作系统类型的判断,例如修改URL中的小写字母为大写字母。

(3)数据库

端口开放情况判断:

关系型数据库:

1.Oracle数据库默认端口号为,1521;

2.MySQL数据库默认端口号为,3306;

3.SQLServer数据库默认端口号为,1433;

4.postgreSQL数据库默认端口号为,5432;

NOSQL数据库:

1.MongoDB默认端口号为:27017;

2.Redis默认端口号为:6379;

3.memcached默认端口号为:11211;

其他:
1527  Derby
5432  pgsql
5000  db2
9092  pointbase
无默认 Informix

数据库和语言的常用搭配判断:

PHP+MySQL

Jsp+MySQL,Oracle

Python+MongoDB,MySQL

Asp+Access

Aspx+SQLServer

(4)中间件

中间件和语言常用搭配判断:

Apache + PHP
Nginx + PHP
IIS + ASPX(ASP.NET)
Linux + Tomcatt + JSP
Tomcat + JSP

看返回数据包:

在返回的响应数据包中,有可能会返回中间件的类型:

开放端口判断:

Tomcat默认端口号:8080

Weblogic默认端口号:7001

Jboss默认端口号:8080

(5)语言

URL后缀判断:

在url中自带的文件后缀,如下图中:

由PHP搭建的网站:

由JSP搭建的网站:

 根据cookie值判断:

JSESSIONID代表JSP,PSESSIONID代表PHP,如下图中:

由JSP搭建的网站:

由PHP搭建的网站:

返回的响应包判断:

在返回的响应包中server处可能会返回网站搭建语言的类型:

 
二、源码篇

通常网站的源代码分为三类:开源cms、闭源售卖、自主开发。

 开源cms源码获取方式:

1.识别cms的类型:

云悉指纹识别:

yunsee.cn-2.0

潮汐指纹识别:

TideFinger 潮汐指纹 TideFinger 潮汐指纹

国外cms在线识别平台:
Detect which CMS a site is using - What CMS?
 

2.下载已识别的cms源码:

到github或者各个开源cms的官网下载已经识别的cms源码

闭源售卖源码获取方式:

1.购买或直接下载源码:

闭源源代码购买途径:

源码铺子-国内知名精品源码聚集地 - 源码铺子

商城源码 - 云创源码

自主开发源码获取方式:

由于自主开发的源码的隐秘性较高,因此想在网上直接找到目标自主开发的网站源码几乎是不可能的,因此我们只能通过漏洞和建站管理员的疏忽导致的源码泄露来获取网站的源代码。

1.composer.json文件泄露

Composer是 PHP 中用来管理依赖(dependency)关系的工具。 你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮你安装这些依赖的 库文件 。composer.json 是 Composer 工具使用的配置文件,在使用 Composer 管理 PHP 项目时必不可少。

该网站存在composer.json,可以在该配置文件中看出该网站使用的cms。

2.git源码泄露

Git是一个开源的分布式版本控制系统,在很多开发工具上都有把源代码同步到github上的功能,如果开发者开启了这个功能,会在目录中创建一个.git文件夹,如果网站上线后.git文件夹还在,那么攻击者可以通过工具将网站的源码恢复出来。

 判断网站是否存在git源码泄露

GitHack是一个利用git源码泄露恢复网站源代码的工具

github项目地址:https://github.com/lijiejie/GitHack

用法示例:

GitHack.py http://www.openssl.org/.git/

3.svn源码泄露

SVN是一个开放源代码的版本控制系统。使用SVN管理本地代码时会创建一个.svn的文件夹,如果网站管理员在上线网站后没有删除.svn文件夹,那么就会被攻击者利用,造成源码泄露。

SvnHack一个Svn信息泄露辅助工具,可以使用这个脚本列取网站目录,读取源码文件以及下载整站代码。

GitHub - callmefeifei/SvnHack: 一个Svn信息泄露辅助工具,可以使用这个脚本列取网站目录,读取源码文件以及下载整站代码。
 

用法示例:

python SvnHack.py -u http://x.x.x.x/.svn/entries  —download

4.网站备份文件泄露

管理员将网站源代码备份在Web目录下,攻击者通过猜解文件路径,下载备份文件,导致源代码泄露。

常见的备份文件后缀:

  • .rar

  • .zip

  • .7z

  • .tar.gz

  • .bak

  • .txt

  • .old

  • .temp

利用目录扫描工具对目标网站进行扫描

5.DS_Store 文件泄露

.DS_Store是Mac下Finder用来保存如何展示 文件/文件夹 的数据文件,每个文件夹下对应一个。如果将.DS_Store上传部署到服务器,可能造成文件目录结构泄漏,特别是备份文件、源代码文件。

github项目地址:https://github.com/lijiejie/ds_store_exp

用法示例:

ds_store_exp.py http://hd.zj.qq.com/themes/galaxyw/.DS_Store

三、阻碍篇

CDN服务

cdn全称是内容分发网络。其目的是让用户能够更快速的得到请求的数据。如果网站开设了CDN服务,那么会出现不同地区ping该网站出现不同ip的情况,相当于隐藏了真实的ip,对攻击者也造成了一定的阻碍。

判断网站是否开启CDN服务:

多地ping在线工具:

利用在线工具对baidu.com进行多地ping操作,如果响应ip各不相同则说明该站点存在CDN服务

利用在线工具对xiaodi8.com进行多地ping操作,如果响应ip都相同则说明该站点不存在CDN服务

 Waf

WAF即Web应用程序防火墙通过过滤和监视Web应用程序与Internet之间的HTTP通信来帮助保护Web应用程序。它通常可以保护Web应用程序免受跨站点伪造,跨站点脚本(XSS),文件包含和SQL注入等攻击。

常见的云WAF有阿里云盾腾讯云 T-Sec Web 应用防火墙百度云应用防火墙 WAF华为云-云防火墙 CFW华为云 Web应用防火墙 WAF安全狗云御WEB应用防护系统安恒玄武盾云防护绿盟网站云防护启明星辰虚拟化WAF深信服云Web应用防火墙云WAF知道创宇-创宇盾F5 分布式云 WAF奇安信网站卫士360磐云网宿Web应用防火墙奇安信网神WEB应用安全云防护系统

Waf指纹识别:

通过拦截特征页面进行指纹识别:

这里引用潇湘信安微信公众号3had0w师傅写的一篇文章,里面包含了30多个市面上常见的waf防火墙的拦截页面。

https://mp.weixin.qq.com/s/8F060FU9g_78z57UKS-JsQ

工具识别:

推荐项目wafw00f,该工具支持100多种waf的指纹识别:

https://github.com/EnableSecurity/wafw00f

负载均衡

负载均衡(Load Balance,简称 LB)是高并发、高可用系统必不可少的关键组件,目标是 尽力将网络流量平均分发到多个节点,以提高系统整体的响应速度和可用性。

判断目标站点是否开启负载均衡服务:

利用kali linux中自带的工具lbd识别
存在负载均衡:

不存在负载均衡:

四、CDN绕过篇

1.国外请求:

由于开启CDN服务需要一定的成本,因此很多网站即使开启了CDN服务,范围也仅限于国内访问该网站时享受CDN服务,绕过CDN可以切换国外的ip去访问目标站点,或者用非洲ip去访问该站点。

在线工具链接:

全球 CDN 服务商查询_专业精准的IP库服务商_IPIP

2.子域名ping:

有些网站只给自己的www开启CDN服务,其他的子域名则未开启。

CDN---->ping www.abc.com

非CDN--->ping  abc.com

3.邮件服务查询:

一些站点的邮件可能来源于真实ip,因此当收到目标站点邮件时,查看源ip有可能就是该网站的真实ip。

4.遗留文件扫描:

通过扫描建站之初的遗留文件,例如phpinfo()文件,phpinfo()文件可能包含真实ip。例如,用谷歌搜索:site:xxx.com inurl:phpinfo.php。

5.DNS历史记录查询:

目标网站在开启CDN服务之前,其真实的ip可能在DNS缓存之中,因此我们可以在DNS记录之中查看网站的真实IP。

在线工具:

DNS记录查询_DNS解析查询_A记录_CNAME查询_AAAA查询_MX查询_TXT查询_NS查询_PTR查询_SRV查询

6.使用工具查询:

github地址:

GitHub - Tai7sy/fuckcdn: CDN真实IP扫描,易语言开发

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值