了解目标的基本信息,便于后期渗透。主要收集资料:服务器的配置信息和网站的信息,包括网站注册人、目标网站系统、目标服务器系统、相关子域名、目标服务器开放端口和服务器存放网站等。尽可能收集与目标网站相关联的信息。
1、whois查询
Whois是一个标准的互联网协议,用于收集网络注册信息,注册的域名、IP地址、域名所有人、域名注册商等信息。对于中小企业来说,域名所有人往往就是管理员。
备案号是网站是否合法注册经营的标志,一个网站域名要上线必然要经过备案程序,通过备案号反查可查 询目标的所有合法网站。
查询:
https://icp.sojson.com/ http://icp.chinaz.com
企业征信机构记录了一家企业的基本信息,历史沿革,股东及出资等信息的平台。
查询:
https://icredit.jd.com、天眼查:https://www.tianyancha.com
子域名:顶级域名的下一级,域名整体包括两个‘.’或一个‘/’。收集子域名可以很大程度知道目标所拥有的网站等资产信息
收集工具:子域名挖掘机-Layer、在线子域名挖掘
旁站指的是同一服务器上的其他网站,很多时候,有些网站可能不是那么容易入侵。那么,可以查看该网站所在的服务器上是否还有其他网站。如果有其他网站的话,可以先拿下其他网站的webshell,然后再提权拿到服务器的权限,最后就自然可以拿下该网站。
C段指的是同一内网段内的其他服务器,每个IP有ABCD四个段,举个例子,192.168.0.1,A段就是192,B段是168,C段是0,D段是1,而C段嗅探的意思就是拿下它同一C段中的其中一台服务器,也就是说是D段1-255中的一台服务器,然后利用工具嗅探拿下该服务器。
在线查询
旁站和C段在线查询地址:
https://webscan.cc
用来指定主机名(或域名)对应的IP地址记录。俗来说A记录就是服务器的IP,域名绑定A记录就是告诉DNS,当你输入域名的时候给你引导向设置在DNS的A记录所对应的服务器
将 IP 地址匹配至一个域或者子域,它允许反向的 DNS 查询工作。它执行的服务于 A 记录截然相反,因为它允许查找与特定 IP 地址相关联的域。
通常也被称为规范名字。这种记录允许您将多个名字映射到同一台计算机。通常用于同时提供WWW和MAIL服务的计算机。CNAME是别名解析,别名解析是先将域名解析到主机别名再转跳到IP,这样主机IP改变了不用重新解析。
也叫做邮件路由记录,用户可以将该域名下的邮件服务器指向到自己的mail server上,然后即可自行操控所有的邮箱设置。
域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。简单的说,NS记录是指定由哪个DNS服务器解析你的域名。
用来指定主机名(或域名)对应的IPv6地址记录。
给区域文件使用最初创建的主机名作为标签。它列出了负责该域的人员的联系电子邮件地址。
Viewdns:
http://viewdns.info
DNSdb :
https://www.dnsdb.io
CDN的全称是Content Delivery Network,即内容分发网络。一般只存在于某些用户量特别大的站点,通过此种方式来解决服务器性能的瓶颈。
简单来说,就是一组在不同运营商之间的对接节点上的高速缓存服务器,把用户经常访问的静态数据资源直接缓存到节点服务器上,当用户再次请求时,会直接分发到在离用户近的节点服务器上响应给客户。当用户有实际数据交互时,才会从远程web服务器上响应,这样可以大大提高网络的响应速度及用户体验。
目标服务器可能只有一个域名,通过该域名获取服务器真实IP对渗透很重要。如果目标度武器不存在CDN,可以直接通过获取目标的一些ip及域名信息。如果存在CDN,则涉及绕过CDN获取真实ip。当渗透目标购买了CDN服务,通过ping命令得到的是CDN,无法得到真实IP段。
存在CDN
不存在CDN
如果address存在一个地址,则不存在CDN。存在多个地址,则存在CDN
例 nslookup www.baidu.com 存在CDN
例 nslookup www.xxxxxx.cn 不存在CDN
Ping www.baidu.com
Ping www.xxxxx.cn
查询域名的历史解析记录,可能会找到网站使用CDN前的解析记录,从而获取真实ip。
利用https://viewdns.info/iphistory查询历史记录
很多时候,一些重要的站点会做CDN,而一些子域名站点并没有加入CDN,而且跟主站在同一个C段内,这时候,就可以通过查找子域名来查找网站的真实IP。
注:收集子域名后尝试以解析ip不在cdn上的ip解析主站,真实ip成功被获取到。
邮箱注册,邮箱找回密码、RSS邮件订阅等功能场景,通过网站给自己发送邮件,从而让目标主动暴露他们的真实的IP,查看邮件头信息,获取到网站的真实IP。
通过关键字或网站域名,就可以找出被收录的IP,很多时候获取到的就是网站的真实IP。
ZoomEy搜索
https://www.zoomeye.org/
证书颁发机构(CA)必须将他们发布的每个SSL/TLS证书发布到公共日志中,SSL/TLS证书通常包含域名、子域名和电子邮件地址。因此SSL/TLS证书成为了攻击者的切入点。
SSL证书搜索引擎:
https://censys.io/ipv4?q=github.com
大部分 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的DNS查询,很可能获取到真实IP。
验证:直接尝试用IP访问。
目录扫描可以让我们发现这个网站存在多少个目录,多少个页面,探索出网站的整体结构。通过目录扫描我们还能扫描敏感文件,后台文件,数据库文件,和信息泄漏文件等等 #### (1)、常见的敏感目录
robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被搜索引擎访问的部分,或者指定搜索引擎只收录指定的内容。当一个搜索引擎(又称搜索机器人或蜘蛛程序)访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,那么搜索机器人就沿着链接抓取。
1.、引导搜索引擎蜘蛛抓取指定栏目或内容;
2、网站改版或者URL重写优化时候屏蔽对搜索引擎不友好的链接;
3、屏蔽死链接、404错误页面;
4、屏蔽无内容、无价值页面;
5、屏蔽重复页面,如评论页、搜索结果页;
6、屏蔽任何不想被收录的页面;
7、引导蜘蛛抓取网站地图;
跨域,顾名思义就是需要的资源不在自己的域服务器上,需要访问其他域服务器。跨域策略文件是一个xml文档文件,主要是为web客户端(如Adobe Flash Player等)设置跨域处理数据的权限。
Sitemap 可方便网站管理员通知搜索引擎他们网站上有哪些可供抓取的网页。最简单的 Sitemap 形式,就是XML 文件,在其中列出网站中的网址以及关于每个网址的其他元数据(上次更新的时间、更改的频率以及相对于网站上其他网址的重要程度为何等),以便搜索引擎可以更加智能地抓取网站。
Git是一个开源的分布式版本控制系统,在执行git init初始化目录的时候,会在当前目录下自动创建一个.git目录,用来记录代码的变更记录等。发布代码的时候,如果没有把.git这个目录删除,就直接发布到了服务器上,攻击者就可以通过它来恢复源代码。
dirsearch -u 指定url -e 指定网站语言
github.com
gitHub是全球最大的面向开源及私有软件项目的托管平台。许多企业的开发人员在上传开源代码到github往往忽略了将密码等敏感信息删除导致信息泄露。
搜索引擎都会提供相应搜索语法,通过搜索语法可以快速得到想要的信息。
推荐搜索引擎:
必应:bing.com、百度:baidu.com、谷歌:google.com
推荐语法:
Site :搜索特定网站和网站域名
Inurl:搜索url含有的关键字
Intext:搜索网页正文含有的关键字
Filetype:搜索特定文档格式
Intitle:搜索网站标题含有的关键字
URL采集器:快速切换搜索引擎,快速获得搜索结果。
通常使用专门的端口扫描工具来进行。可以详细收集目标开放的端口、服务、应 用版本、操作系统、活跃主机等多种信息。
端口扫描流程:存活判断--端口扫描--服务识别
一般通过发送建立连接过程涉及的相关报文,根据返回包的情况来判断目标端口是否开放。
主流的扫描方式:利用TCP面向连接三次握手、四次挥手过程包,UDP非面向连接请求。
识别端口上运行的服务,识别方式有基于端口、基于banner和基于指纹三种。
三种识别方式在准确率和效率上各有不同,实际使用通常会相互配合使用。
识别方式 准确率 效率
基于端口 低 高
基于banner 中 高
基于指纹 高 低
Nmap在网络中具有强大的信息收集能力。具备主机探测、服务/版本检测、操作系统检测、网络路由跟踪、Nmap脚本引擎的功能, 在Kali中右键鼠标选择“打开终端”输入nmap和对应参数进行使用。
Nmap图形化--Zenmap 基本命令格式:
nmap [参数] IP/IP段/主机名
常用扫描参数及说明
-sT 使用TCP连接扫描,对目标主机所有端口进行完整的三次握手,如果成功建立连接则端口是开放的
-sS 使用半开连接(SYN stealth)扫描,使用SYN标记位的数据包进行端口探测,收到SYN/ACK包则 端口是开放的,收到RST/ACK包则端口是关闭的。
-sA TCP ACK扫描使用ACK标志位数据包,若目标主机回复RST数据包,则目标端口没有被过滤(用于发现防 火墙的过滤规则)。
-sU 使用UDP数据包经行扫描,返回UDP报文,则端口是开放的;返回不可达则端口处于关闭或过 滤状态
-p 扫描指定的端口
-F 快速扫描100个常用的端口
-sV 检测服务端软件版本信息
-O 检测操作系统信息
Eg:扫描baidu.com站点指定端口的服务情况
Eg:扫描10.10.10.0网段存活的主机
Eg:探测主机的操作系统
Eg:使用UDP探测scanme.nmap.org的DNS(53),SNMP(161),NTP(123)服务服务。
这里的指纹识别,不是指人的指纹这种生物特征识别,而是指网站CMS指纹识别、计算机操作系统及web容器的指纹识别等。应用文件在html、js、css等文件里面会包含一些特征码。比如WordPress在robot.txt中会包含wp-admin,首页index.html中会包含generator=wordpress 3.xx,这个特征就是指纹,碰到其他网站也存在此特征时,就可以快读识别出该CMS,这就叫做指纹识别。
CMS:Content Management System,内容管理系统。
类似一个模板,管理员把内容填进去就生成网站了。以前人们对网站内容的管理都是靠手工维护,后来有了CMS便于人们管理网站,它会定期更新数据来维护网站。判别的方法就是看应用程序的文件中出现的特征码,这个特征码就可以快速识别出到底是哪一个CMS,所以称它为指纹识别。并不是所有网站都用了CMS,所以这一块在信息收集中起的是一个辅助作用所以CMS指纹识别
在信息收集过程中,并不是为了收集到某些具体的信息,而是看看有没有漏洞利用的机会。常见的CMS有Dedecms、Discuz、PHPWEB、PHPWind、PHPCMS、ECShop、Dvbbs、SiteWeaver、ASPCMS、帝国、WordPress等。
快速识别国内一些主流的CMS。无法识别可能是因为CMS被隐藏,这也是一种防御手段。
Wappalyzer是基于正则表达式来识别Web应用,它的功能是识别单个url的指纹,其原理就是给指定URI发送HTTP请求,获取响应头与响应体并按指纹规则进行匹配。它也是一款浏览器插件,能识别出网站采用了那种Web技术,能够检测出CMS和电子商务系统、留言板、Javascript框架,主机面板,分析统计工具和其它的一些Web系统。
提供了完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。Nessus可同时在本机或远端上遥控,进行系统的漏洞扫描。Nessue不仅可以扫描网站,还可以扫描主机Nessue 使用8834端口作为后台,在本地输入 https://localhost:8834 即可跳转到登录后台页面。
例:扫描www.baidu.com
AWVS(Acunetix Web Vulne rability Scanner) 是一个自动化的Web应用程序安全测试工具。可以扫描HTTP/HTTPS的web站点。可以扫描SQL注入,XSS等漏洞。
例:扫描 www.fjnu.edu.cn
2、Nmap扫描 Nmap的漏洞扫描都是基于Script。自动化判断使用哪些脚本 --script=vuln
nmap -sV -p --version-all --script vuln ip
社工全称社会工程学,最早是由世界上著名黑客凯文米特尼克提出的,在《反欺骗的艺术》中,他提到“人”才是安全体系中最薄弱的环节。社工技术在安全领域广泛应用,并成为安全人员的一种辅助手段。社工需要收集的信息:项目信息、公司信息、个人信息。可利用谷歌、社工库、QQ等进行信息收集。
-浅谈御剑web指纹识别-CMS指纹识别_GordonSAYC的博客-CSDN博客_御剑web指纹识别
-DNS 记录简介 - 云+社区 - 腾讯云 (tencent.com)
-渗透测试信息收集-CMS指纹识别 - 知乎 (zhihu.com)
-绕过CDN找到真实IP的8种方法 - 知乎 (zhihu.com)
-Web指纹识别的介绍与编写 - 51CTO.COM
-Nmap 漏洞扫描 - 云+社区 - 腾讯云 (tencent.com)
★
欢 迎 加 入 星 球 !
代码审计+免杀+渗透学习资源+各种资料文档+各种工具+付费会员
进成员内部群
星球的最近主题和星球内部工具一些展示
关 注 有 礼
还在等什么?赶紧点击下方名片关注学习吧!
推荐阅读