渗透测试基础1笔记随笔

1、渗透测试(Penetration Testing)是一种通过模拟恶意黑客攻击的技术与方法,挫败目标系统的安全控制措施并获得控制访问权的安全测试方法。

2、网络渗透测试主要依据CVE(Common Vulnerabilities and Exposures)已经发现的安全漏洞,模拟入侵者的攻击方法对网站应用、服务器系统和网络设备进行非破坏性质的攻击性测试。

3、渗透测试的目的是:侵入系统并获取机密信息并将入侵的过程和细节产生报告提供给用户,由此确定用户系统所存在的安全威胁,并能及时提醒安全管理员完善安全策略,降低安全风险。

4、为什么要进行渗透测试(渗透测试的必要性)
1、百密一疏,新系统可能存在未知的风险
2、未雨绸缪,而不是亡羊补牢
3、专业的渗透测试后,即使是系统未被攻破,也可以以此证明先前实行的防御是有效的
4、专业的渗透测试可以有效评估系统的安全状况,并提出合理的改进方案

5、黑白盒测试,灰盒测试

黑盒测试:黑盒测试:安全审计员在不清楚被测单位的内部技术构造的情况下,从外部评估网络基础设施的安全性。
白盒测试:白盒测试:安全审计员可以获取被测单位的各种内部资料甚至不公开资料,所以渗透测试人员的视野更为开阔。

从以下3个方面区分黑白盒测试:

1、测试方法 黑盒测试是功能测试, 已知产品的功能设计规格 ,白盒测试是结构测试, 已知产品的内部工作过程

2、测试目的 黑盒测试是在不知道内部工作过程的情况下进行检验看是否可以正确的接收数据,以及是否可以返回正确的结构,白盒测试是在已知内部工作过程的情况下,看是否可以达到预期目标

3、测试原理 黑盒测试是从用户的角度出发,看输入输出数据是否正确,而白盒测试是进行各模块的功能检测

灰盒测试:介于白盒与黑盒之间,是基于对测试对象内部细节有限认知的软件测试方法。

6、渗透测试的分类(根据渗透测试目标可分为以下几类)
1、主机操作系统渗透测试
2、数据库系统渗透测试
3、应用系统渗透测试:对渗透目标提供的各种应用,如ASP、PHP等组成的www应用进行渗透测试
4、网络设备渗透测试:对各种防火墙、入侵检测系统、网络设备进行渗透测试
5、外网渗透测试: 模拟对内部状态一无所知的外部攻击者的行为。包括对网络设备的远程攻击,口令管理安全性测试,防火墙规则试探、规避,Web及其它开放应用服务的安全性测试
6、内网渗透测试:模拟客户内部违规操作者的行为(绕过了防火墙的保护)

7、渗透测试过程的最大的风险:测试过程中对业务产生影响。

8、渗透测试的原则

1、渗透测试是一个渐进的并且逐步深入的过程
2、渗透测试是选择不影响业务系统正常运行的攻击方法进行的测试

9、渗透测试的合规性:符合规范和法律要求也是执行业务的一个必要条件(渗透测试工具必须使用一些通过规范审核后的工具)。

10、渗透测试的执行标准,通过建立起进行渗透测试所要求的基本准则基线,来定义一次真正的渗透测试过程

​ 该标准(渗透测试的执行标准)将渗透测试过程分为七个阶段,并在每个阶段中定义不同的扩展级别,而选择哪种级别则由被攻击测试的客户组织所决定。

​ 第一阶段:前期交互阶段:

​ 第二阶段:情报收集阶段:

​ 第三阶段: 威胁建模阶段:

​ 第四阶段: 漏洞分析阶段:

​ 第五阶段:渗透攻击阶段:

​ 第六阶段: 后渗透攻击阶段:

​ 第七阶段: 报告阶段:

​ 它是非常全面的渗透测试框架,涵盖了渗透测试的技术方面和其他重要方面,如范围蔓延(scope creep)、报告,以及渗透测试人员保护自身的方法。

11、渗透测试的目的是评估计算机网络系统的安全性

12、渗透测试通过被允许的行为模拟黑客攻击来对目标系统进行测试

13、渗透测试的结果:提高了目标系统的安全级别

14、在前期交互阶段最重要的是确定渗透测试的范围、目标、限制条件以及服务合同细节。

该阶段通常涉及收集客户需求、准备测试计划、定义测试范围与边界、定义业务目标、项目管理与规划等活动。

15、信息收集是每一步渗透攻击的前提,通过信息收集可以有针对性地制定模拟攻击测试计划,提高模拟攻击的

成功率,同时可以有效的降低攻击测试对系统正常运行造成的不利影响。

信息收集的方法包括DNS探测、操作系统指纹判别、应用判别、账号扫描、配置判别等。

信息收集常用的工具:

(1)商业网络安全漏洞扫描软件Nessus,开源安全检测工具Nmap等。

(2)操作系统内置的许多功能(Telnet、 Nslookup、 IE等) 也可以作为信息收集的有效工具。

16、常见的端口以及服务

21:FTP端口,看是否存在匿名访问 22:SSH服务端口,看是否存在弱口令 23:Telnet端口 25:SMTP简单邮件传输协议端口 53:DNS服务端口(TCP/UDP 53) 67/68:DHCP服务端口(68是客户端的端口,67是服务器的端口) 80:HTTP端口,常见的web漏洞 139:SMB/CIFS服务 143:IMAP协议端口 443:HTTPS端口(openssl, 心脏出血) 445:SMB服务端口(smb、 ms08-067、 ms17-010) 512/513/514:Linux Rexec服务端口 1433-- mssql, 弱口令 1521-- oracle, 弱口令 3306:MySQL数据库端口 3389:Windows远程桌面服务 6379-- redis未授权访问,弱口令 8080:Tomcat、JBoss 端口

17、外网的入口:

黑盒外部渗透(存在已知漏洞的旧版本CMS[文件泄露、SQL注入、命令注入、[文件上传、包含、读取]、XSS、XXE、逻辑漏洞]),邮件服务器(传递密码[VPN等]、钓鱼、弱口令)

18、威胁建模主要使用在情报搜集阶段所获取到的信息,来标识出目标系统上可能存在的安全漏洞与弱点。
19、在进行威胁建模时,将确定最为高效的攻击方法、所需要进一步获取到的信息,以及从哪里攻破目标系统。
20、在威胁建模阶段,通常需要将客户组织作为敌手看待,然后以攻击者的视角和思维来尝试利用目标系统的弱点。

21、渗透攻击主要是针对目标系统实施深入研究和测试的渗透攻击,并不是进大量漫无目的的渗透测试。

主要包括,以下几类:
1、精准打击
2、绕过防御机制
3、定制渗透攻击路径
4、绕过检测机制
5、触发攻击响应控制措施
6、渗透代码测试

22、后渗透攻击阶段从已经攻陷了客户组织的一些系统或取得域管理员权限之后开始,将以特定业务系统为目

标,标识出关键的基础设施,并寻找客户组织最具价值和尝试进行安全保护的信息和资产,并需要演示出能够对客

户组织造成最重要业务影响的攻击途径。

主要包括,以下几类:
1、基础设施分析
2、高价值目标识别
3、掠夺敏感信息
4、业务影响攻击:
5、掩踪灭迹
6、持续性存在

23、通用渗透测试框架
1、范围界定
2、信息收集
3、目标识别
4、服务枚举
5、漏洞映射
6、社会工程学
7、漏洞利用
8、权限提升
9、访问维护
10、文档报告

24、渗透测试流程:

25、黑客攻击的一般过程:

posted @ 2021-01-06 18:55  w1hg  阅读(403)  评论(0编辑  收藏  举报