[ACTF2020 新生赛]Include

开启环境之后点击tips

可以在url中看到格式为:

?file=flag.php

  加上题目是include,可以猜测是文件包含漏洞

http://a291bdf1-28ba-406c-8e0a-ca2092423c97.node3.buuoj.cn/?file=../../../../../etc/passwd

访问之

确实是文件包含,但是我不知道flag文件叫啥名字

尝试了一下在根目录下读取flag和flag.txt,无果,使用php伪协议尝试读取flag.php文件

http://a291bdf1-28ba-406c-8e0a-ca2092423c97.node3.buuoj.cn/?file=php://filter/read=convert.base64-encode/resource=flag.php

base64解码后获取flag

[ACTF2020 新生赛]Exec

看题目应该是命令执行类型的

ping 一下127.0.0.1,然后尝试使用 | 来执行命令

使用 127.0.0.1 | ls

发现当前文件夹下是index.php文件,一般来说这种题目的flag都在根目录下,127.0.0.1 | ls / 查看根目录文件

使用 127.0.0.1 | cat /flag 查看flag

[极客大挑战 2019]BuyFlag

不知道为啥,这道题因为我自己本机环境的问题,总是没有正确的返回结果

简单说一下

<!--
~~~post money and password~~~
if (isset($_POST['password'])) {
$password = $_POST['password'];
if (is_numeric($password)) {
echo "password can't be number</br>";
}elseif ($password == 404) {
echo "Password Right!</br>";
}
}
-->

  可以看到源代码里面有提示,抓包的时候cookie里面有user=0,猜测需要是CQIT的学生,cookie验证强度太低,修改user=1

对于源代码里面的比较,使用了is_numeric,有漏洞的判断函数,我们可以在404前面或者后面添加%00进行绕过,另外就是money的值,这里我就没有返回正确的值了,看其他师傅的博客,可以知道这里不能输入超过8位的数字,猜测服务器端使用的是strcmp函数进行比较,使用money[]=a进行绕过即可,就能拿到flag了。

[极客大挑战 2019]Upload

界面很漂亮

文件上传漏洞

上传chopper.php抓包,返回包里面有Not image!的错误提示

将Content-Type修改为:image/gif,返回的错误信息变成了NOT!php!

应该是因为我们上传的文件名是php结尾的,使用%00截断

截断之后提示我们上传的文件中包含了<?

实体编码解码之后可以看到是:

说明不能包含<?

使用javascript上传木马进行绕过

又出现新的错误信息了:(

添加GIF89a文件头

这次总算是上传成功了,但是好像访问不到?

重新修改上传的文件名

phtml后缀上传成功,此处的黑名单过滤不够完全,然后我们去访问upload文件夹下的chopper.phtml

链接木马

BUUOJ WEB(1)的更多相关文章

  1. java web (j2ee)学习路线 —— 将青春交给命运

    RESON TO DO JAVA WEB:1.JAVA WEB(企业级)  2.Android和iOS过于火爆并且不兼容 一.JAVA WEB开发需要的知识储备 1.      基本的网页设计语言:H ...

  2. macaca 测试web(3)

    上回书说到 macaca 测试web(2)  使用ddt做参数驱动化, 有些人会说,你好low,我说怎么low呢,他说你看看你的脚本就放在一个文件里,对于我们小白来说,这看起来很乱啊,能不能给我拆分, ...

  3. Python web(Django)连接Sql server

    (开开心心每一天~ ---虫瘾师) Python Web(Django) 与SQL SERVRE的连接----Come QQ群:607021567(里面有很多开源代码和资料,并且python的游戏也有 ...

  4. Python Web(Django)与SQL SERVER的连接处理

    (开开心心每一天~ ---虫瘾师) Python Web(Django) 与SQL SERVRE的连接----Come QQ群:607021567(里面有很多开源代码和资料,并且python的游戏也有 ...

  5. Java EE 学习(9):IDEA + maven + spring 搭建 web(5)- 博客文章管理

    转载:Gaussic(一个致力于AI研究却不得不兼顾项目的研究生) . 注:在阅读本文前,请先阅读: Java EE 学习(5):IDEA + maven + spring 搭建 web(1) Jav ...

  6. Java EE 学习(8):IDEA + maven + spring 搭建 web(4)- 用户管理

    转载:Gaussic(一个致力于AI研究却不得不兼顾项目的研究生) 注:在阅读本文前,请先阅读: Java EE 学习(5):IDEA + maven + spring 搭建 web(1) ava E ...

  7. Java EE 学习(7):IDEA + maven + spring 搭建 web(3)- 配置数据库

    参考: https://my.oschina.net/gaussik/blog/513444 注:在阅读本文前,请先阅读: Java EE 学习(5):IDEA + maven + spring 搭建 ...

  8. Java EE 学习(6):IDEA + maven + spring 搭建 web(2)- 配置 Spring

    参考:https://my.oschina.net/gaussik/blog/513353 注:此文承接上一文:Java EE 学习(5):IDEA + maven + spring 搭建 web(1 ...

  9. Java EE 学习(5):IDEA + maven + spring 搭建 web(1)

    参考:http://www.cnblogs.com/lonelyxmas/p/5397422.html http://www.ctolib.com/docs-IntelliJ-IDEA-c--1590 ...

随机推荐

  1. 五分钟看懂抓包神技:DPDK

    我是一个网络监控软件,我被开发出来的使命就是监控网络中进进出出的所有通信流量. 一直以来,我的工作都非常的出色,但是随着我监控的网络越来越庞大,网络中的通信流量也变得越来越多,我开始有些忙不过来了,逐 ...

  2. mysql优化之2--索引优化

    1. 创建联合索引时,要注意,离散度大的列前置. 可以通过 select count(distinct(A)),count(distinct(B)) from tb; 看哪个列离散度大. 2. 索引列 ...

  3. waitpid()系统调用学习

    waitpid()的头文件 #include <sys/types.h>  #include <sys/wait.h> pid_t waitpid(pid_t pid,int ...

  4. 聊聊Spark的分区、并行度 —— 前奏篇

    通过之前的文章[Spark RDD详解],大家应该了解到Spark会通过DAG将一个Spark job中用到的所有RDD划分为不同的stage,每个stage内部都会有很多子任务处理数据,而每个sta ...

  5. shell编程之字符串操作

    shell中字符串操作主要有以下几种,其中:pattern ,old中可以使用通配符: ${#var} :返回字符串变量var的长度 ${var:m} :返回${var}中从第m+1个字符到最后的部分 ...

  6. TCP回射客户服务器模型(01 socket bind listen accept connect)

    socket函数(安装电话机)头文件:#include<sys/socket.h> int socket(int family,  int type, int protocol); //返 ...

  7. 《.NET 5.0 背锅案》第5集-案情大转弯:都是我们的错,让 .NET 5.0 背锅

    第1集:验证 .NET 5.0 正式版 docker 镜像问题 第2集:码中的小窟窿,背后的大坑,发现重要嫌犯 EnyimMemcachedCore 第3集-剧情反转:EnyimMemcachedCo ...

  8. 设计模式(一)--工厂模式(Go实现)

    package Factory import "fmt" type Restaurant interface { GetFood() } type Donglaishun stru ...

  9. laravel5.5 如何创建Facades并使用

    laravel Facades概念略,自行百度. 如何创建Facades使用步骤1. 创建一个php文件,App\Utils\SmsSend.php.<?php namespace App\Ut ...

  10. windows 无法启动 SQL Server (MSSQLSERVER) 服务(位于本地计算机上)。错误 1069由于登入失败而无法启动 。

    windows 无法启动 SQL Server (MSSQLSERVER) 服务(位于本地计算机上).错误 1069由于登入失败而无法启动. 今天登录测试服务器突然出现无法登录的情况,经排查发现,SQ ...