其实也有点蒙圈,因为从没做过和时间戳有关的题。

打开网站,将系统密钥解密得到一串值,而自己的密钥解密是空的,既然说是要和系统匹配,就把解密得到的值以get方式送出去。

但是发现还是在自己的密钥也发生了变化,那么怎么办,一直刷新,把得到的系统密钥都解密,结果如下:

1550418454
1550418637
1550418661
1550418661
1550418755
1550418783
1550418808
1550418842
1550418875

发现是一直在增长,中间有两次可能手比较快,这就是时间戳吧,密钥随着时间有规律的变化的。

参考了大佬的wp,用脚本做的,于是模仿了一下脚本(无奈并没成功)。

python中有时间戳的函数:time.time(),需import time

Python time.time() 返回当前时间的时间戳(1970纪元后经过的浮点秒数)。

脚本如下:

#encoding:utf-8

import requests
import time t = str(int(time.time())+3)
url = "http://ctf5.shiyanbar.com/misc/keys/keys.php?key="+t
while 1:
r = requests.get(url)
#if 'flag' in r:
r.encoding='gbk'
print(r.text)
if "false" not in r.text:
break
time.sleep(1)

脚本没成功,一直都是false,怎么办呢,既然时间戳一直在变,那我们不妨拿到当前的时间戳,然后给他加上一个值 ,等待时间戳增长到这个地方,但是这样太不确定了,万一时间没把握好错过了怎么办,根据变化速度,要猜到时间戳,可以在时间戳的后三位数较小的时候用bp把三位数爆破一遍,总有一个能对上。

于是先抓好包送到repeater里,go一下(等于刷新一下时间戳),把系统密钥解密,然后url后面加上?key=解码后的值。

然后送到Intruder里,选中后三位进行数字爆破,总有一个有响应。

实验吧-杂项-MD5之守株待兔(时间戳&python时间戳函数time.time())的更多相关文章

  1. Python时间戳和日期的相互转换

    Python时间戳和日期的相互转换 (2014-03-17 11:24:35) 转载▼   分类: Python 当前时间戳:time.time() 当前日期:time.ctime() 1.Pytho ...

  2. Python时间戳的一些使用

    Python时间戳的一些使用 为什么写下这篇文档? 由于我本身是做Python爬虫的,在爬取网站的过程当中,会遇到形形色色的验证码,目前对于自己而言,可能简单的验证码可以进行自己识别 发现大多数的网站 ...

  3. python第六天 函数 python标准库实例大全

    今天学习第一模块的最后一课课程--函数: python的第一个函数: 1 def func1(): 2 print('第一个函数') 3 return 0 4 func1() 1 同时返回多种类型时, ...

  4. 深入理解python中函数传递参数是值传递还是引用传递

    深入理解python中函数传递参数是值传递还是引用传递 目前网络上大部分博客的结论都是这样的: Python不允许程序员选择采用传值还是传 引用.Python参数传递采用的肯定是"传对象引用 ...

  5. python的函数

    函数一词起源于数学,但是在编程中的函数和数学中的有很大不同.编程中的函数式组织好的,可重复使用的,用于实现单一功能或相关联功能的代码块. 我们在学习过程中已经使用过一些python内建的函数,如pri ...

  6. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  7. python split()函数

    Python split()函数 函数原型: split([char][, num])默认用空格分割,参数char为分割字符,num为分割次数,即分割成(num+1)个字符串 1.按某一个字符分割. ...

  8. Python数学函数

    1.Python数学函数 1.abs(x):取绝对值,内建函数 2.math.ceil(x):向上取整,在math模块中 3.cmp(x,y):如果 x < y ,返回-1:如果 x == y ...

  9. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

随机推荐

  1. 深入理解 Python 中的装饰器

    装饰器本质上也是函数,接收函数对象来作为参数,并在装饰器的内部来调用接受的函数对象完成相关的函数调用,也可以这样理解   ,为了方便在几个不同函数调用之前或者完成相关的统一操作,注意是完成统一的操作, ...

  2. 十八 Spring的JDBC模板:引入外部属性文件

    配置外部属性文件 配置文件里引入属性文件,两种方式 第一种: 第二种: 引入属性文件的值: 测试: <?xml version="1.0" encoding="UT ...

  3. Vue 中引入echarts

    安装依赖 npm install echarts -S 或者使用淘宝的镜像 npm install -g cnpm --registry=https://registry.npm.taobao.org ...

  4. 微信小程序(基础)

    文档官网:https://developers.weixin.qq.com/miniprogram https://developers.weixin.qq.com/miniprogram/dev/f ...

  5. Django 3.0中不推荐使用的及已经删除的功能

    3.0中不推荐使用的功能 django.utils.encoding.force_text()和smart_text()的别名被弃用.如果您的代码支持Python 2,smart_str()并且 fo ...

  6. 关于MySQL连接Navicat Premium 12失败的解决方法

    出现问题的原因:MySQL8.0之后更换了加密方式,而这种加密方式客户端不支持 解决:更改加密方式 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysq ...

  7. 084、Java数组之实现数组复制

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  8. linuxshell命令学习1——用户、文件和目录操作

    1.cmd(command) --help #查找这个命令相关的帮助 2.切换用户 2.1 sudo 让普通用户可以执行root命令,暂时切换到超级用户(root)用户模式 2.1.1 su  切换到 ...

  9. ThinkPad重大更新!5款创意设计PC齐发2日

    导读 日前,ThinkPad巨匠P系列专业移动工作站迎来全线更新,包括ThinkPad P1隐士2019.ThinkPad P53.ThinkPad P73.ThinkPad P43s.ThinkPa ...

  10. Codeforces 590 A:Median Smoothing

    A. Median Smoothing time limit per test 2 seconds memory limit per test 256 megabytes input standard ...