运行环境

  • Virtualbox (二选一)
  • Vnware Workstation player

通关提示

  • fristi

设置

首先,我们在开始之前,我们按照作者的要求设置虚拟机的MAC地址

08:00:27:A5:A6:76

然后打开VM

发现靶机ip为 : 192.168.1.109

本次所选攻击机为kali ,ip为

对靶机进行服务探测:

nmap -sS -Pn -T4 -p 1-65535 192.168.1.109

既然只有一个端口,那就扫描再具体扫描80端口:

nmap -A -O -p 80 192.168.1.109

我们看到以下具体信息:
Apache httpd 2.2.15 ((CentOS) DAV/2 PHP/5.3.3)
http-robots.txt: 3 disallowed entries

现在我们浏览web服务

我们查看一下robots.txt,看一下目录结构

现在我们来尝试访问这些目录

就只出现这一张脸,顺便查看了一下源代码,事实证明并没有什么卵用,

我们用 御剑 扫一下目录:

我们访问一下这个/images 目录

感觉好鸡肋...不,鸡肋都算不上,没有思路了...

不过,当我们翻看主页面时,发现这么一段话:

"KEEP CALM AND DRINK FRISTI"

我们尝试一下 /fristi 这个目录....

真是众里寻他千百度,那人却在...眼前

话不多说,先扫个目录:

等等....我发现了一个上传页面!!!

emememem......我们看看其他的

看见了登陆框:

一波万能密码,弱口令操作....失败

查看源代码,发现两个注释:

看到一有一条信息,这是一个叫eezeepz的人留下来的。

那么那就有这种可能:他也许用eezeepz当做他的用户名或者密码。

再向下看。我们看到了一大块用base64编码的段落

base64解密一波:

发现是一个PNG的图片被base64编码了,这个时候我们还原图片

先保存为1.txt

然后在kali 命令行终端中输入:

base64 -d /1.txt > fristi.png

看起来像个密码,这样的话:
username : eezeepz

password : keKkeKKeKKeKkEkkEk

登陆尝试一下:

hahaha , 还有个上传页面:

这时候就直接上传shell ,比较牛逼的shell可以在这里下载:

http://pentestmonkey.net/tools/web-shells/php-reverse-shell

做一些必要的ip和端口修改

开启1234端口监听:

上后开始上传我们的shell

果然对文件上传做了限定...不过问题不大

我们直接在文件名后面加一个.jpg

上传php-reverse-shell.php.jpg

上传成功!我们来访问一下,顺便关注一下我们的端口监听:

我们已经接收到shell ,现在已经得到了一个低端权限

下面就是提权 ,我们看一下目录,有没有什么可以挖掘的东西:

在/home 目录下发现

马上看到关键人物eezeepz!
继续向前看

目录文件太多,最后发现了一个notes.txt

是 Jerry 写给 EZ(eezeepz)的信

这种东西...应该找百度翻译:

----------------------------------------------------
我让你做一些自动检查,但我只允许您访问/usr/bin /*系统二进制文件。但是复制一些额外需要的命令给我
homedir:chmod,df,cat,echo,ps,grep,egrep,所以你可以使用那些从/home/admin/
不要忘记为每个二进制指定完整的路径!
只需将一个名为“runthis”的文件放入/tmp/,每个行一个命令。这个输出到/tmp/文件中的“cronresult”。它应该使用我的帐户特权每分钟运行。

---------------------------------------------------

我们得到了提示,照着做就行了!
在/tmp下创建一个"runtis"文件

赋予权限:

现在我们可以阅读 /home/admin 下的内容了:

有几个文件。依次看一下

cryptpass.py


cryptepass.txt

whoisyourgodnow.txt

看样子应该是用了py文件去加密的。
我们重写一下文件:

解密试试:

分别得到:

1.mVGZ3O3omkJLmy2pcuTq :thisisalsopw123
2.=RFn0AKnlMHMPIzpyuTI0ITG :LetThereBeFristi!

这有可能是用户fristgod 的密码
我们换一下用户试试!

失败了....
查了一下网上是这样解释的:
跟 su 命令的实现有关; B环境上su的实现应该是判断标准输入是不是tty ; 而A环境上su的实现则允许从其他文件读取密码。
方法如下:

python -c 'import pty;pty.spawn("/bin/sh")'

接下来就可以正常使用了:

现在我们已经成功进入fristigod账户,ls试试:

没有东西...
-la 查看一下隐藏文件试试:

原来都藏起来了。。
到.secret_admin_stuff看看

继续 ls -la 查看具体信息

发现这个是个root的文件
权限应该是不够的

我们能回去看看history有没有一些线索

可以看到 “fristigod”用户一直sudo来执行命令

试试 sudo -l

让输入密码,上面我们得到了两个密码

呃。。。
再试试

成功了...居然是一个密码....好吧。

现在我们能用id 那么应该也可以创建一个shell

sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom /bin/bash

成功了。直接去看/root下的文件

得到flag

.

.

.

真是万分艰难...

12. CTF综合靶机渗透(五)的更多相关文章

  1. 22. CTF综合靶机渗透(十五)

    靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...

  2. 21. CTF综合靶机渗透(十四)

    靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...

  3. 18. CTF综合靶机渗透(十一)

    靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...

  4. 17. CTF综合靶机渗透(十)

    靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...

  5. 13. CTF综合靶机渗透(六)

    靶机说明 Breach1.0是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.110.140),需要将虚拟机网卡设置为host-only方式组网,并 ...

  6. 20. CTF综合靶机渗透(十三)

    靶机说明: Wellcome to "PwnLab: init", my first Boot2Root virtual machine. Meant to be easy, I ...

  7. 14. CTF综合靶机渗透(七)

    靶机说明 NinevehV0.3.7z是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.0.150) 目标 Boot to root:获得root权 ...

  8. 9. CTF综合靶机渗透(二)

    靶机说明 Welcome to the world of Acid. Fairy tails uses secret keys to open the magical doors. 欢迎来到酸的世界. ...

  9. 8. CTF综合靶机渗透(一)

    靶机说明 虚拟机难度中等,使用ubuntu(32位),其他软件包有: PHP apache MySQL 目标 Boot to root:从Web应用程序进入虚拟机,并获得root权限. 运行环境 靶机 ...

随机推荐

  1. Android蓝牙开发浅析【转】

    本文转载自:http://blog.csdn.net/geekdonie/article/details/7487761 由于近期正在开发一个通过蓝牙进行数据传递的模块,在参考了有关资料,并详细阅读了 ...

  2. Elasticsearch核心知识大纲脑图

  3. 表达式语句(EL)

    EL的基本语法 ${expression} Expression:制定要输出的变了或字符串.或EL运算符组成的表达式. 禁用EL表达式: 1. 使用“\”符号禁用. \${expression} 2. ...

  4. 访问虚拟机中的架设的Web服务器

    环境: 1.虚拟机中安装了CentOS,虚拟机使用NAT的方式 2.在CentOS中安装了APACHE 并且使用 http://127.0.0.1可以正常访问,通过ifconfig查到IP地址是 19 ...

  5. jquery详解图片平滑滚动

    jquery详解图片平滑滚动 随便写了个DOM,没有美观性,见谅 原理: 1.定义两组ul列表放图,第一个ul放5张图,第二个ul为空 2.为什么要用两个ul?因为要用到jQuery的克隆方法clon ...

  6. 机器学习(十五)— Apriori算法、FP Growth算法

    1.Apriori算法 Apriori算法是常用的用于挖掘出数据关联规则的算法,它用来找出数据值中频繁出现的数据集合,找出这些集合的模式有助于我们做一些决策. Apriori算法采用了迭代的方法,先搜 ...

  7. javaScript-进阶篇(三)

    1.Window对象 window对象是BOM的核心,window对象指当前的浏览器窗口. window对象方法: 2.JavaScript 计时器 在JavaScript中,我们可以在设定的时间间隔 ...

  8. java 任务调度实现的总结

    Timer Timer的核心是Timer和TimerTask,Timer负责设定TimerTask的起始与间隔执行时间,使用者需要建立一个timeTask的继承类,实现run方法,然后将其交给Time ...

  9. Execution Context(EC) in ECMAScript

    参考资料 执行环境,作用域理解 深入理解JavaScript系列(2):揭秘命名函数表达式 深入理解JavaScript系列(12):变量对象(Variable Object) 深入理解JavaScr ...

  10. tensorflow中常量(constant)、变量(Variable)、占位符(placeholder)和张量类型转换reshape()

    常量 constant tf.constant()函数定义: def constant(value, dtype=None, shape=None, name="Const", v ...