HTB靶场记录之Europa

 

本文是 i 春秋论坛作家「皮卡皮卡丘」表哥分享的技术文章,旨在为大家提供更多的学习方法与技能技巧,文章仅供学习参考。

相关文章>>

HTB靶场记录之OpenAdmin

HTB靶场记录之Popcorn

HTB是一个靶机平台,里面包含多种系统类型的靶机,并且很多靶机非常贴近实战情景,是一个学习渗透测试不错的靶场。

HTB靶场记录之Europa

 

1、靶机介绍

这次的靶机是Europa,难度为中等,Web部分比较难,但是提权相对简单些。

HTB靶场记录之Europa

 

2、信息收集

这次起手nmap,开了22、80和443端口,同时给了一个新的域名。

要在etc/hosts加入才能正常访问

nmap命令:nmap -A -sS -sV -v -p- 10.10.10.22

HTB靶场记录之Europa

 

加入其中的两个域名到/etc/hosts里面

HTB靶场记录之Europa

 

正常的访问这两个域名都是Apache域名

HTB靶场记录之Europa

 

然而对admin-portal.europacorp.htb变为https请求以后返回一个登录界面,开始测试。

HTB靶场记录之Europa

 

3、猜解登录框

看到登录框和左上角的一串名字时,第一想法确认是否是CMS,然而我用searchsploit +各种关键词都找不到可以确认这是个自己写的框架,思路主要有2个。

第一种是输入数据用Burp抓包,或者是尝试一下Intruder的爆破功能,这里我先用Burp抓包然后放到sqlmap跑跑。

HTB靶场记录之Europa

 

同时,手工放到repeater时,发现输入账号[email]123@qq.com[/email]'-- 密码xxx 返回包居然会跳出/dashboard.php的界面出来。

感觉不太对,到后台去跟进一下:

HTB靶场记录之Europa

 

跟进以后才发现好像不需要密码直接进后台就行了。

HTB靶场记录之Europa

 

4、挖掘漏洞

这里跟进一下各种功能点,比如左边的Tools,进去以后发现有个输入IP功能,这里把我的IP输入进去。

HTB靶场记录之Europa

 

然后就会显示出来了。既然输入内容进去就返回值出来,可能存在注入或者是命令执行漏洞,于是果断抓包放sqlmap在里面跑。

HTB靶场记录之Europa

 

顺便抓包发现变量是ipaddress,由于后台都是.php结尾应该是PHP写的页面。那么尝试输入一下system('id'),结果好像执行不了。

HTB靶场记录之Europa

 

sqlmap没有跑出来,猜测有防护可能是preg_replace这种。

假如是preg_replace在PHP7版本以下有个漏洞是/e,修饰符会使后面输入的东西当成代码执行,这里把前面的%2F变成/xxx/e,然后再执行一次system('id')成功返回www-data。

HTB靶场记录之Europa

 

输入pwd,返回/var/www/admin,接下来就是构造一句话:

HTB靶场记录之Europa

 

5、插入一句话

起初想直接用bash一句话,结果返回失败。

HTB靶场记录之Europa

 

后来,直接把一句话插入到params,得到一个反弹shell。

而且,www-data权限可以访问/home目录下的各个文件,成功得到User的flag。

HTB靶场记录之Europa

 

6、提权

提权的方法是用内核提权,先用uname -a,得知版本为4.4.0-81。

HTB靶场记录之Europa

 

去必应搜索找到一个44298.c的payload。

HTB靶场记录之Europa

 

先用gcc在本地编译好,然后利用Python共享模式传到靶机上。

HTB靶场记录之Europa

 

777权限运行后,直接变root。

HTB靶场记录之Europa

 

以上为今天分享的内容,小伙伴们看懂了吗?

posted @ 2021-11-12 15:37  i春秋  阅读(158)  评论(0编辑  收藏  举报