首页 > 其他分享 >CTFer——文件操作与upload-labs解析

CTFer——文件操作与upload-labs解析

时间:2024-02-03 22:23:02浏览次数:29  
标签:文件 text image upload labs CTFer audio 上传

一、什么是webshell

webshell就是以aspx、php、jsp等网页文件形式存在的一种命令环境

也可以将其称为一种网页后门

 

黑客在入侵网站后,通常会将jsp、aspx或php后门文件与网站服务器web目录下正常的网页文件混在一起

然后就可以使用浏览器来访问后门文件,得到一个命令执行环境,以达到控制网站服务器的目的

 

二、分类

按照文件大小可以分为三类:大马 小马 一句话木马

 

三、一句话木马

<?php eval($_GET['cmd']);?>
<?php eval($_POST['cmd']);?>

get&post 表示客户端向服务端传递参数的两种方式,eval函数用来执行命令

 

四、文件上传漏洞:
上传文件时,如果服务器后端未对上传的文件进行严格的验证和过滤,就可能造成上传恶意文件的行为 

 

 

 

(1)客户端检测:就是在网页上写一段JavaScript脚本,校验文件上传的后缀名,有白名单形式也有黑名单形式

判断方式:在点击上传时便弹出对话框,指明可以传的文件格式,此时并没有发送数据包

 

Upload-labs 01:

点击上传后出现文件格式提醒

Solve1:直接在浏览器f12中的设置中禁用JavaScript 即可实现上传

不过在实战中直接禁用js插件会导致一些页面无法正常显示,还是存在着一些缺陷。

Solve2(常用)抓包截获 修改 发送:使用burpsuite工具抓包,直接修改后缀名为.php然后点击Forward即可完成上传

就是上传一个shell 用合法的后缀命名,抓包截获后在修改为正确格式,发送后即可实现上传

 

(2)服务端验证:MIME验证

通过检测http包中的Content-type字段中的值来判断上传文件是否合法,一般采用白名单的方式来进行检测

常见的CT值有

文本:text/plain、text/html、text/css、text/javascript、text/xml
图片:image/gif、image/png、image/jpeg
视频:video/webm、video/ogg
音频:audio/midi、audio/mpeg、audio/webm、audio/ogg、audio/wav
二进制:application/octet-stream、application/pdf、application/json
在表单中进行文件上传:multipart/form-data

Upload-labs 02:

上传一个1.php的shell文件,抓包后修改上传的文件类型

即修改Content-Type为image/gif 发送即可

 

标签:文件,text,image,upload,labs,CTFer,audio,上传
From: https://www.cnblogs.com/heck1ng/p/18005306

相关文章

  • antd upload组件缩略图自定义
    antd组件的缩略图使用img标签即可实现,我们这里有一个3D文件显示2D缩略图的需求,而这个缩略图是后台从接口返回的,所以需要自定义缩略图。 这里的imageUrl就是你要的缩略图用到了官网案例的将图片转为base64,具体的方法看官网。在这里还有最最重要的一个点就是得控制它的样式,不......
  • el-upload 跟Form表单一起提交
     vue el-upload上传<el-col:span="20"><el-form-item:label="$t('message.common.file')"prop="uploadFileList"el-uploadclass="upload-demo"dragname="uploadFile'ref="upload"......
  • Ctfer-Sql注入从0到0.1
    一、判断是否存在sql注入漏洞1.单引号判断http://www.xxx.com/xxx.asp?id=10'如果出现错误提示 youhaveanerrorinyoursqlsyntax则该网站可能就存在注入漏洞。二、判断注入类型字符型and数字型数字型:Or判断(or跟and判断方法不一样的,and是提交返回错误才有注入点,......
  • a-upload图片上传
    <a-uploadv-model:file-list="state.form.fileList"name="file":multiple="true"......
  • Java代码审计-FileUpload
    Web应用通常都会包含文件上传功能,用户可以将其本地的文件上传到Web服务器上。如果服务器端没有能够正确的检测用户上传的文件类型是否合法(例如上传了jsp后缀的WebShell)就将文件写入到服务器中就可能会导致服务器被非法入侵。漏洞成因后缀名无限制//导入必要的类库package......
  • INFINI Labs 产品更新 | 统一版本号 1.22.0
    INFINILabs产品又更新啦~,包括Console,Gateway,Loadgen,Agent1.22.0。为了避免版本不同带来的困扰,以后发布均统一版本号,此次版本重点修复历史遗留Bug、优化内存占用等。以下是本次更新的详细说明。INFINIConsolev1.22.0INFINIConsole是一款非常轻量级的多集群、跨版本的搜索......
  • INFINI Labs 产品更新 | 统一版本号 1.22.0
    INFINILabs产品又更新啦~,包括Console,Gateway,Loadgen,Agent1.22.0。为了避免版本不同带来的困扰,以后发布均统一版本号,此次版本重点修复历史遗留Bug、优化内存占用等。以下是本次更新的详细说明。INFINIConsolev1.22.0INFINIConsole是一款非常轻量级的多集群、跨版本的搜......
  • CTFer blogs--hash比较绕过
    1.PHP弱类型===和==的区别:===在进行比较时,会先判断类型是否相同,再进行比较== 在进行比较时,会先将字符串类型转化相同,再比较转换规则:字符串的开始部分决定了它的值,如果以合法的数值开始,则使用该数值,否则为0eg.admin==01admin=10e123456==0e456789 相互比较......
  • upload-labs-main-v1.0
    upload-labs-main-v1.0Pass-01【前端校验】解题wp(By:独立团孙德胜Alan)本Pass是客户端过滤,可以通过禁用JS的方式绕过!1、打开第一关2、上传一个普通的shell.php文件<?php@eval($_POST('Alan'));?>提示不允许上传3、分析代码发现是前端JS校验4、前端js验证的绕......
  • element upload avator hover 有遮罩层 删除和预览按钮 选项
    hover:<divclass="upload"><el-uploadclass="avatar-uploader":on-success="handleAvatarSuccess"><imgv-if="ruleForm.imageUrl":src="ruleForm.image......