Kali_Linux渗透测试--介绍
发布时间:2022-09-26 14:50:51 所属栏目:Linux 来源:
导读: Kali_Linux渗透测试第一章----简介一:网络安全的根源
1.分层思想的优劣:分层思想非常伟大,但是也导致了一些很现实的问题,就是导致网络安全的研究人员、或者系统的开发人员考虑问题的时候,往往只关注
1.分层思想的优劣:分层思想非常伟大,但是也导致了一些很现实的问题,就是导致网络安全的研究人员、或者系统的开发人员考虑问题的时候,往往只关注
|
Kali_Linux渗透测试第一章----简介一:网络安全的根源 1.分层思想的优劣:分层思想非常伟大,但是也导致了一些很现实的问题,就是导致网络安全的研究人员、或者系统的开发人员考虑问题的时候,往往只关注本层问题,如应用层的开发人员考虑的应用层的安全,传输层只考虑传输层的安全问题,而实际安全问题往往需要多方面考虑,这就导致了多层之间出现漏洞。 2.只追求功能的实现:很多开发人员在实际开发程序的过程中,并没有做到安全开发,甚至无法避免一些很常见的安全问题,因为其只追求代码功能的实现,同样容易产生漏洞,从而产生安全问题。 3.最大的威胁是人:其实安全问题最大的威胁是人,我们可能有意无意地会产生安全问题,如开发能力不足导致漏洞、懂得网络安全而非法利用,凡此等等,都是网络安全的根源之一,如果人人都是维护网络安全的,那么也就不存在网络安全这个问题。 二:网络安全类型 1.防御型安全:传统的网络安全往往是防御型的网络安全,从各个方面防守,如关闭所有不必要的服务、端口,配备一些防御型的安全软硬件。这种类型的网络安全往往投入的人力、物力、财力巨大,但是收效甚微,因为一处漏洞没有堵住,可能一个脚本小子就能渗透攻击进入系统,对系统产生威胁。 2.攻击型安全:近年来安全行业推崇攻击型安全。所谓攻击型安全就是从非法入侵的攻击者的角度思考,尝试去攻击挫败目标系统的安全防御机制,发现系统的安全弱点,测量安全防护的有效性。但是这种方法只是证明安全问题的存在,而非破坏。但是实际情况中,是否破坏往往取决于道德与法律的约束,因为一旦攻入系统,意味着渗透测试人员已经掌握了系统的部分或者全部数据,也就是说已经接触到了有价值的数据了。但是我们一定要洁身自好,在黑与白之间一步踏错就难以回头。 三:渗透测试标准 PETS(Penetration Execution Test Standard)() 这里推荐两本书:《Metasploit渗透测试指南》 08080758_fyIO.jpg 这本书详细介绍了渗透测试标准的各个阶段,虽然没有深入,但是覆盖面较广。 另一本书是《Metasploit渗透测试魔鬼训练营》 08080759_K4oS.jpg 这本书有一点深度,覆盖面也较广,但是新手理解比较困难。 这两本书新书更推荐看第一本,能更好地了解渗透测试的标准,虽然没有深入,但是能整体掌握如何去执行一次标准的、规范的、完全的渗透测试,相比较掌握具体的工具而言,这更像是掌握一些方法论,或者说是原理,个人觉得更有裨益。仁者见仁,智者见智,对这两本书有一定了解或者有一定基础的可以自由选择。 标准的渗透测试有七个阶段: 1.前期交互阶段:简单来说就是作为安全公司的渗透测试人员,与目标公司进行沟通,确认渗透测试人员可以选用哪些攻击方式、攻击目标是哪些、是否选用社会工程学攻击、是否使用DDOS、攻击到什么程度等...最重要的是要拿到目标公司的渗透测试书面授权书,这样才属于合法测试(实际工作中往往客户往往不会选用社会工程学和DDOS)。 2.情报搜集阶段:在前期交互阶段之后,就可以正式开始渗透工作。情报搜集就是搜集目标系统的各种信息。情报搜集有两种方式,一种是被动信息搜集,也就是不和目标系统产生任何直接的网路连接接触,通过间接的渠道获取目标系统的相关信息,例如通过搜索引擎搜索目标系统的公司地址等。另一种情报搜集方式是主动搜集,这种方式需要和目标系统产生接触行为,通过一些数据交互来获得目标系统的一些信息,这样存在暴露自己的风险。两种情报搜集方式往往是综合利用,被动情报搜集虽然可以保护自己不被目标系统发现,但是所搜集到的信息更多的不是最新或者是最有用的,而是只能提供一些辅助参考,而主动情报搜集就能搜集到更多最及时的信息,但也可能被目标所检测到从而暴露自己的渗透行为。 情报搜集首先进行各种情报收集,也就是搜集目标系统的尽可能多的相关信息linux渗透,例如邮箱地址、联系人、公司地址、DNS地址、服务器的IP地址、域名、Google Haking、搜索引擎对公司信息搜集,这些都属于被动信息搜集。主动的信息搜集就是对目标系统进行主动的探测,进行主机扫描发现以判断目标系统所存活(可理解为在线)的主机、进行端口扫描以发现主机开放的端口、进行端口上所运行的服务类型的发现等等这些信息的搜集,所搜集的信息都将用于下一个阶段----威胁建模。 3.威胁建模阶段:经过情报搜集之后,我们对目标系统已经有了一个大概的了解。但是这些信息并不能直接让我们渗透进入目标系统,所以我们需要进一步分析这些信息,从这些情报中理出一条或者几条效率最高、最快捷、可以渗透进入目标系统的途径。这是威胁建模的任务----确定攻击途径或方法。 4.漏洞分析阶段:沿着我们上一阶段所确定的思路,在我们所搜集的情报中,查看相关信息,如目标系统所运行的软件版本,是不是版本比较低、是不是已经有可利用的公开漏洞、或者某些软件部分是不是要使用逆向工程的分析等。也就是说在上一阶段我们确定的是哪些渗透攻击方法可能有效,而这一阶段是验证上一阶段方法的可行性,并在下一阶段具体实施。 5.渗透攻击阶段:有的渗透测试人员会有这样的困惑,当我们在漏洞分析阶段已经确认攻击方法的可行性之后,那不就直接攻击进入系统了吗?其实不然,真正的渗透攻击工程往往都不像电影中的那样顺利,因为可能有些信息搜集是不完整的,例如某些防御机制我们没有发现,所以我们又需要重新进行信息搜集、威胁建模、漏洞分析,特别要分清楚3,4,5阶段的区别。 6.后渗透测试阶段:在渗透攻击结束后,如果渗透测试工作人员真的取得了目标系统的一台或者多台服务器的权限,很多人就认为工作已经完成了,可以写渗透测试报告交工了。其实这个时候,渗透测试工作人员的工作并没有完成,因为这种情况下你需要向客户证明,你往往可以通过这一个漏洞控制更多的服务器,或者通过这一台服务器为跳板,可以向内网渗透,也就是向客户证明你还可以在目前的基础上进一步渗透,取得客户公司更多有价值的信息,通过这些将渗透测试的结果向客户展示,会对其公司造成什么损失。这样是双赢的结果,一来可以提升渗透测试人员的技能,二来可以更加使得客户信赖安全公司的责任态度。 7.渗透测试报告:在完成“全部”渗透测试工作以后,就可以写总结报告,基本都是证明从头到尾,漏洞是如何被发现、被利用,如何去执行攻击,最初怎么攻入系统的,以及如何扩大攻击范围(即后渗透测试如何执行的),如何修补漏洞以避免漏洞被真正的黑客所利用。往往有些安全从事人员不喜欢写冗长的报告,但是这个阶段同样非常重要,作为一名渗透测试人员,仅仅拥有渗透的技能往往还不足以体现自身对客户的价值,因为客户往往都是外行,所以我们要提供一套完整的方案去供客户使用,也就是体现在渗透测试的报告中。 一个系统往往是指一个应用系统,比如一个电商网站,包括支撑这个系统的网络、交换机、防火墙、入侵检测、waf、服务器、OS、各种第三方的应用平台插件、数据库等... 四:授权 渗透测试与攻击,虽然我们平时并不严格区分,但其真正的区别就在于是否取得客户的授权,获得授权之后,测试、控制目标客户的系统,甚至接触到一些客户的敏感信息都是合法的,当然不能用这些信息去获取灰色利益。如果没有客户的客户的授权,对目标系统进行扫描、攻击、甚至窃取机密信息都是犯法的,在不同的国家、地区处罚也是不同。所以作为安全行业从事人员,应该取得客户的书面授权再进行渗透测试,否则就属于非法攻击。 五:渗透测试误区 渗透测试往往都是很复杂的一个项目,很多人有误区,认为渗透测试就使用各种扫描器进行扫描,然后发现漏洞就攻击测试一下,否则就认为是安全的。其实所有的自动化的扫描,不论是nmap还是Appscan等,对于业务逻辑层面的漏洞,完全无能为力,它只能查出一些常见的技术层面的漏洞。而真正的渗透测试的高手,是很少使用甚至完全不使用扫描器,就能攻击进入目标系统的,完全是靠自己的能力。所以不要过度的依赖于扫描器,而不去了解其原理。其实扫描器并不是必须的,当然新手或者在提高工作效率的时候是可以使用的,强调的是不要依赖于它。 六:Kali Linux简介 Kali在2013年3月份发布,包含有数百种工具,支持ARM以及手机平台,本身也是开源免费的。它的前身是大名鼎鼎的BackTrack,也就是BT,最新的BT是BT5,现在已经停止更新。Kali现在已经更新到2.0版本。这个系统开发的目的就是渗透测试和安全审计使用的。 为什么BT停止更新而Kali成为其替代版本?并且Kali所包含的工具和工具的使用方式都和BT大同小异?主要原因就是Kali本身是基于Debian的Linux发行版本,而BT是基于Ubuntu的。Kali和Ubuntu本身都是遵循FHS标准目录结构的,所谓FHS标准目录结构,是所有的Linux发行版本都遵循的一个目录结构,也就是说在/etc下放配置文件、/var放日志、邮件文件、/dev下放所有的设备文件等。但是在BT这个系统中,它把所有的渗透测试用的工具都放在/pentest下,然后在这个目录中再分类各种工具。这样划分就会存在问题,比如一个工具可能在数据库类的工具中可以使用,又在web中可以使用,那到底该怎么划分?这就很难界定。在后来BT的工具越来越多的时候,这个系统就无法继续使用它本身习惯使用的工具分类方法,这会造成工具分类维护更新混乱,系统继续发展阻力更大。所以BT就停止更新,继续使用FHS的目录结构,也就是更新到Kali。 Kali可以定制内核,主要是针对无线驱动。 七:Kali Linux策略 1.Root用户策略:一般Linux的系统都是使用普通用户为默认用户,但是Kali是使用root为默认用户。 2.网络服务策略:Kali作为一个渗透测试和安全审计的平台,默认所有的网络服务都是关闭的,而且即使新装一个服务程序在Kali上,这个程序所有的默认启动脚本都是不启动的。这与其他版本的Linux版本不同,比如在Ubuntu等Linux中,如果安装了Apache,在下次系统启动的时候会有一些脚本自动启动,但是在Kali里面这些都不会自动启动,但是也可以手动指定启动。 3.更新升级策略:Kali本身是基于Debian的,如果Debian本身存在一些安全漏洞,那么Kali会自动同步过来。 八:Kali题外话 1.为什么kali这个系统叫kali?或许可以自己百度一番; 2.渗透测试要多动手,不要只纸上谈兵,一定要实践实践再实践; 3.所有Kali的工具都要掌握?没必要,掌握最常用的即可,也不能全部掌握所有工具的。 Kali很强大,但不是全部! (编辑:我爱制作网_沈阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


浙公网安备 33038102330576号