2024年4月22日发(作者:)

ISSN1009-3044

ComputerKnowledgeand

Technology

第17卷第5期(20212月)

电脑知识

与技术

Vol.17,No.5

February

2021

E-mail:************.cn

Computer

http

KnowledgeandTechnology

电脑知识

与技术

://

Tel:+86-551-6569

基于KaliLinux的渗透测试

何应辉,陈中举,李俊杰

(长江大学,湖北荆州434000)

摘要:随着网络规模的快速增长,网络信息的复杂化,产生了诸多网络系统的安全问题。为了找出网络安全漏洞以及各种

安全问题,保证系统的安全性,本文以渗透测试的方法为基础,从测试人员的角度出发,基于KaliLinux渗透测试平台,描

述了渗透测试的过程及步骤,研究并演示了渗透测试软件工具的使用。

关键词:KaliLinux;渗透测试;Metasploit;OpenVAS;Nmap

中图分类号:TP311文献标识码:A

开放科学(资源服务)标识码(OSID):

PenetrationTestingBasedonKaliLinux

文章编号:1009-3044(2021)05-0019-03

HEYing-hui,CHENZhong-ju,LIjun-jie

(YangtzeUniversity,Jingzhou434000,China)

Abstract:Withtherapidgrowthofnetworkscaleandthecomplexityofnetworkinformation,manysecurityproblemsofnetworksys⁃

rtofindoutnetworksecurityvulnerabilitiesandvarioussecurityissues,andensurethesecurityofthesystem,

thispaperdescribestheprocessandstepsofpenetrationtestingbasedonKaliLinuxpenetrationtestingplatformfromtheperspec⁃

tiveoftesterswhichbasedonthetheoryofpenetrationtestingmethod,andstudiesanddemonstratestheuseofpenetrationtesting

softwaretools.

Keywords:KaliLinux;penetrationtesting;Metasploit;OpenVAS;Nmap

1绪论

渗透测试的思想产生于古代战争时期,世界各地军队进行

模拟战争的游戏,20世纪60年代才确定了渗透测试的基本概

念。软件系统在制定时安全方面可能并未考虑全面,导致系统

存在漏洞,容易给不法分子利用漏洞进行攻击行为。结合渗透

测试技术,对网络安全形态的全面评估是非常有价值的。

渗透测试可以对整个系统的硬、软件进行一次全面的侦

探,能够在一定程度上保证系统的安全性。在进行渗透测试的

时候能够以不同用户的角度去考虑系统,使系统变得更加安

全,在一定程度上减少经济损失。

2渗透测试概述

渗透测试是通过模拟恶意黑客的攻击,来评估计算机网络

系统安全的评估方法,通过鉴识安全问题来理解当前安全状

[1]

。根据安全报告进行开发、环境的重新规划部署,也是渗透

测试的工作之一。渗透测试是循序渐进的过程,在不影响业务

的情况下进行测试。渗透测试的环节也应该在开发周期中,根

据实际应用,普遍认同的方法有:黑盒测试、白盒测试、隐秘测

[2]

试;按操作系统进行分类有Windows渗透测试、Linux渗透测

试等;还有一些其他的渗透方式,如数据库系统渗透、应用系统

渗透、网络设备渗透。

渗透测试是为了证明网络防御按照预期计划正常运行而

提供的一种机制,对公司、政府有极大的应用价值。但是,也有

一定的局限性,如时间、空间、项目、资金等限制,它会让测试无

法识别出所有的漏洞。对于网络系统来说渗透测试并不提供

实质性的改善,但是能够预防并减少被攻击的概率。渗透测试

是一个长期的工作,当前测试虽然是处于安全状态,但是过段

时间重新测试的时候可能会出现不安全的情况。换种说法,渗

透测试具有非常明显的时效性,抛开时效性来谈渗透测试不是

明智的做法。

3渗透测试方法与过程

渗透测试的方法有很多,在行业内被广泛采纳的有:ISSAF

(信息系统安全评估架构)、NIST800-115(信息安全测试与评估

技术指南)、OWASP(开放式WEB应用安全)、PTES(渗透测试执

行标准)、OSSTMM(开源安全测试方法手册)。图1展示了渗透

测试的过程。

收稿日期:2020-10-13

基金项目:长江大学大学生创新创业项目支助(2019167)

作者简介:何应辉(2000—),男,广西人,本科生;通讯作者:陈中举(1976—),男,湖北人,副教授,硕士,研究方向:计算机网络与信

息系统。

本栏目责任编辑:李雅琪

本期推荐

19

ComputerKnowledgeandTechnology

电脑知识

与技术

图1渗透测试的过程

准备阶段描述了任务的目标、范围、时间限制、渗透测试中

产生的法律纠纷等方面的内容。主要包括,测试周期、测试时

限、渗透IP地址的划分、技术清单、法律纠纷问题等。

准备阶段完成后进入到发现阶段,该阶段的任务分为:目

标发现与侦探、扫描与枚举。目标发现与侦探是测试员使用技

术或非技术手段收集公开可用的信息。如DBMS的版本,OS版

本,是否有公开的漏洞。扫描与枚举是测试员使用扫描工具收

集端口的信息,如端口运行的服务、版本等

[3]

评估阶段与发现阶段关系非常的密切,主要分为:漏洞识

别、漏洞分析。

攻击阶段需要选择与之匹配的攻击方法和执行攻击行为。

该阶段主要进行漏洞利用和权限提升,如果漏洞利用成功,则

可以提权。

报告阶段可与上述几个阶段并行进行,也可在攻击阶段后

进行单独的总结。渗透测试报告包含风险评估、防御措施等相

关内容。报告必须保证准确性与透明性。

4渗透测试平台

BackTrack

KaliLinux

,基于

是一款用于渗透和审计的系统,

Ubuntu发行版开发而成。

它的前身是

工具、

KalinLinux的主要工具可分为:

图2KaliLinux系统界面

信息收集、漏洞分析、

maltego

web

无线攻击包括:

、ike-scan

工具等。信息收集包括:

等;漏洞分析包括:

zenmap

nmap、

golismero

nmap(诸神之眼

攻击

)、

john

owasp-zap

、cewl、crunch

reaver

等;Web

、aircrack-ng

工具包括

burpsuite

chirp等;

密码攻击包括:

、nikto等;

commix、woscan、

4.1渗透测试工具介绍

等。

1

段到报告总结的各种必需的功能,

Metasploit

)Metasploit

是一款开源的渗透测试框架,

含有对协议的漏洞利用的代

它提供从侦探阶

码及步骤代码等;同理服务、系统也在Metasploit中被定义。

责发现漏洞、

Metasploit

攻击漏洞,

框架具有接口一样的可扩展性质。控制接口负

提交漏洞,然后通过接口加入攻击后处

理工具和报表工具

[4]

。Metasploit框架从扫描模块中得到有漏

洞的主机信息,利用漏洞信息对系统发起攻击。这些操作可通

20

本期推荐

第17卷第5期(2021年2月)

过Metasploit图形界面管理,而它只是其中一种接口,另外还有

命令行工具和一些商业工具等接口

[5]

工作步骤分为配置漏洞模块、选择漏洞代码攻击目标系

统、配置有效载荷、配置编码模式、漏洞利用模块。

2)OpenVAS

图3Metasploit操作界面

网络或主机的安全性。与

OpenVAS是一款开放式漏洞评估系统,

X-Scan工具类似,

主要用来检测目标

OpenVAS系统采

用了Nessus较早版本的一些开放插件

[6]

NASL

OpenVAS

3

是一个C/S架构,由Server、Plugins、Libraries、Lib⁃

测试第一步的重要工具,

Nmap(Network

客户端等组件构成。

Nmap

Mapper)又名诸神之眼,

是一款主机探测工具和端口扫描

因为它是打开渗透

工具。

作系统、

Nmap

硬件信息、

有以下功能:主机发现、端口发现、

[7]

端口服务发现、操

一定的技术要求。

Nmap主要是通过命令交互的方式进行使用,

软件版本信息等。

对使用者有

图4Nmap操作界面

4.2Nmap工具使用

1

渗透测试中的主机探测一般不单独使用,

)主机发现

只是作为端口扫

描前的准备工作。

2

图5nmap主机扫描

端口扫描的目的是判断端口的一些服务信息,

)端口扫描

如该端口运

本栏目责任编辑:李雅琪

第17卷第5期(2021年2月)

行着什么软件。

图6nmap端口扫描

4.3Metasploit工具使用

1

区溢出漏洞”

MS08-067

)MS08-067

,如果用户在受影响的系统上收到特制的

漏洞全称为

漏洞简单复现

“WindowsServer服务RPC请求缓冲

RPC请

求,该漏洞可能会允许远程执行代码。

msf5

msf5

>use

可以使用

exploit(windows/smb/ms08_067_netapi)

windows/smb/ms08_067_netapi

info命令来查看该漏洞的详细信息。

>info

图7MS08-067漏洞信息

查看当前漏洞需要设置的参数。

msf5exploit(windows/smb/ms08_067_netapi)>showoptions

图8MS08-067设置参数信息

本栏目责任编辑:李雅琪

ComputerKnowledgeandTechnology

电脑知识

与技术

设置目标IP地址及端口,端口一般采用默认设置即可。配

置完成后,

192.168.1.8

msf5

需要使用

exploit(windows/smb/ms08_067_netapi)

Payload用于建立连接。

>setRHOST

msf5exploit(windows/smb/ms08_067_netapi)>showpayloads

图9MS08-067配置连接

5结束语

本文基于渗透测试的理论知识,介绍了KaliLinux渗透测

试平台,

OpenVAS

将理论与实际情况相结合,

用,通过Metasploit

、Metasploit

简单复现

、Nmap等常用的渗透测试工具及其操作应

演示了KaliLinux平台中的

MS08-067漏洞,采用nmap演示了

端口扫描和主机扫描等操作。展望未来,渗透测试是企事业单

位必须进行安全检测的项目,利用渗透测试能够识别安全问题

来帮助了解当前的安全状况,提前发现网络中的漏洞并进行修

补,减少漏洞造成的经济损失,具有十分重要的现实意义。

参考文献:

[1]李维峰.利用端口扫描进行终端合规性检查的一个示例[J].

[2]

网络安全技术与应用

滕忠钢.利用“KaliLinux

,2020(8):27-28.

”与“Docker”

[3]

实验

闫怀超

[J].信息技术与信息化,2020(2):195-197.

技术进行渗透测试

[4]

[J].

.渗透测试技术在数字化堆场改造过程中的应用研究

郑少凡

自动化仪表

,连宏浩

,2020,41(6):13-16.

,苏汉彬,等.基于Metasploit的渗透测试流程

[5]

研究

郑清安

[J].信息与电脑

.基于Metasploit

,2020,32(2):175-176,179.

框架的web应用渗透测试研究[J].通

[6]

讯世界

李瑞.基于

,2018(6):281-282.

OpenVAS的漏洞扫描系统设计与实现[D].西安:西

[7]

安电子科技大学

2019,15(36):117-118.

严学军.关于Nmap

,2015.

的教学实践的探讨[J].电脑知识与技术,

【通联编辑:梁书】

本期推荐

21