网站切换城市代码,深圳四站合一网站建设电话,网站建设 电话咨询,公司网站建设要多少钱upload labs靶场
注意:本人关卡后面似乎相比正常的关卡少了一关#xff0c;所以每次关卡名字都是1才可以和正常关卡在同一关
一.个人信息
个人名称#xff1a;张嘉玮
二.解题情况
三.解题过程
题目#xff1a;up load labs靶场
pass 1前后端
思路及解题#xff1a;…upload labs靶场
注意:本人关卡后面似乎相比正常的关卡少了一关所以每次关卡名字都是1才可以和正常关卡在同一关
一.个人信息
个人名称张嘉玮
二.解题情况
三.解题过程
题目up load labs靶场
pass 1前后端
思路及解题先验证合法性是前端还是后端(如果是前端验证意味着你可以在前端验证之后后数据流发往后台的时候将其拦截并且修改)
题目中的提交限制必须为jpg等类型需要判断这个提交是前端还是后端验证的所以先打开抓包并且发送一个不合法的php文件提交发现抓包并没有阻止页面显示文件上传格式错误所以是前端验证。因此我直接将php文件类型重命名为jpg类型提交文件前先抓包拦再改变其中文件类型php为jpg,再forward此时我已将木马发送到其内部之后在下方图片中右键点击新标签页中打开图片复制域名打开蚁剑右击添加数据粘贴域名到url并且输入密码a点击测试连接观察是否通过若通过再添加此时便可以控制对方了。
一句话木马
?php
eval($_POST_[a]);
? pass 2前后端
1.思路仍然是先看合法性是前端还是后端
我上传一个不合法的php文件并且用bp拦截发现在拦截过程中页面未报错所以是后端验证不是前端之后判断拦截下的语句中哪句话是判断文件类型的所以我继续先上传jpg,burp拦截后找到其中的Content-Type:image/jpeg然后删掉再forward,发现文件传输错误所以它是通过content-type验证合法性的之后我再上传一个php拦截将content-type:application/octet-stream改为image/jpeg之后forward则发送成功蚁剑中添加数据后查看是否成功 pass 3文件名加数字
(此题验证方式为黑名单大部分网站是白名单)
思路及做法查看源代码后发现其限制了php文件 但存在漏洞未限制php3,4等格式
所以直接将文件后缀名改为.php3等类型 pass4配置文件
思路及做法1.查看源码发现其已限制大多数文件类型但是有一个明显的漏洞没有限制htacess文件所以直接将文件后缀名改为.htacess就行了。
AddType application/x-httpd-php .jpg.txt意思就是将txt和.jpg文件当作php文件解析
2.所以接下来直接上传一个jpg文件类型的一句话木马就可以搞定了再连接蚁剑测试是否成功. 补充文件后缀名字
.htaccess
叫分布式配置文件 作用于网站根目录及其子目录 修改后立刻生效 可覆盖httod-conf
httpd -conf
(先加载)
包含apache http 作用于整个服务器 优先级低需管理员权限 且重启服务器才可以生效
.user.ini
作用于用户或特定目录的配置文件可覆盖或追加配置选项在web应用程序根目录下可覆盖php.ini追加全职配置文件
php.ini
先加载)
作用是存储了对整个php环境生效的配置选项通常位于php安装目录之下优先级较低需管理员权限和重启web服务器 pass5配置文件
思路和做法
仍然是有黑名单限制了.htaccess,但是未限制.user.ini的因为.user,.ini优先级程度高可以覆盖掉php.ini所以不限制的危害较大
Auto-prepend-fileindex(2).txt //此文件中有木马//自动包含所有文件 用index(2).txt包含所以先上传一个.user.ini的文件 再上传对应的php改为jpg后的文件 通过蚁剑连接就可以
法二 思路 由于题目中检查文件名后缀的源代码并未选择循环结构因此后缀名.php 后直接加**.空格.就可以在其检查后正好剩一个.php.正好运行windows操作系统下会将最后一个点删除使得文件仍然可以运行所以蚁剑连接时直接输入.php**就可以了。 pass6大写
思路题目黑名单源代码中明显没有限制pHp,PHP等大写形式的后缀名所以直接在bp中拦截之后更改Content后面的后缀名就可以了之后蚁剑连接看有没有成功 pass7空格
思路题目黑名单源代码未限制首位去空,借此绕过黑名单都需bp拦截后修改)。并且我windows系统下就算给文件后缀名加了点系统也会自动删除所以可以正常运行。 pass8 .
思路题目黑名单源代码中少了del的自动删除.**删除方式是从右边往左边删遇到空格就会停止)**因此直接bp更改Content下的文件后缀名就可以了注意蚁剑搭建url时将最后的.删除因为windows下会自动删除多余的点. 补充额外数据流
格式 “”::$DATA 即表示一个附加数据流 它不是一个文件 所以不会验证文件后缀.
作用和例如打开txt文件后直接就可以看见的文字信息也叫默认数据流不同其可以存储文件的元数据标签备份等,想要访问需要特殊命令
导入方式 echo 内容 文件名:数据流名 访问 Notepad 文件名:数据流名 type 文件名文件名.数据流名 pass9::$DATA
思路题目黑名单中缺少了对**:: D A T A ∗ ∗ 的限制这不是一个文件是一个额外数据包因此黑名单不会检查它通过这个 b u g 直接绕过之后新建标签页打开后将 u r l 里的 : : DATA**的限制这不是一个文件是一个额外数据包因此黑名单不会检查它通过这个bug直接绕过之后新建标签页打开后将url里的:: DATA∗∗的限制这不是一个文件是一个额外数据包因此黑名单不会检查它通过这个bug直接绕过之后新建标签页打开后将url里的::DATA删除就可以访问了 pass10. .
思路删除点与空格的源代码中没有添加循环 所以直接**.空格 .**解决 pass10双写后缀绕过
$file_name str_ireplace($deny_ext,, $file_name);意思是deny—会将$file_name路径下的之前黑名单的文件全部变成’ 也就是删除他们 顺序是从左边往右边删没有循环的条件下只循环一下 补充空字符
格式0x00 顺序从左到右在编程语言使用 || %00在url中使用 pass11%00截断php5.3.29)
思路观察源代码发现其用白名单过滤 $ext_arr array(jpg,png,gif);$file_ext substr($_FILES[upload_file][name], strrpos($_FILES[upload_file][name],.)1)逗号前 是获取文件 也就是从哪里获取逗号后 是在几位 点在这个里面最后出现是出现在了第几位)(从左到右)
php上传先先把文件放在临时路径当中再移动到指定位置
漏洞在于通过**GET[‘save_path’].来拼接组成上传的文件路径 而这个get传参是我们可以改掉的地方改掉其上传路径再将后面进行截断。其实原理就是在后端验证时它发现你是jpg文件所以给你通过了但是后续经过移动到临时路径和最终路径的过程中时,111.php和.jpg拼接因为php后面有%00所以jpg会省略最终还是以php形式解读的
操作 改为 %00 是空字符NULL字符的URL编码它在某些情况下可能被用于截断字符串或绕过安全措施 (后面的http1.1是个http协议) pass12
思路大致和12关一样 将空格改成右边框中hex16进制形式----00 补充图片字符标识
jpeg/jfif 头字节0xff 0xd8png(无损压缩形式) 0x89 0x50gif 0x47 0x47 0x49bmp(windows位图) 0x42 0x4dtuff(标签图片格式) 可是不同的d pass13修改前两个字节
思路及做法
观察题目源代码发现其有判断语句判断读取文件的前两个字节)转化为10进制再判断. switch($typeCode){ case 255216: $fileType jpg; //十进制break;case 13780: $fileType png;break; case 7173: $fileType gif;break;default: $fileType unknown;} return $fileType;代码通过读为图片头字母判断是什么图片类型
做法先将一句话木马以jpg形式更改后缀名再通过记事本形式打开将最前面增加两个空格以方便后续的修改再通过010editor更改前面两个字头-89 50 png)形式之后将文件后缀名字改为php以原来的方式上传 发现不可以 因为文件以Png的形式解析了;所以需要将jpg文件以php形式输出这个时候就需要文件包含漏洞了上传一个改了文件头的php文件观察他的路径 是在upload路径里面 而包含漏洞的文件夹在他的上级目录所以在有漏洞页面的后面输入urll后**?file./upload/7020241111194319**就成功了
漏洞通过get请求获得file文件中的东西它没有对文件包含的东西过滤,都会将文件以php形式解析
所以可以利用它会将文件当成php形式的漏洞直接输入?file1.jpg(文件中是一句话木马) pass14图片马绕过
getimgaesize()意思是返回包含文件属性的数组这里不可以通过13关一样简单的方法过了
做法应用cmd将一个图片与含有一句话代码的php文件这两个文件必须放在一个路径通过cmd打开cmd后通过基础命令进入他俩在的那个路径) 输入copy 1.jpg/b index(22).php/a 2.jpg生成一个图片马之后就可以成功发送了之后打开文件包含漏洞的页面 输入**?file./upload/刚刚随机生成的文件编码**,就可以通过蚁剑连接了. pass15图片马绕过
仿照第14关就可以过去了 pass16二次渲染
思路通过观察源代码发现它将图片进行了二次渲染也就是重新超了一遍会删掉一些东西,所以原来有的Php木马会直接消失掉,如下: 做法一:保存一个gif图片(),上传到题目中去通过010editor打开并进行比较其中蓝色部分是两者相同的部分找到两者相同的地方(要稍微靠后一点),则我可以在原来的图片的一堆数字里增加一句话木马这里的木马因为被掩盖掉了所以木马不会被删除上传成功之后通过文件包含漏洞在url里输入?file./upload/文件名再通过蚁剑连接然后就成功了.
做法二:在你第一次发送的gif图片里直接插入一句话木马再发送给题目发现木马其并没有被删掉所以这就是他的漏洞他渲染一次后就不会再渲染了所以可以直接将渲染一次后的图片里直接插入一句话木马就成功了 补充条件竞争
文件上传会从临时目录(服务器)转移到指定目录再判断文件是否合法,所以通过发送很多请求使判断过程缓不过来我再趁机访问
?php fputs(fopen(../upload/shell18.php,w),?php phpinfo();?);?原理:访问有没有Php文件如果没有就会新建一个shell.php文件 再将一句话木马写下去 pass17
思路及做法:先抓一个上传php文件的包 同时在url中搜索 路径为在upload里的你要往过发的文件的路径也拦截住把这两个都发送都爆破模式再按照上述设置同时爆破只要看见upload路径下长存这那个shell18.php文件就成功了.注意要一边访问一边攻击 pass18apache解析漏洞条件竞争(php版本为apache版本才有的漏洞)
思路在这里的源代码中会提前解析文件后缀名所以就算爆破其中的php文件也会被拦截但是apache解析不了7z 它从右边往左边解析时候遇到7z不会执行会直接解析php index(22).php.7z所以可以借助7z的后缀名字通过下一步就和17关一样了. pass19后缀绕过总结
思路观察源代码发现其会直接看.后面的后缀 然后判断
可以上传的时候 后缀名字为.php空格 .jpg就可以通过了因为windows解析时候会自动将空格删除所以不要害怕文件打不开而题目过滤时却会读取到jpg所以可以成功绕过。 hp版本为apache版本才有的漏洞)
思路在这里的源代码中会提前解析文件后缀名所以就算爆破其中的php文件也会被拦截但是apache解析不了7z 它从右边往左边解析时候遇到7z不会执行会直接解析php index(22).php.7z所以可以借助7z的后缀名字通过下一步就和17关一样了. pass19后缀绕过总结
思路观察源代码发现其会直接看.后面的后缀 然后判断
可以上传的时候 后缀名字为.php空格 .jpg就可以通过了因为windows解析时候会自动将空格删除所以不要害怕文件打不开而题目过滤时却会读取到jpg所以可以成功绕过。