CTFHub - Web(四)
最近又是每天忙到裂开,,,淦
xss:
反射型:
1.第一个输入框与下面Hello后的内容相同,猜测可以通过该输入,改变页面内容。
测试语句:
<script>alert(1)</script>

2.测试第一步中的语句,出现如下回显,

3.根据url栏可知通过_GET传入参数,
4.经过测试,第二个输入框输入URL时,返回SUCCESS,猜测在后台进行访问,

5.使用XSS测试平台,创建项目,将网址name=后改为平台提供的代码后,send,在项目内容中接收flag,
6.得到flag,

flag:
ctfhub{dd876283c7836e1929c9f9793b95c162d92a7a15}
文件上传:
无验证:
1.进入页面,

2.编辑一句话木马,上传,
<?php
@eval($_POST['cmd'])
?>

3.用蚁剑连接,进入html目录,得到flag,

flag:
ctfhub{d9de0e104985706acfc4dac329ff4e3c8415a862}
前端验证:
1.随意上传一个php文件,发现该类型不允许上传,根据提示JS前端验证,发现函数中的白名单,删除判断函数(或者添加php类型),上传成功,


2.写入一句话,利用蚁剑进行连接,得到flag,
flag:
ctfhub{3f39f60713f9667252322c17e11eb8f87c59ff77}
.htaccess:
1.进入页面,查看源代码,发现过滤函数,

2.先上传个一句话,提示文件类型不匹配,上传了一张图片,上传成功,根据提示构造.htaccess文件,文件内容如下,目的是让服务器将jpg解析成php,
AddType application/x-httpd-php .png
3.上传成功后,接着上传带有一句话木马的jpg文件,上传成功后,用蚁剑连接,得到flag,
flag:
ctfhub{acb58985ce696cd969b2017a546120aac5c85414}
补充:
关于.htaccess:
.htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。
通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
MIME绕过:
1.上传一句话,抓包,修改Content-Type为合法类型,将类型改为image/jpeg,

2.蚁剑连接,得到flag,
flag:
ctfhub{bed028163c013365ca24283f879fa4c3a159b068}
补充:
关于MIME:
MIME原本是指多用途互联网邮件扩展类型。
后来被用到了HTTP的Content-Type字段,称为互联网媒体类型。
文件头检查:
1.上传一句话木马(.php),返回,

2.上传写有一句话的图片(gif),返回,

3.抓包,上传图码,在一句话前添加GIF89a(识别gif格式图片),

4.放包,上传成功,用蚁剑连接,得到flag,
flag:
参考:
Pass - 14:
https://www.cnblogs.com/3cH0-Nu1L/p/13534170.html
00截断:
1.上传php一句话,并抓包,

2.在地址栏可以发现road为上传文件的存储路径,

3.如果没有在road路径这里截断,只在文件名截断,系统会将你传入的文件自动存储在road下,虽然成功传上去但将文件名自行修改,文件后缀也会改为你的Content-Type,既要将文件名那里截断,在road那里也要截断上传shell,
4.蚁剑连接,得到flag,
flag:
ctfhub{88b884faa3879476c2040b5a29329ed64d3a1ed5}
参考:
https://blog.csdn.net/weixin_44732566/article/details/104672648
补充:
%00,0x00,/00都属于00截断,利用的是服务器的解析漏洞(ascii中0表示字符串结束),所以读取字符串到00就会停止,认为已经结束。
限制条件:
PHP<5.3.29,且GPC关闭
双写后缀:
1.上传一句话,抓包,修改文件后缀php => pphphp,放行,
2.蚁剑连接,得到flag,
flag:
ctfhub{c2d9a4e2969fd3c8de709c8fe16d5a774f8e5276}
CTFHub - Web(四)的更多相关文章
- CTFHub Web题学习笔记(Web前置技能+信息泄露题解writeup)
今天CTFHub正式上线了,https://www.ctfhub.com/#/index,之前有看到这个平台,不过没在上面做题,技能树还是很新颖的,不足的是有的方向的题目还没有题目,CTF比赛时间显示 ...
- java web(四)文件上传与下载
一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...
- java web(四):request、response一些用法和文件的上传和下载
上一篇讲了ServletContent.ServletCOnfig.HTTPSession.request.response几个对象的生命周期.作用范围和一些用法.今天通过一个小项目运用这些知识.简单 ...
- Java Web(四) 过滤器Filter
Filter概述 Filter意为滤镜或者过滤器,用于在Servlet之外对request或者response进行修改.Filter提出了过滤链的概念.一个FilterChain包括多个Filter. ...
- CTFHub Web题学习笔记(SQL注入题解writeup)
Web题下的SQL注入 1,整数型注入 使用burpsuite,?id=1%20and%201=1 id=1的数据依旧出现,证明存在整数型注入 常规做法,查看字段数,回显位置 ?id=1%20orde ...
- Web 四种常见的POST提交数据方式
HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT.DELETE.TRACE.CONNECT 这几种.其中 POST 一般用来向服务端提交数据,本文 ...
- 与阿根廷一起学习Java Web四个发展:对于信息传输和信息传输
发送短信和通用身份验证和用户注册系统消息提示功能模块,但是实现代码过于复杂.使用JSPGen后,深深发送消息.SMS程序包使复杂的简单非常活跃. 在短信模块:支持两种模式,它们被发送到第三方.地方平台 ...
- Java Web(四) 一次性验证码的代码实现
其实实现代码的逻辑非常简单,真的超级超级简单. 1.在登录页面上login.jsp将验证码图片使用标签<img src="xxx">将绘制验证码图片的url给它 2.在 ...
- CTFHub web技能树之RCE初步 命令注入+过滤cat
在一个大佬的突然丢了个题过来,于是去玩了玩rce的两道题 大佬的博客跳转链接在此->>>大佬召唤机 叫 命令注入 一上来就是源码出现,上面有个ping的地方 <?php $re ...
随机推荐
- 第七周jieba分词
import jieba txt = open("聊斋志异简写版.txt", "r", encoding='utf-8').read() words = jie ...
- oracle修改数据文件目录
一.停库修改数据文件目录.文件名 1.当前数据文件目录 SQL> select file_name from dba_data_files; FILE_NAME ---------------- ...
- 磁盘inode节点被占满的解决方法
问题: Linux服务器,查看日志发现程序无法继续写文件,但是用df -h查看磁盘容量还有剩余. 排查思路:怀疑是机器的inode节点被占满,使用df -i查看磁盘inode节点使用情况,果然是ino ...
- html 05-HTML标签图文详解(二)
05-HTML标签图文详解(二) #本文主要内容 列表标签:<ul>.<ol>.<dl> 表格标签:<table> 框架标签及内嵌框架<ifram ...
- #2020征文-手机#深鸿会深大小组:HarmonyOS手机游戏—数字华容道
目录: 前言 概述 正文 创建项目 实现初始界面布局 实现数字的随机打乱 实现滑动或点击调换数字 实现游戏成功界面 结语 源码包 前言 12月16号HarmonyOS2.0手机开发者Beta版已经发布 ...
- wildfly 21的domain配置
目录 简介 wildfly模式简介 domain controller的配置 Host controller的配置文件 忽略域范围的资源 Server groups Servers 总结 简介 wil ...
- Mysql5.7.20安装手记
Mysql到5.7之后安装较之前有了很大的不同,特别是解压缩版,可能安装速度较之前有所减少,但对于我们这种一直使用5.5的我来说不知道步骤还真是挺费劲的.下面详细记一下我安装的过程. 1.下载mysq ...
- Unity使用小剧场—创建的按钮On Click()只有MonoScript怎么办
前言: 在游戏开发过程中遇到了一些小问题,以后都放到小剧场里,今天介绍怎么给按钮赋予方法并解决标题所述问题. 步骤: 1. 不管怎么说,先新建一个按钮 右键场景-[UI]-[Button] 这里会自动 ...
- Oracle dd-m月-yy转yyyy-mm-dd
表名称:TEST_LP 字段:PROD_DATE 1 SELECT '20' || SUBSTR(T.PROD_DATE, INSTR(T.PROD_DATE, '-', 1, 2) + 1, 2) ...
- [leetcode]罗马数字和阿拉伯数字相互转换
罗马转阿拉伯 public int romanToInt(String s) { /* 从左到右依次根据哈希表进行加法 如果是"CM"900这种情况就要执行+M和-C处理 */ i ...