大家好!
我是小黄,很高兴又跟大家见面啦 !
拒绝水文,从我做起 !!!!
未经允许,禁止转载 ,违者必究!!!!
本实验仅适用于学习和测试 ,严禁违法操作 ! ! !
今天更新的是:
- P1 渗透测试_基础入门_概念名词
- 往期检索:小白渗透入门系列 - 目录
创建时间:2021年2月25日
软件: MindMaster Pro
- 先放一张思维导图,大致知道操作系统的具体功能和目标,然后再一一展开叙述。
01 域名:
1. 什么是域名?
-
域名(Domain Name)域名的构成: 由英文字母、数字、构成,最大不超过255个字符。
-
域名定义: 是由一串用点分隔的名字组成的互联网上某一台计算机或者计算机组的名称,用于在数据传输时对计算机的定位标识(有时也指地理位置)。其实在网络世界上每台计算机都有自己的IP地址,使得大家彼此可以找到对方,但是IP地址并不方便记忆,跟人的身份证号一样,具有唯一性,但是彼此在打招呼说话的时候并不说它,而我们记住的是他的名字一样。域名是为了方便记忆,网络中每个域名会对应一个ip,而我们往往记住的是域名,比如百度域名 http://www.baidu.com,相比ip地址39.156.66.18(百度服务器其中一个ip)而言域名是很好记住的。
-
常见的顶级域名:.com 商业机构、.edu 教育公共机构、.gov 政府机构、.org 非盈利组织、.us 美国机构、.jp日本机构、.cn中国机构
2. 域名在哪里注册?
3. 什么是二级域名、多级域名?
- 顶级域名: 一个域名由两个以上的词段构成,最右边的就是顶级域名。
顶级域名又分为国家顶级域和国际顶级域名
1. 国家顶级域名(national top-level domainnames,简称 nTLDs):200 多个国家 都按照 ISO3166国家代码分配了顶级域名,例如中国是 CN,美国是 US,日本是 JP 等;
2. 国际顶级域名(international top-level domain names,简称 iTDs):例如表示 工商企业的 .Com .Top、表示网络提供商的.NET、表示非盈利组织的.org、表示教育的.edu、表示销售公司或企业的.store、表示提供信息服务的单位的.info 以及没 有限制的中性域名如.xyz 等 。
- 二级域名: 二级域名是指顶级域名之下的域名。在国际顶级域名下,它是指域名注册者的网 上名称,例如 IBM、Yahoo、Microsoft等;在国家顶级域名下,它是表示注册企 业类别的符号,例如 Top、Com、EDU、Gov、Net 等。
- 三级域名: 三级域名用字母( A~Z,a~z,大小写等)、数字(0~9)和连接符(-)组 成,各级域名之间用实点(.)连接,三级域名的长度不能超过 20 个字符。如无 特殊原因,建议采用申请人的英文名(或者缩写)或者汉语拼音名(或者缩写) 作 为三级域名,以保持域名的清晰性和简洁性。
快速判断域名等级:几个
.
就是几级域名。
4. 域名发现对安全测试意义?
- 进行渗透测试时,其主域名找不到漏洞时,就可以尝试去测试收集到的子域名,有可能测试子域名网站时会有意向不到的效果,然后可以由此横向到主网站。
02 DNS
1. 什么是DNS?
- 域名系统(Domain Name System,DNS)是Internet上解决网上机器命名的一种系统。 就像拜访朋友要先知道别人家怎么走一样,Internet上当一台主机要访问另外一台主机时,必须首先获知其地址,TCP/IP中的IP地址是由四段以“.”分开的数字组成(此处以IPv4的地址为例,IPv6的地址同理),记起来总是不如名字那么方便,所以,就采用了域名系统来管理名字和IP的对应关系。
- 可以参考本人写的DNS详解
2. 本地HOSTS与DNS的关系?
- Hosts文件主要作用是定义IP地址和主机名的映射关系,是一个映射IP地址和主机名的规定。
- Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。
- 浏览器访问网站,要首先通过DNS服务器把要访问的网站域名解析成一个唯一的IP地址,之后,浏览器才能对此网站进行定位并且访问其数据。
操作系统规定,在进行DNS请求以前,先检查系自己的Hosts文件中是否有这个域名和IP的映射关系。如果有,则直接访问这个IP地址指定的网络位置,如果没有,再向已知的DNS服务器提出域名解析请求。也就是说Hosts的IP解析优先级比DNS要高。
如何查看本地Hosts文件:
- Win + R:打开运行
- 输入:c:\windows\system32\drivers\etc
- 选择使用记事本或者Notepad、Vs Code 等编程软件打开
如何修改本地Hosts文件:
- 打开本地Hosts文件
- 将1.1.1.1 www.baidu.com 、表示域名“www.baidu.com”指向的ip为1.1.1.1
- 修改完成后保存本地Hosts文件、重新打开命令行窗口
- 输入www.baidu.com 、来验证是否修改成功
# 在命令行执行以下命令可以立即刷新DNS缓存,
# 使host文件修改立即生效
# 不用重新打开命令行窗口
ipconfig /flushdns
3. CDN是什么?与DNS的关系?
- CDN的全称是Content DeliveryNetwork,即内容分发网络。
- CDN的基本思路:是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。
- 通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上(单纯只使用DNS解析,直接PING就会显示出自己的真实IP,如果又使用CDN,PING出来的IP就不是用户的真实IP而是CDN服务器的IP节点。需要绕过CDN后去找真实IP地址。
- 使用CDN的目的:是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
- DNS和CDN的区别与联系
- CDN实现HHTTPS
4. 常见DNS安全攻击有哪些?
- DDoS攻击:
DDoS攻击也叫做分布式拒绝服务攻击,可以使很多的计算机在同一时间遭受到攻击,使攻击的目标无法正常使用。攻击者可以伪造自己的DNS服务器地址,同时发送大量请求给其他服务器。其他服务器的回复会被发送到被伪造服务器的真实地址,造成该服务器无法处理请求而崩溃。攻击者同样可以通过利用DNS协议中存在的漏洞,恶意创造一个载荷过大的请求,造成目标DNS服务器崩溃。
- DNS缓存中毒:
DNS缓存中毒攻击者给DNS服务器注入非法网络域名地址,如果服务器接受这个非法地址,那说明其缓存就被攻击了,而且以后响应的域名请求将会受黑客所控。当这些非法地址进入服务器缓存,用户的浏览器或者邮件服务器就会自动跳转到DNS指定的地址。这种攻击往往被归类为域欺骗攻击(pharming attack),由此它会导致出现很多严重问题。首先,用户往往会以为登陆的是自己熟悉的网站,而它们却并不是。与钓鱼攻击采用非法URL不同的是,这种攻击使用的是合法的URL地址。
- 域名劫持(DNS重定向):
域名劫持是通过攻击域名解析服务器(DNS),或伪造域名解析服务器(DNS)的方法,把目标网站域名解析到错误的地址从而实现用户无法访问目标网站的目的。域名劫持一方面可能影响用户的上网体验,用户被引到假冒的网站进而无法正常浏览网页,而用户量较大的网站域名被劫持后恶劣影响会不断扩大;另一方面用户可能被诱骗到冒牌网站进行登录等操作导致泄露隐私数据。
- DNS查询嗅探:
攻击者主要利用对DNS的配置信息获取网络环境的信息,为之后的攻击做好的准备。
针对这些情况,我们需要对DNS服务器需要采取特别的安全保护措施,在防火墙网络中,分开设置内部DNS服务器和外部DNS服务器,连接外部服务的外部DNS服务器上不留有对外禁止访问的内部网络系统的服务器,做到内外网络服务器分割。
- ARP欺骗:
ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。ARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP病毒,则感染该ARP病毒的系统将会试图通过”ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。
ARP欺骗通常是在用户局网中,造成用户访问域名的错误指向。如果IDC机房也被ARP病毒入侵后,则也可能出现攻击者采用ARP包压制正常主机、或者压制DNS服务器,以使访问导向错误指向的情况。
- 本机劫持:
本机的计算机系统被木马或流氓软件感染后,也可能会出现部分域名的访问异常。
03 脚本语言
1. 常见脚本语言有哪些?
- 脚本语言泛指单用作简单編程任务(如shell scripts)。
- 一种介乎于 HTML 和诸如 JAVA 、 Visual Basic 、 C++ 等编程语言之间的一种特殊的语言。
- 尽管它更接近后者,但它却不具有编程语言复杂、严谨的语法和规则。
- 常见的脚本语言有:Python、JavaScript、Asp (逐渐淘汰,基本都是小站点在使用)、Aspx、Php (目前比较流行)javaweb、 pl、cgi等
- 脚本语言分为
动态脚本语言
和静态脚本语言
。
- 动态脚本:Asp 、Aspx、Php 、Jsp
- 静态脚本:.htm、.html
2. 不同脚本类型与安全漏洞的关系?
- 不同的脚本语言的编写规则不一样,程序产生的漏洞自然也不一样(代码审计)。
3. 漏洞挖掘代码审计与脚本类型的关系?
- 漏洞挖掘代码审计:要熟悉相关代码和相关逻辑机制
4. 选择不同语言写代码,产生的安全漏洞不一样
04 后门:
1. 什么是后门?有哪些后门?
- 在信息安全领域,后门是指绕过安全控制而获取对程序或系统访问权的方法。
- 后门的最主要目的就是方便以后再次秘密进入或者控制系统。
- 后门的分类:
1.网页后门 :
此类后门程序一般都是服务器上正常 的web服务来构造自己的连接方式,比如现在非常流行的ASP、cgi脚本后门等。
2.线程插入后门:
利用系统自身的某个服务或者线程,将后门程序插入到其中,具体原理原来《黑客防线》曾具体讲解过,感兴趣的朋友可以查阅。这也是现在最流行的一个后门技术。
3.扩展后门:
所谓的“扩展”,是指在功能上有大的提升,比普通的单一功能的后门有很强的使用性,这种后门本身就相当于一个小的安全工具包,能实现非常多的常驻见安全功能,适合新手使用————但是,功能越强,个人觉得反而脱郭后门“隐蔽”的初衷,具体看法就看各位使用都的喜好了。
4.C/S后门(客户端服务器后门):
和传统的木马程序类似的控制方法,采用“客记端/服务端”的控制方式,通过某种特定的访问方式来启动后门进而控制服务器。
2. 后门在安全测试中的实际意义?
- 方便下次更方便的进来。
- 获取到相关权限之后,后门相当于一个管道,便于操作。
- 即使管理员通过改变所有密码之类的方法来提高安全性,仍然能再次侵入,使再次侵入被发现的可能性减至最低。
- 大多数后门设法躲过日志,大多数情况下即使入侵者正在使用系统也无法显示他已在线。
3. 关于后门需要了解哪些?(玩法、免杀)
- 玩法(创建后门之后我们可以怎么样操作?):
网站后门:便于控制网站
软件后门:用于控制
服务器后门:可以进行脱库、盗取信息
- 免杀技术全称为反杀毒技术Anti Anti-Virus简称“免杀”,它指的是一种能使病毒木马免于被杀毒软件查杀的技术。
- 由于免杀技术的涉猎面非常广,其中包含反汇编、逆向工程、系统漏洞等黑客技术,所以难度很高,一般人不会或没能力接触这技术的深层内容。其内容基本上都是修改病毒、木马的内容改变特征码,从而躲避了杀毒软件的查杀。
后门需要掌握的核心技能,防止杀毒软件检查到
05 WEB
1. WEB的组成相关框架模型:
- WEB的组成框架模型:网站原码、操作系统、中间件(搭建平台,提供服务的)、数据库。
- Web应用框架(Web application framework)是一种开发框架,用来支持动态网站、网络应用程序及网络服务的开发。
- 其类型有
基于请求
的和基于组件
的两种框架。 - 百度词条-web应用框架
2. 架构漏洞安全测试简单介绍:
- 安全测试分为四个层面,包括通信层、应用服务层、系统层、管理层的测试。
- 通信层
主要测试通信协议的安全,系统开放的端口,其中操作系统提供网络层和数据链路层协议,存在问题的可能性较小,一般关注开源协议已存在漏洞即可,无需重点关注。应用层服务与协议一般由产品形态决定,产品中可以自定义配置相关协议与参数,需要重点关注与测试。- 应用层
应用层包含开发人员开发代码,为整个安全测试的核心模块。主要包括web安全测试,源码安全测试。其中web安全测试从web访问服务的维度,偏向黑盒,进行安全测试。源码安全测试从代码的维度,偏向白盒,进行安全测试。- 系统层
主要测试操作系统安全,数据库服务安全,web服务器安全,以及其他一些中间件的安全。- 管理层
主要包括产品资料的安全测试,安全策略制定,协调各个层面的安全测试以及安全风险的整体评估。
3. 为什么要从WEB层面为主为首?
- 因为web使用方面广 。
- 从WEB方向先入手,一步一步的获取最高权限。
06 WEB相关安全漏洞
1. WEB源码类对应漏洞
git源码泄露
svn源码泄露
hg源码泄漏
CVS泄露
Bazaar/bzr泄露
网站备份压缩文件
WEB-INF/web.xml 泄露
DS_Store 文件泄露
SWP 文件泄露
GitHub源码泄漏
2. WEB中间件对应漏洞
一、IIS中间组件:
1、PUT漏洞
2、短文件名猜解
3、远程代码执行
4、解析漏洞
二、Apache中间组件:
1、解析漏洞
2、目录遍历
三、Nginx中间组件:
1、文件解析
2、目录遍历
3、CRLF注入4、目录穿越
四、Tomcat中间组件:
1、远程代码执行
2、war后门文件部署
五、jBoss中间组件:
1、反序列化漏洞
2、war后门文件部署
六、WebLogic中间组件:
1、反序列化漏洞
2、SSRF
3、任意文件上传
4、war后门文件部署
七、其它中间件相关漏洞
1、FastCGI未授权访问、任意命令执行
2、PHPCGI远程代码执行
3. WEB数据库对应漏洞
1.默认、空白及弱用户名/密码
2.SQL注入
3.广泛的用户和组权限
4.启用不必要的数据库功能
5.失效的配置管理
6.缓冲区溢出
7.特权升级
8.拒绝服务***
9.数据库未打补丁
10.敏感数据未加密
4. WEB系统层对应漏洞
桌面操作系统
服务器操作系统
嵌入式操作系统
网络操作系统等
5. 其他第三方对应漏洞
- 被利用的第三方ActiveX插件漏洞,涉及迅雷、暴风影音、百度超级搜霸、realplayer等多款常见软件的部分版本中,而且其中多数漏洞曾经是或者现在仍是0day漏洞。它是相对于系统漏洞后一些插件的漏洞来说的,所以叫第三方漏洞。
6. APP或者OC应用结合类
- 逆向破解,从APP中协议出协议来,到对应网站上去测试。
- 一般APP多与 网站有关联
07 演示案例
1. 多级域名的枚举查找(原理、方式)
2. DNS解析修改后分析(本地或服务)
- 把自己电脑的DNS服务的改成手动获取,并换dns(比如先8.8.8.8,再114.114.114.114),分别ping同一网站,看解析出来的ip是否不同。
3. EXE后门功能及危害及类型WEB后门
- Quasar后门程序(.exe)生成并使用:
- web后门:beef、WSExploer抓包、wireshark抓包等
- 使用Quasar进行木马植入
4. APP类结合WEB协议,PC类结合WEB协议
- Burp Suite抓app的包,然后改包发送等;
- Apk数据提取(安卓逆向工具):下载下方资源、解压,然后把一个apk文件放入到apps文件夹,运行exe文件,之后会生成results文件,apk的数据就在这里。
各位路过的朋友,如果觉得可以学到些什么的话,点个赞 再走吧,欢迎各位路过的大佬评论,指正错误,也欢迎有问题的小伙伴评论留言,私信。
每个小伙伴的关注都是本人更新博客的动力!!!
请微信搜索【 在下小黄 】文章更新将在第一时间阅读 !
博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!