三、Kioptrix_Level_1
1、初步探索
现在正式来到我们的第一个靶场!Kioptrix Level 1 是一个很经典的入门靶机,虽然时间比较久了,但是非常适合作为我们的第一个练手的对象。
我们的目标是什么?正如我们在引言中所说的,我们爆破这些靶场的核心目标就是获取它们的root权限,而一旦有了这个权限,无论要进一步实现什么目标都绝不是难事了。
在开始爆破之前,我们需要额外做一些配置——Kioptrix靶机实在是太老了,用的网络适配器默认是桥接模式,就算在VMware中修改也是没用的(我也是吃了好多苦头才发现问题的)。找到这个靶机的vmx源文件,用记事本打开它:

接下来利用替换功能,做两处替换:首先把ethernet0.networkName = "Bridged”改成ethernet0.networkName = "NAT” ,然后再把ethernet0.connectionType = "bridged” 改为ethernet0.connectionType = "nat” ,保存文件。

之后,在VMware中重启靶机,记得把网络适配器配置再改成NAT模式!
然后再启动kali linux,直接开始吧!
首先打开kali linux的终端,后续我们的所有操作都要在这个终端上完成:

在输入具体的命令之前,我们心里要大概对自己要做的事情有一点基本的方向:首先,是信息收集,我们需要知道目标在哪里,长什么样子——在网络世界里,这个“哪里”指的就是“IP地址”,这个长什么样子,就是开放了什么端口,运行着什么服务;其次,是漏洞利用,也就是从哪里给这个靶机“撕开一个口子”,怎么打入这个靶机内部——通过漏洞利用,我们一般都需要先在靶机中获取一个普通的账号;最后,是账号提权,也就是把这个普通账号提升为管理员账号,而由于靶机基本都是linux系统,这里就是需要获取root账号。而有了root账号,一切都不会是问题,甚至于删库跑路都是“顺理成章”的~
因此,我们首先就需要通过kali自带的扫描工具,先看看当前局域网中能不能找到目标靶机的地址。当然,在开始之前,我们要先看一下kali处于哪个网段,在终端输入命令:
ip a

看到了!让我们把信息摘录下来:
└─$ ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host noprefixroutevalid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:0c:29:41:0d:5a brd ff:ff:ff:ff:ff:ffinet 192.168.88.128/24 brd 192.168.88.255 scope global dynamic noprefixroute eth0valid_lft 960sec preferred_lft 960secinet6 fe80::20c:29ff:fe41:d5a/64 scope link noprefixroutevalid_lft forever preferred_lft forever
这里看起来信息很复杂,但是有用的信息其实不多——关注第二段信息eth0中的这行数据:
inet 192.168.88.128/24
这行数据告诉我们这台kali虚拟机的ip地址是192.168.88.128/24 ,那么其所在的网段就是192.168.88.0/24 。而由于我们之前创建虚拟机时,选择的网络适配器模式都是NAT模式,也就是说这些虚拟机同处于一个局域网下,因此靶机同样处于这个网段。那么,接下来我们就需要在这个网段中进行扫描,看看能不能发现一点线索。
这里扫描网段推荐使用nmap工具,结合刚才我们获取的网段信息,命令为:
sudo nmap -sn 192.168.88.0/24
注意,这行命令中使用了sudo,这是管理员权限的命令,因此需要提供kali的密码。这个密码就是你创建虚拟机时设置的密码,直接输入即可(不会显示密码)。
扫描完成后如下图所示:

把信息摘录一下吧:
┌──(kali㉿kali)-[~]└─$ sudo nmap -sn 192.168.88.0/24[] kali 的密码:Starting Nmap 7.95 ( <https://nmap.org> ) at 2026-04-27 15:47 CSTNmap scan report for 192.168.88.1Host is up (0.0016s latency).MAC Address: 00:50:56:C0:00:08 (VMware)Nmap scan report for 192.168.88.2Host is up (0.00049s latency).MAC Address: 00:50:56:FE:92:FC (VMware)Nmap scan report for 192.168.88.133Host is up (0.0010s latency).MAC Address: 00:0C:29:7C:3A:16 (VMware)Nmap scan report for 192.168.88.254Host is up (0.0032s latency).MAC Address: 00:50:56:E9:F1:E0 (VMware)Nmap scan report for 192.168.88.128Host is up.Nmap done: 256 IP addresses (5 hosts up) scanned in 2.10 seconds
注意看!这里一共扫描出了5个IP地址,那么哪一个才是我们的靶机呢?
最简单的方式,就是在没有启动靶机时扫描一次,然后启动靶机再扫描一次,多出来的那个就是目标靶机的IP。不过,其实在NAT模式下,IP的分布是有规律的:
| IP 范围 | 作用 | 判断 |
|---|---|---|
x.x.x.1 |
|
|
x.x.x.2 |
|
|
x.x.x.254 |
|
|
x.x.x.128 |
|
|
其他 IP
.133) |
只能是靶机 |
|
换言之,我们把已知的这几个IP排除掉,剩下的那个就是我们的目标靶机!在这里,目标靶机的IP地址就是192.168.88.133 !
确定了目标地址,接下来我们就需要对这个IP地址进行端口扫描,看看这台靶机为了对外提供服务暴露了哪些端口。这里需要用到的工具还是nmap(没错,这就是伟大的开源工具),命令如下:
sudo nmap -sT -sV -O -p- 192.168.88.133
这个命令看起来多了很多奇奇怪怪的参数,咱们列个表格解释一下:
| 参数 | 含义 | 作用 |
|---|---|---|
sudo |
|
|
nmap |
|
|
-sT |
|
|
-sV |
|
|
-O |
|
|
-p- |
|
|
192.168.88.133 |
|
|
简单来说,这就是一个通用的端口扫描命令,后面我们也会经常用到的。当然,看到这里扫描的东西还挺多的,所以这一步时间也比较长,耐心等待即可。最后扫描结果如下图所示:

┌──(kali㉿kali)-[~]└─$ sudo nmap -sT -sV -O -p- 192.168.88.133Starting Nmap 7.95 ( <https://nmap.org> ) at 2026-04-27 15:53 CSTStats: 0:02:49 elapsed; 0 hosts completed (1 up), 1 undergoing Connect ScanConnect Scan Timing: About 56.66% done; ETC: 15:58 (0:02:08 remaining)Stats: 0:02:49 elapsed; 0 hosts completed (1 up), 1 undergoing Connect ScanConnect Scan Timing: About 56.67% done; ETC: 15:58 (0:02:08 remaining)Nmap scan report for 192.168.88.133Host is up (0.0015s latency).Not shown: 65529 closed tcp ports (conn-refused)PORT STATE SERVICE VERSION22/tcp open ssh OpenSSH 2.9p2 (protocol 1.99)80/tcp open http Apache httpd 1.3.20 ((Unix) (Red-Hat/Linux) mod_ssl/2.8.4 OpenSSL/0.9.6b)111/tcp open rpcbind 2 (RPC#100000)139/tcp open netbios-ssn Samba smbd (workgroup: MYGROUP)443/tcp open ssl/https Apache/1.3.20 (Unix) (Red-Hat/Linux) mod_ssl/2.8.4 OpenSSL/0.9.6b1024/tcp open status 1 (RPC#100024)MAC Address: 00:0C:29:7C:3A:16 (VMware)Device type: general purposeRunning: Linux 2.4.XOS CPE: cpe:/o:linux:linux_kernel:2.4OS details: Linux 2.4.9 - 2.4.18 (likely embedded)Network Distance: 1 hopOS and Service detection performed. Please report any incorrect results at <https://nmap.org/submit/> .Nmap done: 1 IP address (1 host up) scanned in 390.66 seconds
嘶~还是让AI给我们分析一下吧:
| 端口 | 服务 | 版本 | 突破口潜力 |
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
两条攻击路径分析
路径一:Samba 服务(139端口)—— 🏆 强烈推荐
版本:Samba 2.2.x
已知漏洞:
trans2open缓冲区溢出(CVE-2002-0724)优点:
可以直接获得 root 权限 利用非常简单,Metasploit 一键搞定 成功率接近 100% 攻击命令预览(在 Kali 中执行):
msfconsole
msf6 > use exploit/linux/samba/trans2open
msf6 > set RHOSTS 192.168.88.133
路径二:Web 服务(80/443端口)—— 练手用版本:Apache 1.3.20 + mod_ssl 2.8.4
已知漏洞:OpenFuck 远程缓冲区溢出(CVE-2002-0082)
特点:
只能获得 普通用户权限(apache用户) 需要自己编译 exploit,稍微麻烦一点 提权可以利用内核漏洞
酷~这无非告诉我们一个简单的事实:这台靶机是一台来自2002年左右、充满漏洞的老旧Linux服务器,随便挑一个服务都能打进去。甚至于所有这些漏洞都是系统层面的公开漏洞,随便到网上一查就能找到这些漏洞利用的方法!
至于如何利用这些漏洞,我们就在下一节细细道来吧!











暂无评论内容