渗透测试
Penetration testing,是一种模拟恶意攻击的技术与方法,挫败目标系统的安全措施,取得访问控制权,并发现具备业务影响后果安全隐患的一种安全测试与评估方法。
渗透测试分类
黑客测试/外部测试
白盒测试/内部测试
灰盒测试/组合测试
1、黑盒测试
黑盒测试(Black-box Testing)也称为外部测试(External Testing)。采用这种方式时,渗透测试者将从一个远程网络位置来评估目标网络基础设施,并没有任何目标网络内部拓 扑等相关信息。他们完全模拟真实网络环境中的外部攻击者,采用流行的攻击技术与工具, 有组织、有步骤地对目标组织进行逐步渗透和入侵,揭示目标网络中一些已知或未知的安全漏洞,并评估这些漏洞能否被利用,以获取控制权或者操作业务造成资产损失等。
黑盒测试的缺点是测试较为费时和费力,同时需要渗透测试者具备较高的技术能力。
优点在于,这种类型的测试更有利于挖掘出系统潜在的漏洞,以及脆弱环节和薄弱点等。
2、白盒测试
白盒测试(White-box Testing)也称为内部测试(Internal Testing)。进行白盒测试的渗透测试者可以了解到关于目标环境的所有内部和底层信息。这可以让渗透测试人员以最小的代价发现和验证系统中最严重的漏洞。白盒测试的实施流程与黑盒测试类似,不同之处在于无须进行目标定位和情报收集。渗透测试人员可以通过正常渠道从被测试机构取得 各种资料,如网络拓扑、员工资料甚至网站程序的代码片段等,也可以和单位其他员工进 行面对面沟通。白盒测试的缺点是无法有效地测试客户组织的应急响应程序,也无法判断出他们的安全防护计划对特定攻击的检测效率。这种测试的优点是发现和解决安全漏洞所花费的时间 和代价要比黑盒测试少很多。
3、灰盒测试
灰盒测试(Grey-box Testing)是白盒测试和黑盒测试基本类型的组合,它可以提供对目标系统更加深入和全面的安全审查。组合之后的好处就是能够同时发挥这两种渗透测试 方法的优势。在采用灰盒测试方法的外部渗透攻击场景中,渗透测试者也类似地需要从外部逐步渗透进目标网络,但他所拥有的目标网络底层拓扑与架构将有助于更好地选择攻击 途径与方法,从而达到更好的渗透测试效果。
渗透测试过程环节
1. 前期交互(Pre-Engagement Interaction)-与客户进行交谈,确定渗透的目标和各种情况
2. 情报搜集(Information Gathering)-确定目标范围之后,可以透过搜集方法包括
公开来源信息查询、Google,Hacking、社会工程学、网络踩点、扫描探测、被动监听、服务查点等
情报搜集是取决渗透测试的成败。
3. 威胁建模(Threat Modeling)-在搜集信息后,需要对收集的信息进行威胁建模与攻击规划,这过程很重要,很容易被忽视
4. 漏洞分析(Vulnerability Analysis)-在确定攻击通道后,就需要对漏洞进行分析,如何取得目标系统的访问控制权,高水平团队会对攻击通道上的一些关键系统与服务进行安全漏洞探测与挖掘,希望找出可被利用的位置安全漏洞,并开发出渗透代码,从而打开攻击通道上的关键路径。
5. 渗透攻击(Exploitation)-利用找出的目标系统安全漏洞,实施入侵系统,活得访问控制权。在黑盒测试中,渗透测试者会考虑对目标系统检测机制的逃逸,从而避免造成目标组织安全响应团队的警觉和发现。
6. 后渗透攻击(Post Exploitation)(清除痕迹)-需要渗透测试团队根据目标组织的业务经营模式、保护资产形式与安全防御计划的不同特点,自主设计出攻击目标,识别关键基础设施,并寻找客户组织最具价值和尝试安全保护的信息和资产,最终达成能够对客户组织造成最重要业务影响的攻击途径。
7. 报告(Reporting)-把整个渗透过程向客户组织提交,取得认可并成功活得合同付款的报告。
这份报告,记录了渗透过程获得的关键情报信息,探测和发掘出的系统安全漏洞,成功渗透攻击的过程,和造成业务影响后果的攻击途径,还会站在防御者的角度,分析安全防御系统中的薄弱环节,以及修补与如何改善的技术方案。
渗透测试学习方法
1)关注安全网站,公众号,博客,各方面的资讯
2)养成做笔记的习惯,课后做思维导图
3)每天看几篇漏洞知识的文章,积累知识储备
4)不懂就问,首先自己主动查找资料
5)多动手操作,认真做好课堂练习和课后作业
渗透测试神器
Metasploit是一个开源的渗透测试框架软件,是一个逐步成熟的漏洞研究与渗透代码开发平台,将成为支持整个渗透测试过程的安全技术集成开发与应用环境。
专业术语
Exploit(渗透攻击),是指主动攻击者利用系统,应用或服务中的安全漏洞,进行攻击行为,普遍的渗透攻击技术有
缓冲区溢出,WEB应用程序漏洞攻击(SQL注入,XSS等),以及利用配置错误等
Playload(攻击载荷),是我们对目标系统进行攻击之后执行的代码,在Metasploit框架中可以自由地选择,传送和植入
ShellCode:通常用汇编语言编写,是渗透攻击时作为攻击载荷运行的一组机器指令
Module(模块),是指Metasploit框架中所使用的的一段软件代码组件
Listener(监听器),在Metasploit中用来等待接入网络连接主机的组件。
Nmap(Network Mapper)-是目前最流行的网络扫描工具,能准备探测单台主机的详细资料,而且能高效地对大范围IP地址段扫描。
可以扫描目标网络有哪些主机上存活的,哪些服务开房,甚至使用了何种类型的防火墙设备等。
基本功能
1.主机发现
2.端口扫描
3.版本侦测
4.操作系统侦测
标签:03,黑盒,06,白盒,渗透,目标,攻击,测试,网安 From: https://www.cnblogs.com/keithpun/p/17453097.html