域名(英语:Domain Name),又称网域,是由一串用点分隔的名字组成的 Internet 上某一台 计算机 或计算机组的名称,用于在数据传输时对计算机的定位标识(有时也指地理位置)。
由于 IP地址 具有不方便记忆并且不能显示地址组织的名称和性质等缺点,人们设计出了域名,并通过网域名称系统(DNS,Domain Name System)来将域名和 IP地址 相互 映射,使人更方便地访问互联网,而不用去记住能够被机器直接读取的 IP地址 数串。
万网(阿里云旗下)
新网
...
NameSilo
GoDaddy
...
子域名(或子域,英语:Subdomain)是在 域名系统 等级中,属于更高一层域的域。比如,mail.example.com 和 calendar.example.com 是 example.com 的两个子域,而 example.com 则是 顶级域.com 的子域。
凡顶级域名前加前缀的都是该顶级域名的子域名,而子域名根据技术的多少分为二级子域名,三级子域名以及多级子域名。
用于查询域名所有者、到期日、所属注册商等详细 WHOIS 信息。
Whois.com - Domain Names & Identity for Everyone
域名WHOIS查询 - WhoisSoft
域名Whois查询 - 站长之家
在线域名Whois查询,网站Whois反查-在线站长工具 bugscaner
whois查询-中国万网
域名信息查询 - 腾讯云
国家域名whois - CNNIC(只能查询 .cn 域名)
whois | Kali Linux Tools
可以使用邮箱、注册人、电话,ICP备案信息等进行反向查询。
域名Whois反查 - 站长之家
ICP备案,是为了防止在网上从事非法的网站经营活动,打击不良互联网信息的传播,国家对互联网信息服务实行的备案制度。
《互联网信息服务管理办法》指出互联网信息服务分为经营性和非经营性两类。国家对经营性互联网信息服务实行许可制度;对非经营性互联网信息服务实行备案制度。未取得许可或者未履行备案手续的,不得从事互联网信息服务。
《非经营性互联网信息服务备案管理办法》于2005年3月20日起施行。办法指出在中华人民共和国境内提供非经营性互联网信息服务,应当依法履行备案手续。未经国家机关单位许可备案,不得在中华人民共和国境内从事非经营性互联网信息服务。
ICP/IP地址/域名信息备案管理系统
ICP备案查询 - 站长工具
天眼查-商业查询平台_企业信息查询_公司查询_工商查询_企业信用信息系统
企查查-工商信息查询-公司企业注册信息查询-全国企业信用信息公示系统
爱企查首页 - 专业企业查询平台 - 查企业 - 查老板 - 查风险 - 工商信息查询系统
子域名通常用于其他业务系统,意味着更多的测试点。
在线子域名查询 - phpinfo.me
子域名查询|ip反查域名 - DNSGrep
subDomainBrute
Layer子域名挖掘机
Sublist3r
theHarvester
Teemo
域名系统(英文:Domain Name System,缩写:DNS)是 互联网 的一项服务。它作为将 域名 和 IP地址 相互 映射 的一个 分布式数据库 ,能够使人更方便地访问互联网。DNS使用 UDP端口 53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。
Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的 IP 地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从 Hosts 文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交 DNS 域名解析服务器进行 IP 地址的解析。
需要注意的是,Hosts 文件配置的映射是静态的,如果网络上的计算机更改了请及时更新 IP 地址,否则将不能访问。
类型 | 作用 |
A | 将域名指向一个 IPv4 地址 |
CNAME | 指向另一个域名 |
MX | 用于邮件服务器,相关参数由邮件注册商提供 |
TXT | 附加文本信息,常用于域名验证 |
NS | 域名服务器记录,可将指定域名交由其他 DNS 服务器解析管理 |
AAAA | 将域名指向一个 IPv6 地址 |
SRV | 用 DNS 做服务发现,可以将端口映射到指定的子域名上 |
DNS 在线解析
Ping.cn-DNS在线查询工具
域名解析查询(A/Txt/Cname/Mx/Srv/AAAA记录)
nslookup
crt.sh | Certificate Search
Netcraft
Maltego
Ping(Packet Internet Groper,因特网包探索器),用于测试网络是否正常,也可以 ping 域名获取对应的服务器 IP。(如果服务器使用了 CDN 则返回的是 CDN 加速节点的 IP)
ping [domain]/[ip] # 示例 ping baidu.com nslookup(name server lookup,域名服务器查找)
nslookup [domain] [dns-server] # 指定解析记录类型 nslookup -type=[type] [domain] # 示例 nslookup baidu.com nslookup -type=MX baidu.com nslookup -type=MX baidu.com 114.114.114.114 Whois - CNNIC
CDN的全称是 Content Delivery Network,即 内容分发网络。CDN 是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN 的关键技术主要有内容存储和分发技术。

来源链接:什么是阿里云CDN
CloudFlare
CloudFront
StackPath
...
帝联
蓝讯
网宿
七牛云
腾讯
百度
阿里云
...
Netcraft
DNS History
处在主域名和子域名上的业务都在同一台服务器上而子域名没有做 CDN 加速时可以用此方法。
针对只做了国内加速或在国外没有加速节点的服务器,当国外主机访问时则直接解析到主机。
Website uptime monitoring service, check is site down - Host-tracker
WebPageTest - Website Performance and Optimization Test
Website Speed Test | Pingdom Tools
netstat -ano | findstr 80 netstat -an | grep 80 telnet 192.168.1.88 80 wget 192.168.1.88 80 nc -vz 192.168.1.88 80 nc -vz 192.168.1.88 1-65535 common-ports.pdf
端口 | 说明 | 攻击方向 |
21/22/69 | FTP/SFTP 文件传输协议 | 允许匿名上传、下载、爆破和嗅探 |
2049 | NSF(Network File System) | 配置不当 |
139 | Samba 文件共享协议 | 爆破、未授权访问、RCE |
389 | LDAP 目录访问协议 | 注入、允许匿名访问、弱口令 |
22 | SSH | 爆破、SSH 隧道及内网代理转发、文件传输 |
23 | Telnet | 爆破、嗅探、弱口令 |
3389 | RDP 远程桌面 | 爆破 |
5900 | VNC | 爆破、弱口令 |
5632 | PcAnywhere 远程控制服务 | 密码抓取、代码执行 |
80/443/8080 | 常见的 Web 服务端口 | Web 攻击、爆破、漏洞利用 |
7001/7002 | Weblogic 控制台 | Java 反序列化、弱口令 |
8080/8089 | Jboss/resin/jetty/Jenkins | 反序列化、弱口令 |
9090 | Websphere 控制台 | Java 反序列化、弱口令 |
4848 | Glassfish 控制台 | 弱口令 |
1352 | Lotus domino 邮件服务 | 弱口令、信息泄露、爆破 |
10000 | Webmin-web 控制面板 | 弱口令 |
3306 | MySQL 数据库 | 注入、提权、爆破 |
1433 | MSSQL数据库 | 注入、提权、SA 弱口令 |
1521 | Oracle 数据库 | 注入、反弹 Shell、TNS 爆破 |
5432 | PostgreSQL数据库 | 注入、弱口令、爆破 |
27017/27018 | MongoDB 数据库 | 未授权访问、爆破 |
6379 | Redis 数据库 | 未授权访问、弱口令 |
5000 | Sysbase/DB2 数据库 | 注入、爆破 |
53 | DNS 域名解析服务 | 允许区域传送、DNS 劫持、缓存投毒、DNS 欺骗 |
67/68 | DHCP 动态主机配置协议 | 劫持、欺骗 |
161 | SNMP 简单网络管理协议 | 爆破、搜集目标内网信息 |
2181 | Zookeeper | 未授权访问 |
8069 | Zabbix | RCE、SQL 注入 |
9200/9300 | Elasticsearch | RCE |
11211 | Memcached | 未授权访问 |
512/513/514 | Linux Rexec | rlogin 登录、爆破 |
873 | Rsync | 匿名访问、文件上传 |
3690 | SVN | SVN 泄露、未授权访问 |
50000 | SAP Management Console | RCE |
# 帮助文档 nmap --help # 常用 nmap -sS -A -P [ip] # 脚本路径(lua):/usr/share/nmap/scripts/ # 查看脚本总数:/usr/share/nmap/scripts/ | wc -l # 脚本清单:https://nmap.org/nsedoc/scripts/ # 绕过鉴权 nmap --script=auth # 暴力破解 nmap --script=brute # 扫描漏洞 nmap --script=vuln 在线端口检测,端口扫描,端口开放检查-online tool-postjson
与 nmap 相似,同时还可以与 nmap 无缝衔接。
masscan | Kali Linux Tools
masscan -p22,80,445 192.168.1.0/24 用于探测内网主机。
nbtscan | Kali Linux Tools
nbtscan -r 192.168.1.0/24 通过关键特征,识别出目标的 CMS 系统、服务器、开发语言、操作系统、CDN、WAF 的类别和版本等信息。
CMS(Content Management System,内容管理系统)
像是在页面底部,或者是 Title 处的版权声明信息。


默认的 CSS、JS、图片等文件的 MD5 值,下载文件后计算即可得出。

![]()
浏览器用 F12 快捷键启动开发者工具,再用 Ctrl+F 查找功能搜索关键词。

再以 WordPress 为例,用户上传的图片和文件都会存储在wp-content/目录下

搜索引擎使用爬虫(Spider,又称蜘蛛)爬取网站页面制作成索引,就可以让用户在搜索引擎中通过关键字搜索到。而网站也有一些不希望被搜索引擎搜索到的页面或文件(如管理后台),这时就定义了一个 robots.txt 文件,该文件是网站和搜索引擎之间的协商,由网站管理员定义,告知爬虫哪些文件或目录允许或不允许收录。


该项目收集了主流 CMS 系统的特定文件 MD5 值,可以结合这份数据开发一套识别 CMS 系统的脚本。

Lucifer1993/cmsprint - Github
whatweb 是一款 CMS 识别工具,集成在 Kali Linux 的工具集中。
whatweb | Kali Linux Tools
# 使用示例,-v 表示输出详细信息 whatweb -v https://www.example.com Kali 环境下可以使用 apt 直接安装。

Tuhinshubhra/CMSeeK - Github
# 使用示例 cmseek -u https://www.example.com 一款识别 Web 网站技术栈的浏览器插件,支持 Chrome/Edge,Firefox 等浏览器。

Find out what websites are built with - Wappalyzer
与 Wappalyzer 相似,但识别的正确率要低一些。

WhatRuns — Discover What Runs a Website
在线 CMS 识别服务。

在线指纹识别,在线cms识别小插件--在线工具
Windows 平台下的老牌工具(需要安装 .NET Framework 3.5)。
较为小众的轻量化 CMS 指纹识别工具,可以导入文件批量探测。
ping www.example.com 
注意 PING wordpress.org(198.143.164.252) 这部分,如果存在 CDN 则可能显示的是 CDN 节点的域名。
# 第二个参数是指定 DNS nslookup www.example.com 114.114.114.114 
多尝试几次 nslookup,可能每次得到的 IP 地址都不一样,则可以判断是否存在 CDN。

多个地点Ping服务器,网站测速 - 站长工具
lbd(load balance detector,负载均衡探测器)
注意是 "lbd" 而不是 "ldb"。
lbd www.example.com 

各地CDN节点测速结果 - CDN云观测 - 站长工具

CDN Finder - CDN Planet
通过扫描全网绕过CDN获取网站IP地址

boy-hack/w8fuckcdn - Github
尝试找出cdn背后的真实ip

3xp10it/xcdn - Github
WAF(Web Application Firewall,Web 应用防火墙),用于网站安全的防护,可以过滤 HTTP/HTTPS 请求,拦截恶意攻击。
一款开源的跨平台 Web 应用程序防火墙(WAF)引擎,支持 Apache,IIS 和 Nginx。

SpiderLabs/ModSecurity - Github

0xInfection/Awesome-WAF -Github
Everything about web application firewalls (WAFs). 🔥
Foreword: This was originally my own collection on WAFs. I am open-sourcing it in the hope that it will be useful for pentesters and researchers out there. You might want to keep this repo on a watch, since it will be updated regularly. "The community just learns from each other." #SharingisCaring
"关于web应用程序防火墙(WAF)的一切。"
一个关于 WAF 特征的仓库。
The Web Application Firewall Fingerprinting Tool.
— From Enable Security
一款非常热门的 Web应用程序防火墙指纹工具,Kali Linux 内置。

wafw00f https://example.com wafw00f | Kali Linux Tools
enablesecurity/wafw00f - Github

nmap example.com --script=http-waf-detect.nse 默认就会执行识别 WAF 操作,识别成功则会提示。

sqlmap -u "exmple.com/search.php?id=1" Google Hacking 的语法收集
Google Hacking Database (GHDB) - Google Dorks, OSINT, Recon
BullsEye0/google_dork_list - Github
OSINT Framework
Shodan 是最早的互联网设备搜索引擎,与 Google, Bing 等搜索引擎不同,Shodan 收录的范围更大,包括服务器的系统版本、运行的服务,端口开放信息等。
详细参考 Filter Reference - Shodan
延伸阅读 一些有趣的Shodan搜索
Kunyu (坤舆),名字取自 <坤舆万国全图> ,测绘实际上是一个地理信息相关的专业学科,针对海里的、陆地的、天上的地理信息进行盘点。同样应用于网络空间,发现未知、脆弱的资产也是如此,更像是一张网络空间地图,用来全面描述和展示网络空间资产、网络空间各要素及要素之间关系,以及网络空间和现实空间的映射关系。所以我认为“坤舆”还是比较贴合这个概念的。
Kunyu(坤舆),旨在让企业资产收集更高效,使更多安全相关从业者了解、使用网络空间测绘技术。
knownsec/Kunyu - Github
尽可能花更少的时间,使用All in one工具收集更多的信息-URL采集。 集360、百度、谷歌、Shodan、Zoomeye、Censys、Fofa于一体一键运行获取目标URL、IP等信息。
coco413/DiscoverTarget - Github
saucerframe是一个基于python3的开源批量POC检测框架,默认使用协程异步请求,支持多线程并发,支持多种指定目标方式,可用于批量POC检测,也可根据需要扩展功能。
saucer-man/saucerframe - Github
网站管理员在部署网站时可能会因为粗心而把敏感文件放在网站的根目录下,或没有更改 HTTPD 配置而导致目录泄露。

域名后面拼接文件或目录名,访问并确认 HTTP 状态,如果为 200/403 则能证明该文件存在。
针对文件夹进行递归测试,逐层返回信息。
使用预先收集或制作的文件/目录列表进行自动化测试,任意一条匹配成功即可。
使用 a-zA-Z1-9 等各类字符组合,并从 1 - x 位逐个尝试。
根据 robots.txt 的内容进行探测。
模糊测试,主要针对参数。
# -a 自定义 User-Agent # # -c 设置 Cooike # # -E 设置客户端证书文件 # # -H 设置 HTTP 请求头 # # -i 是否大小写敏感 # # -N 根据指定的 HTTP 状态码忽略响应包 # # -o 输出文件 # # -p 设置代理 # # -r 不要递归扫描 # # -S 不显示测试字符 # # -u 指定用户名和密码 # # -X 扫描特定的扩展名 # 指定需要使用的字典(不指定则默认用 common) URL dirb /usr/share/wordlists/common.txt https://example.com 由 OWASP 推出,现已并入 OWASP ZAP 项目,DirBuster 则不再维护。
OWASP 新出品的漏洞扫描综合工具。
Intruder 模块下指定 payload 和爆破模式
版本控制系统(Version Control System)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。
# 初次使用时,先要配置全局邮箱和名字 git config --global user.email "you@example.com" git config --global user.name "Your Name" # 进入存放代码的文件夹 cd projectname/ # 初始化仓库 git init # 暂存文件 git add # 提交,并添加备注 git commit -m "fix bugs" # 提交,origin 是这个本地仓库的别名,可以另外指定 git push origin master 适用于上文提到的第二种方式。
适用于上文提到的第一种方式。
python GitHack.py http://example.com/.git/python GitHack.py http://example.com/.git/githacker --url http://example.com/.git/ --output-folder resultgit log git reset --hard [log hash] git diff python git_extract.py http://example.com/.git/dirb http://xxx.ctfhub.com:10800/ python GitHack.py http://xxx.ctfhub.com:10800/.git/ cd dist/xxx.ctfhub.com_10800/ git log git diff 690ced82338b6036a3fe8322b33f922a0593988f grep -ohr -E "https?://[a-zA-Z0-9\.\/_&=@$%?~#~]*" /apps/com.name.android/ |sort|uniq >> result.txt