郑州建设劳务管理中心网站,论坛类网站备案吗,12.12做网站的标题,大型网站开发什么书籍好文件上传漏洞描述中国蚁剑安装1. 官网下载源码和加载器2.解压至同一目录并3.安装4.可能会出现的错误文件上传过程必要条件代码示例dvwa靶场攻击示例1.书写一句话密码进行上传2. 拼接上传地址3.使用中国蚁剑链接webshell前端js绕过方式服务端校验请求头中content-type黑名单绕过…
文件上传漏洞描述中国蚁剑安装1. 官网下载源码和加载器2.解压至同一目录并3.安装4.可能会出现的错误文件上传过程必要条件代码示例dvwa靶场攻击示例1.书写一句话密码进行上传2. 拼接上传地址3.使用中国蚁剑链接webshell前端js绕过方式服务端校验请求头中content-type黑名单绕过1.修改后缀名为黑名单以外的后缀名2.htaccess重写解析绕过上传3.大小写绕过4.空格绕过上传5.利用windows系统特性绕过上传添加.6.ntfs交换数据量::$DARA绕过上传7.利用windaows环境叠加特性绕过8.双写后缀名绕过白名单绕过1.目录可控%00截断绕过上传2.文件头检测绕过3.绕过图片二次渲染上传其他文件上传漏洞文件上传漏洞防御方法描述 文件上传漏洞是指由于程序员未对上传的文件进行严格的验证和过滤而导致的用户可以越过其本身权限向服务器上上传可执行的动态脚本文件。如常见的头像上传图片上传oa 办公文件上传媒体上传允许用户上传文件如果过滤不严格恶意用户利用文件上传漏洞上传有害的可以执行脚本文件到服务器中可以获取服务器的权限或进一步危害服务器。 中国蚁剑安装
1. 官网下载源码和加载器
GitHub地址https://github.com/AntSwordProject 》加载器咱们下载win64版本往下滑找到下载地址
2.解压至同一目录并 3.安装
》点击antSword.exe进行初始化 》初始化时选择antSword_masster文件夹
4.可能会出现的错误 原因是文件夹目录选择错了一定要选择安装在antSword_masster文件夹
文件上传过程
#mermaid-svg-585amNf4PN95iqsf {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-585amNf4PN95iqsf .error-icon{fill:#552222;}#mermaid-svg-585amNf4PN95iqsf .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-585amNf4PN95iqsf .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-585amNf4PN95iqsf .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-585amNf4PN95iqsf .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-585amNf4PN95iqsf .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-585amNf4PN95iqsf .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-585amNf4PN95iqsf .marker{fill:#333333;stroke:#333333;}#mermaid-svg-585amNf4PN95iqsf .marker.cross{stroke:#333333;}#mermaid-svg-585amNf4PN95iqsf svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-585amNf4PN95iqsf .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-585amNf4PN95iqsf .cluster-label text{fill:#333;}#mermaid-svg-585amNf4PN95iqsf .cluster-label span{color:#333;}#mermaid-svg-585amNf4PN95iqsf .label text,#mermaid-svg-585amNf4PN95iqsf span{fill:#333;color:#333;}#mermaid-svg-585amNf4PN95iqsf .node rect,#mermaid-svg-585amNf4PN95iqsf .node circle,#mermaid-svg-585amNf4PN95iqsf .node ellipse,#mermaid-svg-585amNf4PN95iqsf .node polygon,#mermaid-svg-585amNf4PN95iqsf .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-585amNf4PN95iqsf .node .label{text-align:center;}#mermaid-svg-585amNf4PN95iqsf .node.clickable{cursor:pointer;}#mermaid-svg-585amNf4PN95iqsf .arrowheadPath{fill:#333333;}#mermaid-svg-585amNf4PN95iqsf .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-585amNf4PN95iqsf .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-585amNf4PN95iqsf .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-585amNf4PN95iqsf .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-585amNf4PN95iqsf .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-585amNf4PN95iqsf .cluster text{fill:#333;}#mermaid-svg-585amNf4PN95iqsf .cluster span{color:#333;}#mermaid-svg-585amNf4PN95iqsf div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-585amNf4PN95iqsf :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}选择发送的文件服务器接收网站程序判断保存为临时文件移动到指定目录必要条件
存在上传点可上传可执行且可解析可访问上传的脚本文件
代码示例 dvwa靶场攻击示例
1.书写一句话密码进行上传 2. 拼接上传地址
》1. 拼接为启动目录 》2. 往后依次进行拼接
未返回404 可行
3.使用中国蚁剑链接webshell 成功拿到shell权限入侵成功
前端js绕过方式 方法1上传图片jpg、png等文件后使用bp抓包修改文件后缀为php文件 方法2前端F12模式删除相关校验代码 服务端校验请求头中content-type
把bp抓包后修改content-type为image/jpeg或image/png黑名单绕过
1.修改后缀名为黑名单以外的后缀名
》上传黑名单以外的后缀名即可。 在iis里asp禁止上传了可以上传asacercdx这些后缀如在网站里允许.net 执行可以上传ashx代替aspx。如果网站可以执行这些脚本通过上传后门即可 获取webshell。 在不同的中间件中有特殊的情况如果在apache可以开启application/x-httpd-php 在AddTypeapplication/x-httpd-php.php.phtml.php3 后缀名为phtml、php3均被解析成php有的apache版本默认就会开启。 上传目标中间件可支持的环境的语言脚本即可如.phtml、php3。 2.htaccess重写解析绕过上传
前提apache开启rewrite重写模块 1.上传含有webshell的txt文件修改后缀为.jpg文件 2.上传.htaccess文件到网站中内容如下 FilesMatchjpg
SetHandlerapplication/x-httpd-php
/FilesMatch #意思为把jpg文件识别为php文件3.大小写绕过 修改后缀名部分大写或小写后上传 或者使用bp抓包后进行修改大小写 4.空格绕过上传 bp抓包后在上传文件末尾输入空格进行上传 5.利用windows系统特性绕过上传添加. bp抓包后上传文件末尾输入.进行绕过 原理windows中文后缀名.系统会自动忽略直接可以执行 6.ntfs交换数据量::$DARA绕过上传
前提win bp抓包后修改后缀名为php::$DATA上传即可 7.利用windaows环境叠加特性绕过 1.bp抓包后修改文件后缀为webshell.php:.jpg此时在服务器中会生成一个xxx.php空文件 2.再次修改文件后缀为.会把本文件中的文件写入到xxx.php文件中 匹配规则 “” . ? 匹配一个字符 # 匹配为php *匹配多个字符 8.双写后缀名绕过 bp抓包后修改php为phphpp此时会过滤掉一个php 白名单绕过
1.目录可控%00截断绕过上传
前提 1.请求报文中存在保存的目录 2.gpc为关闭状态 3.php版本小于5.3.4 原理bp抓包后修改后缀名为php%00.jpg相当于%00后均在上传过程中不识别但服务器会识别所以可以造成上传绕过
2.文件头检测绕过
前提使用getReailFileType检测文件开头是否是jpg、png、gif文件头 常见的图片文件头 JPEG(jpg)文件头FFD8FF PNG(png)文件头89504E47 GIF(gif)文件头47494638 TIFF(tif)文件头49492A00 方法使用图片和一句话木马合成一个文件进行上传 copy xx.png/bxxx.php shell.php #生成shell.png文件进行上传3.绕过图片二次渲染上传
应用场景上传webshell图片后网站为了符合要求会二次渲染照片调整图片大小分辨率等 方法使用hxd文件16进制打开渲染前和渲染后的照片对比那些在渲染后未改变未改变部分修改为webshell木马 其他文件上传漏洞 nginx0.83----- 1.jpg%00php 解析为1.php apahce1x或者2x------当apache遇见不认识的后缀名会从后向前解析例如1.php.rar不认识rar就向前解析直到知道它认识的后缀名。 phpcgi漏洞(nginxiis7或者以上)上传图片后1.jpg。访问1.jpg/1.php也会解析成php。 ApacheHTTPD换行解析漏洞CVE-2017-15715 apache通过mod_php来运行脚本其2.4.0-2.4.29中存在apache换行解析漏洞在解析php时xxx.php\x0A将被按照PHP后缀进行解析导致绕过一些服务器的安全策略。 文件上传漏洞防御方法 服务器端使用白名单防御修复web中间件的漏洞禁止客户端存在可控参数存放文件目录禁止脚本执行限制后缀名一定要设置图片格式jpg、gif、png文件名随机的不可预测。