htb初探

前言

昨天才开的坑,今天就开始摸鱼了。。在家里练琴练了一天。。。等等,好像练琴才是我的专业来着?不管了

于是乎,练了无聊了,就突然叫九世有没有啥靶场玩,然后九世九发来了个htb

开始

注册htb这些啥的就不说了,就是js泄露一个api然后post就行注册。

之后直接下载ovpn进他们内网直接打靶场

history.png

经理了各种奇怪的东西,我们终于连上了。

开打

直接对着目标,御剑s扫描器走起

IP:10.10.10.215

portscan:
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.1 (Ubuntu Linux; protocol 2.0)
80/tcp open  http    Apache httpd 2.4.41 ((Ubuntu))
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel


webinfo:
http://academy.htb/ [200 OK] Apache[2.4.41], Country[RESERVED][ZZ], HTTPServer[Ubuntu Linux][Apache/2.4.41 (Ubuntu)], IP[10.10.10.215], Title[Hack The Box Academy]


WebPath:
/Images
/server-status
/login.php
/register.php
/admin.php

photo_2021-02-19_23-12-47.jpg

初步断定就开个web,好的直接访问web。。。

跳转到一个域名然后显示dns访问失败。

手动加一下hosts

10.10.10.215 academy.htb

之后就可以进web了。

QQ截图20210219231502.png

对着对着上面御剑出来的结果,先去register.php注册个用户。

然后登录,登陆后界面如下

web.png

稍微看了下,似乎是一个成熟的cms,唯一比较可疑的就是url。这时候我们先不深挖,把这个放到一边

然后我们去看admin.phpserver-status这两个

其中server-status403了,也不管,admin.php弱口令走起,admin / admin

3.png

洋文不好我也不知道进没进去,但是我发现了一个新的资产

dev-staging-01,访问了下,一眼就看出是larvaral,还是开启的debug。

la那啥来着.png

这时候,脑内直接biu出几个lar那啥我不会拼的RCE,最后对照

rce1.png
rce2.png

直接秒掉

getshell.png
用时不到十分钟

提权

摸了会儿鱼(

系统版本是
`Linux academy 5.4.0-52-generic #57-Ubuntu SMP Thu Oct 15 10:57:00
UTC 2020 x86_64 x86_64 x86_64 GNU/Linux`

看样子很新,脑内想不出啥exp

然后mysql权限也不高,查看/home的时候,发现了

home.jpg

结合后台登陆后的

Complete initial set of modules (cry0l1t3 / mrb3n)

这时候基本已经猜到了攻击流程。
liucheng.png

虽然不知道是否正确,但是按照这个思路走走看

数据库tmd一读(然而其实是在web目录下的.env的配置文件读到密码)。ssh就这么一登(撞了好几个用户)。

哟西,上去了,然而和预想有点偏差。。
rua.png
这时候我才发现分为user flag和root flag。那是我太天真了。

那接下来就是继续提权去拿root flag了。

接下来就是漫长的提权之旅。。

因为我的jio本不知道为啥跑不起来。。于是乎我就先手动看看,想着之后再跑自动收集jio本也就是

https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite

如何提权?高权进程SUID自运行脚本日志以及文件劫持等等。。。

其中,我发现tmp下有奇怪的tmp文件,里面有composer.json文件。。然后还不放你访问,一看用户是mrb3n。

这个用户再passwd中id比我们前一号,并且之前web页面也出现这个用户,所以基本断定要先登录这个用户了。。

正在我一筹莫展想着咋过去时,九世出了个好消息

hxx.png

成功用jio本收集到了mrb3n用户的密码

然后还有提示

sudo.jpg

基本提权方式就是,https://gtfobins.github.io/gtfobins/composer/

finish.png

自此基本结束

双双和九世拿着flag把家还,呸,各回各家,各找各妈

总结

靶场还挺好玩,没有想象中的无聊,但是也没有想象中的刺激。

总之就这么多了,先溜了。

Tags: none

2021新年快乐

除夕夜晚上来水一篇

和2020相比今年发的文章数明显的下降了许多,因为疫情的缘故,2020年过的感觉特别的快啊,完全没有过2020的感觉

但是仔细一想想又感觉好远。

感觉这两年来和之前相比技术提升的极度缓慢

顺带说说最近的变化吧,

睡的越来越晚了,以前是两点左右睡觉,现在慢慢变到了四点了,虽然我觉得这样不好,但是还是控制不住自己。

对于技术方面从理论转向了实践。。虽然我个人觉得还是更喜欢理论方面的。

什么是理论方面呢?就是以前研究某一技术可以死磕好久,换到现在变成,一杯水一包烟一个破站日一天(((

从武器大师变回了最开始的jio本娱乐小子成天日站,虽然日下了很多但是感觉没有研究前沿技术的快感。。

总的就是这么多了。顺带好久没有立下年度目标了。

今年的年度目标就是 PWN水平继续加强吧。。虽然大概率还是咕咕咕的。。

就这么多了,2021多多指教辣

Tags:

RAT开发小结

前言

最近闲着无聊又一次重构了这个项目:manager,这次算是最终比较完善的版本了

index.png

从去年断断续续的摸鱼到最近,总算整出了一套勉强能用的版本的。

其实rat原理上非常简单,无非就是控制端下发,然后被控端执行,最后把执行结果都给提交了上去。

从最开始的C/S,到现在的B/S,都尝试过,也用过C/PY/GOLANG分别写过马和控制端,先说说出我的经验吧。

架构选择

架构无非就是两种,一种C/S一种B/S,说是这么说,其实原理上也都是C/S,B/S只不过是再C/S的基础上加了个C/B通讯的过程而已。

如果你想要的是快速开发,重点在于可用性而不是易用性,那么我这推荐直接用C/S+cli,gui都不用写。方便快捷。当然如果要好用,而且还要好用的控制其他机器,那么gui肯定是必不可少的。

语言选择

如果不是对程序体积以及内存占用要求严格,在没有高超底层编写基础上,十分不推荐上C/C++来作为首选语言。虽然C/C++优点是这其中最多的,又快又小又灵活,但是同样缺点也很多,跨平台会很麻烦,并且不想其他"现代"语言一样有很多十分方便的库可以调用,想写一个东西直接调用就行,而且还和编写者水平挂钩,一不小心代码就会变的很shit(没错我的代码就是这么shit

golang暂时比较推荐,也是我目前再用的,然而,这编译出来的体积是真的不敢恭维,同时部署开发环境的时候也略微麻烦,但是优点也很明显,跨平台十分的轻松,而且语法也挺简单,C一样简单的语法C差不多的性能,如果没有这鬼畜的体积我绝对会吹爆golag

py是开发最轻松也是最灵活但也是最不灵活的。毕竟是脚本语言,会出现各种奇奇怪怪的问题,会整的你非常非常的迷惑,稳定性不能保证,但是作为控制端开发来说,py是最舒服的,毕竟他是脚本。同时还有个好处就是很多linux会自带python,但是还是归根一点,稳定性很捉急,所有东西都装了但是就是莫名其妙的跑不起来,非常的蛋疼

协议选择

TCP/UDP这类型的协议我就不说什么了,这里大家自行判断,我们这里说的是轮询类还是tcp那种长连接类保持。

tcp长连接类型的好处就是,操作反馈非常及时,最早的gh0st,上兴灰鸽子都是这种模式,然而缺点也很大,就是后台直溜溜的一个tcp链接,十分容易被发现。并且会收到网络波动影响。

轮询类的就是类似cs那种,缺点就是操作反馈不及时,必须等待各种间隔才能交换数据,这对于即时操作体验很麻烦。

所以最好的办法就是两种结合,普通模式轮询遇到特殊模式就建立tcp链接然后实时交换数据,然而这就也挺考研变成功底的

所以如果不考虑隐蔽性而注重体验那就直接走tcp最简单也最轻松,注重隐蔽性就走https,有时间有水平就上两者结合

服务端的一些小tips

接上条,如果选择轮询,还有一个优点是,你可以使用http/https,然后套个CDN,可以有效的隐蔽源服务端,当然这就肯定得预留个tips来设置http的请求头中CDN设置的客户的源IP

目前就想到这么多啦

Tags: 木马, rat, 远控