周末时间,抽个奖助助兴!
打开题目,发现是一个猜字符串的游戏,就问你枯不枯燥?
看到这想都不用想,CTRL+U查看后台代码,果然不出所料,发现了存在check.php
通过代码审计并结合题目来看,这是一道php伪随机数的题,通过代码可以发现使用了mt_rand()函数播种并生成了随机数,先用脚本转换伪随机数编程能力太弱,查看wp发现了一个较好的python脚本(原文链接:https://blog.csdn.net/qq_41628669/article/details/106133105)
# -*- coding: utf-8 -*-
s = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
key = 'c1z5DuPZXT'
m = ''
for i in key:
for j in range(len(s)):
if i == s[j]:
m += "{} {} 0 {} ".format(j,j,len(s)-1)
print(m)
2 2 0 61 27 27 0 61 25 25 0 61 31 31 0 61 39 39 0 61 20 20 0 61 51 51 0 61 61 61 0 61 59 59 0 61 55 55 0 61
下一步使用php_mt_seed4.0(下载地址)进行种子爆破
用爆破出来的种子生成题目中所要求的字符串
mt_srand(744449933);
$str_long1 = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$str='';
$len1=20;
for ( $i = 0; $i < $len1; $i++ ){
$str.=substr($str_long1, mt_rand(0, strlen($str_long1) - 1), 1);
}
echo "<p id='p1'>".$str."</p>";
将所生成的字符串提交得到flag
北京邮电大学 张剑 XML的局限性 目前,许多Web网站的内容数据都存放在数据库或数...
Servlet实现文件上传的三种方法总结 1. 通过getInputStream()取得上传文件。 /**...
前言 本文主要给大家介绍了关于.Net整合Json实现REST服务客户端的相关内容,分享...
jsp实现网页计算器代码如下:只有两个jsp页面 myCal.jsp如下: %@ page language...
2017.10.07更新由于现在bilibili更改了refer的Host并使用了防盗链原文的方法直接...
最近笔者有个朋友就碰到了标题所说的尴尬事上班的时候摸鱼,开的网页中居然就有...
功能是:以一个关键字为索引,搜索整个数据库,然后返回那个关键字所在的表名和...
项目简介 Tendis是腾讯互娱CROS DBA团队 腾讯云数据库团队自主设计和研发的分布...
文章目录 **一、Vue响应式原理** **二、proxy数据代理是什么** **三、计算属性和...
0基础小白 如何建立一个能正常访问的网站腾讯云服务器 前言 举例在浏览器地址栏...