web安全攻防学习之1-渗透测试信息收集

github原文地址

  • 渗透测试
  • 1.1 收集域名信息
    • Whois查询
    • 备案信息查询
  • 1.2 收集敏感信息
  • 1.3 收集子域名信息
  • 1.4 收集常用端口信息
  • 1.5 指纹识别
  • 1.6 查找真实IP
  • 1.7 收集敏感目录文件
  • 1.8 会工程学

渗透测试

渗透测试 ,是为了证明 络防御按照预期计划正常运行而提供的一种机制。不妨假设,你的公司定期更新安全策略和程序,时时给系统打补丁,并采用了漏洞扫描器等工具,以确保所有补丁都已打上。如果你早已做到了这些,为什么还要请外方进行审查或渗透测试呢为,渗透测试能够独立地检查你的 络策略,换句话说,就是给你的系统安了一双眼睛。而且,进行这类测试的,都是寻找 络系统安全漏洞的专业人士。

渗透测试-新思

渗透测试是一项在计算机系统上进行的授权模拟攻击,旨在对其安全性进行评估。渗透测试人员使用与攻击者相同的工具、技术和流程,来查找和展示系统弱点对业务带来的影响。

渗透测试通常会模拟各种可能威胁您业务的攻击。渗透测试可以检查系统是否足够稳定,能否抵抗来自经过认证和未经认证的攻击,以及一系列系统角色发起的攻击。在合适的范围内,针对您需要评估的系统的任何方面,渗透测试都可以深入其中。

渗透测试类型
根据渗透测试的具体目标,组织针对目标系统向测试者提供不同级别的信息或访问权限。有时,渗透测试团队会在开始时设置一种方法并一直坚持下去。有时,测试团队会随着在渗透测试期间对系统认识的加深而改进其策略。在本行业中,我们讨论了三种类型的渗透测试:

  • 黑盒。团队对目标系统的内部结构一无所知。他们充当黑客,探寻任何可从外部发起攻击的弱点。
  • 灰盒。 团队对一套或多套凭证有一定了解。他们还了解目标的内部数据结构、代码和算法。渗透测试人员可以根据详细的设计文档(如目标系统的架构图),构建测试用例。
  • 白盒。 对于白盒测试,渗透测试人员可以访问系统和系统工件:源代码、二进制文件、容器,有时甚至是运行系统的服务器。白盒方法可在最短的时间内提供最高水平的安全保证。

备案信息查询

站备案是根据国家法律法规规定,需要 站的所有者向国家有关部门申请的
备案,这是国家信息产业部对 站的一种管理,为了防止在 上从事非法的 站经
营活动的发生。主要针对国内 站,如果 站搭建在其他国家,则不需要进行备案。

常用的 站有以下这两个:

  • ICP备案查询 :http://www.beianbeian.com
  • 天眼查:http://www.tianyancha.com

可以看到利用Google搜索,我们可以很轻松地得到想要的信息,还可以用它来收
集数据库文件、SOL注入、配置信息、源代码泄露、未授权访问和robots.txt等敏感信息

1.3 收集子域名信息

子域名也就是二级域名,是指顶级域名下的域名。假设我们的目标 络规模比
较大,直接从主域入手显然是很不理智的,因为对于这种规模的目标,一般其主域
都是重点防护区域,所以不如先进入目标的某个子域,然后再想办法迁回接近真正
的目标,这无疑是个比较好的选择。那么问题来了,怎样才能尽可能多地搜集目标
的高价值子域呢用的方法有以下这几种:

  • 子域名检测工具

用于子域名检测的工具主要有Layer子域名挖掘机、K8、 wydomain、 Sublist3r、dnsmaper、subDomains Brute、Maltego CE等。笔者重点推荐Layer子域名挖掘机、Sublist3r和subDomainsBrute

Sublist3r安装地址

安装指令:

在根目录运行:

运行结果:

错误:

  • 搜索引擎枚举

我们可以利用Google语法搜索子域名,例如要搜索百度旗下的子域名就可以使用
“site:baidu.com”

  • 第三方应用聚合枚举

很多第三方服务汇聚了大量的DNS数据集,可通过它们检索某个给定域名的子域名。
读者也可以利用DNSdumpster 站(https://dnsdumpster.com/),在线DNS侦查和搜索的工具挖掘出指定域潜藏的大量子域。

1.4 收集常用端口信息

在渗透测试的过程中,对端口信息的收集是一个很重要的过程,通过扫描服务
器开放的端口以及从该端口判断服务器上存在的服务,就可以对症下药,便于我们
滲透目标服务器。

所以在端口渗透信息的收集过程中,我们需要关注常见应用的默认端口和在端
口上运行的服务。最常见的扫描工具就是Nmap(具体的使用方法后续章节会详细介
绍),无状态端口扫描工具Masscan、ZMap和御剑高速TCP端口扫描工具。

文件共享服务器端口:

端口 端口说明 攻击方向
21/22/69 Ftp/Tftp 文件传输协议 允许匿名上传、下载、爆破和嗅探操作
2049 Nfs 服务 配置不当
139 Samba服务 爆破、未授权访问、远程代码执行
389 Ldap目录访问协议 注入、允许匿名访问、弱口令

远程连接服务端口

端口 端口说明 攻击方向
22 SSH 远程连接 爆破、SSH 隧道及内 代理转发、文件传输
23 Telnet 远程连接 爆破、嗅探、弱口令
3389 Rdp远程桌面连接 Shift 后门(需要 Windows Server 2003 以下的系统)、爆破
5900 VNC 弱口令爆破
5632 PyAnywhere服务 抓密码、代码执行

数据库服务端口

端口 端口说明 攻击方向
MSSQL 注入、提权、爆破
MSSQL 数据库 注入、提权、 SA 弱口令、爆破
Oracle 数据库 TNS 爆破、注入、反弹 Shell
PostgreSQL 数据库 爆破、注入、弱口令
MongoDB 爆破、 未授权访问
Redis 数据库 可兰试未授权访问、弱口令爆破
SysBase/DB2 数据库 爆破、注入

络常见协议端口:

端口 端口说明 攻击方
53 DNS域名系统 允许区域传送、DNS 劫持、缓存投毒、欺骗
67/68 DHCP服务 劫持、欺骗
161 SNMP协议 爆破、搜集目标内 信息

1.5 指纹识别

指纹由于其终身不变性、唯一性和方便性,几乎己成为生物特征识别的代名词。
通常我们说的指纹就是人的手指末端正面皮肤上凸四不平的纹线,纹线规律地排列
形成不同的纹型。而本节所讲的指纹是指 站CMS指纹识别、计算机操作系统及 Web
容器的指纹识别等。

应用程序一般在html、js、css等文件中多多少少会包含一些特征码,比如 WordPress
在robots.txt中会包含wp-admin、首页index.php中会包含generator=wordpress 3.xx,这个特征就是这个CMS的指纹,那么当碰到其他 站也存在此特征时,就可以快速识
别出该CMS,所以叫作指纹识别。

在渗透测试中,对目标服务器进行指纹识别是相当有必要的,因为只有识别出
相应的web容器或者CMS,才能查找与其相关的漏洞,然后才能进行相应的渗透操作。

CMS (Content Management System)又称整站系统或文章系统。在2004年以前。
如果想进行 站内容管理,基本上都靠手工维护,但在信息爆炸的时代,完全靠手
工完成会相当痛苦。所以就出现了CMS,开发者只要给客户一个软件包,客户自己
安装配置好,就可以定期更新数据来维护 站,节省了大量的人力和物力。
常见的CMS有Dedecms(织梦)、Discuz、PHPWEB、PHPWind、PHPCMS、ECShop、
Dvbbs、Site Weaver、AsPCMS、帝国、Z-Blog、WordPress等
代表工具有御剑Web指纹识别、WhatWeb、WebRobo、椰树、轻量WEB指纹识等,可以快速识别一些主流的CMS。如图1-9所示。

除了这些工具,读者还可以利用一些在线 站查询CMs指纹识别,如下所示。

  • BugScaner: http://whatweb.bugscaner.com/look/
  • 云悉指纹:http://www.yunsee.cn/finger.html
  • WhatWeb: https://whatweb.net

可以看出如果使用CDN,ping的域名会出现不一致,那就是CDN的域名。

还可以利用在线 站17CE(https://www.17ce.com)进行全国多地区的ping服务
器操作,然后对比每个地区ping的IP结果,查看这些1P是否一致,如果都是一样的,
极有可能不存在CDN。如果IP大多不太一样或者规律性很强,可以尝试查询这些IP的归属地,判断是否存在CDN。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月8日
下一篇 2022年2月8日

相关推荐