基础
域名
1.什么是域名?
1 | 相当于网站的名字维基百科对域名的解释是:互联网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。 |
2域名在哪注册?
1 | 1.Godaddy |
3什么是二级域名多级域名?
1 | 1.顶级域名:又叫一级域名,一串字符串中间一个点隔开,例如baidu.com。顶级域名是互联网DNS等级之中的最高级的域,它保存于DNS根域的名字空间中。 |
4域名发现对于安全测试意义?
1 | 进行渗透测试时,其主域名找不到漏洞时,就可以尝试去测试收集到的子域名,有可能测试子域名网站时会有意向不到的效果,然后可以由此横向到主网站。 |
DNS和CDN
DNS
域名系统(Domain Name System,DNS)是Internet上解决网上机器命名的一种系统。 就像拜访朋友要先知道别人家怎么走一样,Internet上当一台主机要访问另外一台主机时,必须首先获知其地址,TCP/IP中的IP地址是由四段以“.”分开的数字组成(此处以IPv4的地址为例,IPv6的地址同理),记起来总是不如名字那么方便,所以,就采用了域名系统来管理名字和IP的对应关系。就是将域名转为ip
DNS的工作流程大致如下:
- 当用户在浏览器中输入域名时,DNS客户端(通常是操作系统或浏览器内置)会先查询本地缓存是否有对应IP。
- 如果本地没有缓存,则向配置的DNS服务器发送查询请求。
- DNS服务器通过递归或迭代查询,逐级访问根域名服务器、顶级域名服务器和权威域名服务器,最终找到对应的IP地址。
- 该IP地址返回给客户端,客户端随后使用这个IP地址与目标服务器建立连接,实现访问
CDN
CDN(Content Delivery Network,内容分发网络)是构建在现有互联网基础之上的一层智能虚拟网络,通过在网络各处部署节点服务器,实现将源站内容分发至所有CDN节点,使用户可以就近获得所需的内容。
CDN的工作原理:
- 内容缓存:当用户首次请求某个内容时,CDN从源服务器获取该内容并缓存到地理位置较近的边缘节点。之后相同内容的请求直接由边缘节点响应,避免重复访问源服务器。
- 就近访问:用户请求自动被路由到最近的CDN节点,减少网络传输距离和时间。
- 动态加速:对于动态内容,CDN通过优化与源服务器之间的连接和智能路由,加快响应速度。
- 边缘逻辑计算:部分CDN支持在边缘节点运行代码,处理请求和优化内容,减轻源服务器负担。
常见DNS漏洞:
ddos
1 | DDoS攻击也叫做分布式拒绝服务攻击,可以使很多的计算机在同一时间遭受到攻击,使攻击的目标无法正常使用。攻击者可以伪造自己的DNS服务器地址,同时发送大量请求给其他服务器。其他服务器的回复会被发送到被伪造服务器的真实地址,造成该服务器无法处理请求而崩溃。攻击者同样可以通过利用DNS协议中存在的漏洞,恶意创造一个载荷过大的请求,造成目标DNS服务器崩溃。 |
dns缓存漏洞
1 | DNS缓存中毒攻击者给DNS服务器注入非法网络域名地址,如果服务器接受这个非法地址,那说明其缓存就被攻击了,而且以后响应的域名请求将会受黑客所控。当这些非法地址进入服务器缓存,用户的浏览器或者邮件服务器就会自动跳转到DNS指定的地址。这种攻击往往被归类为域欺骗攻击(pharming attack),由此它会导致出现很多严重问题。首先,用户往往会以为登陆的是自己熟悉的网站,而它们却并不是。与钓鱼攻击采用非法URL不同的是,这种攻击使用的是合法的URL地址。 |
域名劫持(dns重定向)
1 | 域名劫持是通过攻击域名解析服务器(DNS),或伪造域名解析服务器(DNS)的方法,把目标网站域名解析到错误的地址从而实现用户无法访问目标网站的目的。域名劫持一方面可能影响用户的上网体验,用户被引到假冒的网站进而无法正常浏览网页,而用户量较大的网站域名被劫持后恶劣影响会不断扩大;另一方面用户可能被诱骗到冒牌网站进行登录等操作导致泄露隐私数据。 |
DNS查询嗅探
1 | 攻击者主要利用对DNS的配置信息获取网络环境的信息,为之后的攻击做好的准备。 |
ARP欺骗
ARP(地址解析协议,Address Resolution Protocol)是一种用于将网络层的IP地址解析为数据链路层的物理MAC地址的协议,主要用于IPv4网络中
1 | ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。ARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP病毒,则感染该ARP病毒的系统将会试图通过”ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。 |
本机劫持:
1 | 本机的计算机系统被木马或流氓软件感染后,也可能会出现部分域名的访问异常。 |
脚本语言
常见的有asp,php,aspx,jsp,javaweb,pl,py,cgi
WEB
web的组成架构模型
网站源码,分脚本类型,分应用方向
操作系统:windows,linux
中间件:apache iis tomcat nginx等
数据库 access mysql mssql oracle
架构漏洞安全测试的简要测试
1 | 通信层 |
关于web源码其他说明
看这个网站https://websec.readthedocs.io/zh/latest/language/java/unserialize.html
后门
1 | 1.网页后门 : |
免杀
1 | 玩法(创建后门之后我们可以怎么样操作?) |
如何查询域名的A记录、max记录、cname记录和ns记录
用nslookup,先输入nslookup,在输入 set querytype=mx,最后输入域名就能得到域名的mx记录,其他同理
- A记录(Address Record)
- 用途:将域名(主机名)映射到对应的IPv4地址(IP地址)。
- 功能:当用户输入域名时,DNS通过A记录告诉用户访问的服务器的具体IP地址,实现域名到服务器的定位。
- 例子:域名
www.example.com
的A记录指向192.168.1.1
,用户访问www.example.com
时,实际上访问的是该IP地址的服务器。- 作用:实现域名和IP地址的直接绑定,是网站访问的基础。
- MX记录(Mail Exchange Record)
- 用途:指定负责处理该域名邮件的邮件服务器。
- 功能:邮件系统通过MX记录确定发送邮件时的目标邮件服务器,支持多个邮件服务器并可设置优先级,优先级低的服务器优先接收邮件。
- 例子:域名
example.com
的MX记录指向mail.example.com
,邮件发送时会根据MX记录路由到该服务器。- 作用:确保电子邮件能正确投递到指定的邮件服务器。
- CNAME记录(Canonical Name Record,别名记录)
- 用途:将一个域名作为别名指向另一个域名。
- 功能:允许多个域名指向同一个主机名,简化管理和维护。例如,
www.example.com
和mail.example.com
都可以指向host.example.com
,只需维护host.example.com
的A记录。- 作用:方便域名重定向和多服务指向同一服务器,灵活管理DNS记录。
- 工作流程:DNS查询时,先返回CNAME指向的真实域名,再对该真实域名进行解析。
- NS记录(Name Server Record)
- 用途:指定负责该域名解析的权威DNS服务器。
- 功能:告诉DNS解析器应该向哪些服务器请求该域名的DNS记录,是域名解析的起点和关键。
- 作用:保证域名解析的可靠性和高可用性,通常一个域名会有多个NS记录用于负载均衡和故障转移。
- 与SOA记录区别:NS记录指向解析服务器,SOA记录包含区域管理信息,如主服务器、管理员邮箱、刷新时间等
http/https
http
- HTTP协议是什么?
1 | HTTP协议是超文本传输协议的缩写,英文是Hyper Text Transfer Protocol。它是从WEB服务器传输超文本标记语言(HTML)到本地浏览器的传送协议。 |
- HTTP原理
1 | HTTP是一个基于TCP/IP通信协议来传递数据的协议,传输的数据类型为HTML 文件,、图片文件, 查询结果等。 |
- HTTP特点
1 | http协议支持客户端/服务端模式,也是一种请求/响应模式的协议。 |
- URI和URL的区别
1 | HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接。 |
常见请求方式
1 | GET:请求指定的页面信息,并返回实体主体。 |
https
HTTPS 协议(HyperText Transfer Protocol over Secure Socket Layer):一般理解为HTTP+SSL/TLS,通过 SSL证书来验证服务器的身份,并为浏览器和服务器之间的通信进行加密。
什么是SSL?
SSL(Secure Socket Layer,安全套接字层):1994年为 Netscape 所研发,SSL 协议位于 TCP/IP 协议与各种应用层协议之间,为数据通讯提供安全支持。
TLS(Transport Layer Security,传输层安全):其前身是 SSL,它最初的几个版本(SSL 1.0、SSL 2.0、SSL 3.0)由网景公司开发,1999年从 3.1 开始被 IETF 标准化并改名,发展至今已经有 TLS 1.0、TLS 1.1、TLS 1.2 三个版本。SSL3.0和TLS1.0由于存在安全漏洞,已经很少被使用到。TLS 1.3 改动会比较大,目前还在草案阶段,目前使用最广泛的是TLS 1.1、TLS 1.2。
浏览器在使用HTTPS传输数据的流程是什么?
1 | 首先客户端通过URL访问服务器建立SSL连接。 |
web源码扩展
1 | #数据库配置文件,后台目录,模版目录,数据库目录等 |
所以我们可以先查看网站的框架在网上能不能下载到,然后直接找漏洞