zoukankan      html  css  js  c++  java
  • 天网管理系统

    点击登录发现没用

    然后康康源码

    给出提示test使用的是md5加密,如果id0就。。。。

    这里使用php==的漏洞,==只比较值的大小并不会比较数据类型

    所以这里使用md50)的相等值240610708输入到username

    弹出提示

    似乎是网页的后缀,加进去试试

    似乎让我们用布尔?

    这段代码的大概意思是取得password的值,再使用unserialize函数,如果$data_unserialize['user']等于’???’$data_unserialize['pass']等于’???’就输入flag

    而函数unserialize()则是对单一的已序列化的变量进行操作,将其转换回反序列化 PHP 的值。返回的是转换之后的值,可为 integerfloatstringarray object

    如果传递的字符串不可解序列化,则返回 FALSE,并产生一个 E_NOTICE

    序列化与反序列化
    把复杂的数据类型压缩到一个字符串中 
    serialize() 把变量和它们的值编码成文本形式 
    unserialize() 恢复原先变量 
    举个例子就是这样 
    定义一个array数组,key为键名,www就是对应的array[key]的键值

    最后根据提示使用布尔漏洞true可以和任意字符串的弱类型相等

    因此这里构造布尔的序列化数据

    a:2:{s:4:"user";b:1;s:4:"pass";b:1;}a代表array,s代表string,b代表bool,而数字代表个数/长度) 

    输入到password中就得到flag了

  • 相关阅读:
    HTML2
    HTML1
    MySQL进阶part4
    pymysql模块
    MySQL进阶part3
    MySQL进阶part2
    MySQL进阶part1
    java IO中的乱码问题
    解决在IDEA中无法使用Scanner输入的问题
    IDEA配置xml文件头报错:URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)
  • 原文地址:https://www.cnblogs.com/wosun/p/11215780.html
Copyright © 2011-2022 走看看