基础入门-概念名词
1、域名
(1)什么是域名
相当于网站的名字维基百科对域名的解释是:互联网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。
网域名称系统(Domain Name System)有时也简称为域名(DNS),是互联网的一项核心服务,它作为可以将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,而不用去记住能够被机器直接读取的 IP 地址数据串。
(2)在哪里注册域名
1.Godaddy
2.Gandi
3.Hover
4.Namesilo
5.Namecheap
6.万网
例如:可以在 万网\阿里云(https://wanwang.aliyun.com/domain/)上注册域名,同时也可以查询到哪些域名已经被注册了。
(3)二级域名和多级域名
1.顶级域名:又叫一级域名,一串字符串中间一个点隔开,例如baidu.com。顶级域名是互联网DNS等级之中的最高级的域,它保存于DNS根域的名字空间中。
2.二级域名:实际上就是一个一级域名以下的主机名,一串字符串中间两个“.”隔开,例如www.baidu.com。二级域名就是最靠近顶级域名左侧的字段。
3.三级域名:二级域名的子域名,特征是包含三个“.”,例如___.___.baidu.com... ---> www.tieba.baidu.com
(4)域名对安全测试的意义
进行渗透测试时,其主域名找不到漏洞时,就可以尝试去测试收集到的子域名,有可能测试子域名网站时会有意向不到的效果,然后可以由此横向到主网站。
2、DNS
(1)什么是DNS
1.域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
2.DNS使用UDP端口53。
3.就像拜访朋友要先知道别人家怎么走一样,Internet上当一台主机要访问另外一台主机时,必须首先获知其地址,TCP/IP中的IP地址是由四段以“.”分开的数字组成(此处以IPv4的地址为例,IPv6的地址同理),记起来总是不如名字那么方便,所以,就采用了域名系统来管理名字和IP的对应关系。
- 如图,将域名解析为ip地址,www可以在阿里云设置,也可以用*匹配所有的三级域名。
- TTL与DNS TTL有区别。二者都是生存时间,前者指ICMP数据包的转发次数(跳数)在数据包首部,后者(如图)指域名解析信息在DNS中的存在时间。
- 可以根据dns的ttl查询web服务器的操作系统。
- 如果是自动获取dns,就向上查询,按照路由器,本地域名服务器查询。
- 如果是手动获取,就向设置的dns域名服务器查询。
- 距离越近的域名服务器,上网越快 。
(2)本地Hosts与DNS的关系
1.Hosts文件主要作用是定义IP地址和主机名的映射关系,是一个映射IP地址和主机名的规定。
2.Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。
3.浏览器访问网站,要首先通过DNS服务器把要访问的网站域名解析成一个唯一的IP地址,之后,浏览器才能对此网站进行定位并且访问其数据。
如何查看本地Hosts文件:
- Win + R:打开运行输入drivers
- 输入:c:\windows\system32\drivers\etc
- 选择使用记事本或者Notepad、Vs Code 等编程软件打开
修改文件,将www.xiaodi8.com的dns解析为1.2.3.4(进而实施钓鱼攻击)
(3)CDN是什么?与DNS的关系?
1.CDN的全称是Content DeliveryNetwork,即内容分发网络。
2.CDN的基本思路:是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。
3.通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上(单纯只使用DNS解析,直接PING就会显示出自己的真实IP,如果又使用CDN,PING出来的IP就不是用户的真实IP而是CDN服务器的IP节点。需要绕过CDN后去找真实IP地址。
4.使用CDN的目的:是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
通过超级ping的网站可以看到CDN的解析情况 https://www.ping.cn/ping/cdivtc.com
使用不同的DNS服务器ping同一个域名地址,解析出来的IP地址会不会不一样?
-
使用 114.114.114.114
-
使用 8.8.8.8
- 修改完后需要刷新一下dns:
ipconfig /flushdns
-
IP地址发现没有改变(应该是要发生改变的😂)
–> 这段有误,dns修改了,cdn会根据修改后的dns就近选择节点,解析出来的IP地址可能会发生改变。
(4)常见的DNS安全攻击
1. DDOS
DDoS攻击也叫做分布式拒绝服务攻击,可以使很多的计算机在同一时间遭受到攻击,使攻击的目标无法正常使用。攻击者可以伪造自己的DNS服务器地址,同时发送大量请求给其他服务器。其他服务器的回复会被发送到被伪造服务器的真实地址,造成该服务器无法处理请求而崩溃。攻击者同样可以通过利用DNS协议中存在的漏洞,恶意创造一个载荷过大的请求,造成目标DNS服务器崩溃。
2. DNS缓存中毒
DNS缓存中毒攻击者给DNS服务器注入非法网络域名地址,如果服务器接受这个非法地址,那说明其缓存就被攻击了,而且以后响应的域名请求将会受黑客所控。当这些非法地址进入服务器缓存,用户的浏览器或者邮件服务器就会自动跳转到DNS指定的地址。这种攻击往往被归类为域欺骗攻击(pharming attack),由此它会导致出现很多严重问题。首先,用户往往会以为登陆的是自己熟悉的网站,而它们却并不是。与钓鱼攻击采用非法URL不同的是,这种攻击使用的是合法的URL地址。
3. 域名劫持(DNS重定向)
域名劫持是通过攻击域名解析服务器(DNS),或伪造域名解析服务器(DNS)的方法,把目标网站域名解析到错误的地址从而实现用户无法访问目标网站的目的。域名劫持一方面可能影响用户的上网体验,用户被引到假冒的网站进而无法正常浏览网页,而用户量较大的网站域名被劫持后恶劣影响会不断扩大;另一方面用户可能被诱骗到冒牌网站进行登录等操作导致泄露隐私数据。
4. DNS查询嗅探
1.攻击者主要利用对DNS的配置信息获取网络环境的信息,为之后的攻击做好的准备。
2.针对这些情况,我们需要对DNS服务器需要采取特别的安全保护措施,在防火墙网络中,分开设置内部DNS服务器和外部DNS服务器,连接外部服务的外部DNS服务器上不留有对外禁止访问的内部网络系统的服务器,做到内外网络服务器分割。
5. ARP欺骗
1.ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。ARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP病毒,则感染该ARP病毒的系统将会试图通过”ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。
2.ARP欺骗通常是在用户局网中,造成用户访问域名的错误指向。如果IDC机房也被ARP病毒入侵后,则也可能出现攻击者采用ARP包压制正常主机、或者压制DNS服务器,以使访问导向错误指向的情况。
6.本机劫持
本机的计算机系统被木马或流氓软件感染后,也可能会出现部分域名的访问异常。
3、脚本语言
(1)常见脚本语言
1.一种介乎于 HTML 和诸如 JAVA 、 Visual Basic 、 C++ 等编程语言之间的一种特殊的语言。
2.尽管它更接近后者,但它却不具有编程语言复杂、严谨的语法和规则。
3.常见的脚本语言有:Python、JavaScript、Asp (逐渐淘汰,基本都是小站点在使用)、Aspx、Php (目前比较流行)javaweb、 pl、cgi等
(2)不同脚本类型与安全漏洞的关系
- 不同的脚本语言的编写规则不一样,程序产生的漏洞自然也不一样(代码审计)。
(3)漏洞挖掘代码审计与脚本类型的关系
- 漏洞挖掘代码审计:要熟悉相关代码和相关逻辑机制
4、后门
(1)什么是后门?有那些后门?
1.在信息安全领域,后门是指绕过安全控制而获取对程序或系统访问权的方法。
2.后门的最主要目的就是方便以后再次秘密进入或者控制系统。
- 后门的分类
1.网页后门:
此类后门程序一般都是服务器上正常的web服务来构造自己的连接方式,比如现在非常流行的ASP、cgi脚本后门等。
2.线程插入后门:
利用系统自身的某个服务或者线程,将后门程序插入到其中,具体原理原来《黑客防线》曾具体讲解过,感兴趣的朋友可以查阅。这也是现在最流行的一个后门技术。
3.扩展后门:
所谓的“扩展”,是指在功能上有大的提升,比普通的单一功能的后门有很强的使用性,这种后门本身就相当于一个小的安全工具包,能实现非常多的常驻见安全功能,适合新手使用————但是,功能越强,个人觉得反而脱郭后门“隐蔽”的初衷,具体看法就看各位使用的喜好了。
4.C/S后门(客户端服务器后门):
和传统的木马程序类似的控制方法,采用“客记端/服务端”的控制方式,通过某种特定的访问方式来启动后门进而控制服务器。
(2)后门在安全测试中的实际意义
1.方便下次更方便的进来。
2.获取到相关权限之后,后门相当于一个管道,便于操作。
3.即使管理员通过改变所有密码之类的方法来提高安全性,仍然能再次侵入,使再次侵入被发现的可能性减至最低。
4.大多数后门设法躲过日志,大多数情况下即使入侵者正在使用系统也无法显示他已在线。
(3)关于后门需要了解那些?(玩法,免杀)
1.玩法(创建后门之后我们可以怎么样操作?)
网站后门:便于控制网站
软件后门:用于控制
服务器后门:可以进行脱库、盗取信息
2.免杀技术全称为反杀毒技术Anti Anti-Virus简称“免杀”,它指的是一种能使病毒木马免于被杀毒软件查杀的技术。
3.由于免杀技术的涉猎面非常广,其中包含反汇编、逆向工程、系统漏洞等黑客技术,所以难度很高,一般人不会或没能力接触这技术的深层内容。
4.其内容基本上都是修改病毒、木马的内容改变特征码,从而躲避了杀毒软件的查杀。
5.后门需要掌握的核心技能,防止杀毒软件检查到。
5、web
(1)web的组成框架模型
(2)架构漏洞安全测试的简要测试
1.通信层
主要测试通信协议的安全,系统开放的端口,其中操作系统提供网络层和数据链路层协议,存在问题的可能性较小,一般关注开源协议已存在漏洞即可,无需重点关注。应用层服务与协议一般由产品形态决定,产品中可以自定义配置相关协议与参数,需要重点关注与测试。
2.应用层
应用层包含开发人员开发代码,为整个安全测试的核心模块。主要包括web安全测试,源码安全测试。其中web安全测试从web访问服务的维度,偏向黑盒,进行安全测试。源码安全测试从代码的维度,偏向白盒,进行安全测试。
3.系统层
主要测试操作系统安全,数据库服务安全,web服务器安全,以及其他一些中间件的安全。
4.管理层
主要包括产品资料的安全测试,安全策略制定,协调各个层面的安全测试以及安全风险的整体评估。
(3)为什么要从web界面为主
1.因为web使用方面广 。
2.从WEB方向先入手,一步一步的获取最高权限。
6、web相关漏洞
7、演示案例
(1)多级域名的枚举查找(原理,方式)
-
方法一:根据网站搜索引擎查找 — youku.com -->爬取结果分散
-
方法二:Layer工具批量爆破 -->批量
-
方法三:运营商的第三方接口:
域名查询a记录:
1.在提示符下直接输入域名,可查到该域名的A记录,其中“Non-authoritative answer”表示查询结果是从DNS的cache里返回的;
2.输入set type=mx,再输入域名,可查询MX记录;
3.输入set type=cname,再输入域名,可查询CNAME记录;
4.输入set type=ns,再输入域名,可查询NS记录。
(2)EXE 后门功能及危害及类似 WEB 后门
- 下载安装后门软件在虚拟机服务器,并且监听
- 生成木马文件,这里的host是控制端IP地址
- 目标机运行木马文件
- 木马上线,成功监听
(3)App 类结合 WEB 协议,PC 类结合 WEB 协议
- 修改模拟器代理服务器 —为本机ip (推荐使用逍遥模拟器)
-
Burpsuite抓包分析—监听端口和ip设置
-
打开模拟器的App
- 抓包分析
-
在浏览器中打开—http://api.yfxwgs.com/Notice/getNoticelist?page=1
-
修改浏览器的代理服务器—本地,8888端口
-
浏览器抓包
-
将模拟器抓包复制到浏览器的抓包—同样可行
-
使用漏了个大洞逆向模拟器的App
-
查看工具运行的结果
八、涉及资源
逍遥模拟器: http://www.xyaz.cn/
wsexplorer网络抓包工具 v1.5 绿色中文版: http://www.downcc.com/soft/11196.html
Quasar: https://github.com/quasar/Quasar/releases
漏了个大洞: https://pan.baidu.com/share/init?surl=3_i1ExwEaA59GfMt1Rp0Hg 提取码:0b7b