re学习(18)[ACTF新生赛2020]rome1(Z3库+window远程调试)

news2024/11/29 10:56:31

参考视频:

Jamiexu793的个人空间-Jamiexu793个人主页-哔哩哔哩视频

代码分析:

其主要内容在两个while循环中(从定义中可知flag位16个字符)。

看第二个循环,可知是比较result和经过第一个循环得到的v1比较(就是flag经过第一个循环后变成了result(v12))并且可以从开头看出v12=Qsw3sj_lz4_Ujw@l。

再看第一个循环,发现是凯撒密码(看了老半天),大写字母平移12位,小写字母平移8位,其他字符不变。

 

 

import z3
key="Qsw3sj_lz4_Ujw@l"

solver=z3.Solver()

varNames=[]
for i in key:
    o=ord(i)
    if o>64 and o<=90:
        x=z3.Int('v%d'%o)
        solver.add(x>64)
        solver.add(x<=90)
        solver.add(((x-51)%26+65)==o)
        varNames.append(x)
    elif o>96 and o<=122:
        x=z3.Int('v%d'%o)
        solver.add(x>96)
        solver.add(x<=122)
        solver.add(((x-79)%26+97)==o)
        varNames.append(x)
    else:
        x=z3.Int('v%d'%o)
        solver.add(x==o)
        varNames.append(x)
if solver.check()==z3.sat:
    model=solver.model()
    for i in varNames:
        print(chr(model[i].as_long()),end='')
#Cae3ar_th4_Gre@t
#ACTF{Cae3ar_th4_Gre@t}
ACTF{Cae3ar_th4_Gre@t}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/763477.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VXLAN在Linux上的实践

在笔记本上使用VMWare安装两台Ubunutu 22.04虚拟机&#xff0c;这两台虚拟机都桥接在一个物理网卡上&#xff0c;IP地址分别为192.168.31.113和192.168.31.131。 HOST1上的VXLAN配置如下&#xff1a; # ip link add vxlan0 type vxlan id 42 dstport 4789 remote 192.168.31.1…

什么是核心层?汇聚层?接入层

什么是核心层?汇聚层?接入层-百度经验 核心层&#xff1a; 核心层的功能主要是实现骨干网络之间的优化传输&#xff0c;骨干层设计任务的重点通常是冗余能力、可靠性和高速的传输。核心层一直被认为是所有流量的最终承受者和汇聚者&#xff0c;所以对核心层的设计以及网络设备…

STM32(HAL库)驱动GY30光照传感器通过串口进行打印

目录 1、简介 2、CubeMX初始化配置 2.1 基础配置 2.1.1 SYS配置 2.1.2 RCC配置 2.2 软件IIC引脚配置 2.3 串口外设配置 2.4 项目生成 3、KEIL端程序整合 3.1 串口重映射 3.2 GY30驱动添加 3.3 主函数代 3.4 效果展示 1、简介 本文通过STM32F103C8T6单片机通过HAL库方…

gma 2.0.0a3 (2023.07.17) 更新日志

安装 gma 2.0.0a3 pip install gma2.0.0a3新增 1、为矢量要素&#xff08;Feature&#xff09;添加 【Difference】&#xff08;差集&#xff09;方法   取第一个矢量要素与第二个矢量要素的几何差集。  2、为矢量要素&#xff08;Feature&#xff09;添加几种几何形状测试…

springCloud通过两种方式配置热更新

该热更新实际就是通过改动nacos官网里面的配置管理的妹纸内容实现 定义一个config包&#xff0c;在该包下面复制该代码 package cn.itcast.user.config; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.spring…

如何实现以图搜图

一、前言 在许多搜索引擎中&#xff0c;都内置了以图搜图的功能。以图搜图功能&#xff0c;可以极大简化搜索工作。今天要做的就是实现一个以图搜图引擎。 我们先来讨论一下以图搜图的难点&#xff0c;首当其冲的就是如何对比图片的相似度&#xff1f;怎么样的图片才叫相似&a…

每天一道C语言编程:排队买票

题目描述 有M个小孩到公园玩&#xff0c;门票是1元。其中N个小孩带的钱为1元&#xff0c;K个小孩带的钱为2元。售票员没有零钱&#xff0c;问这些小孩共有多少种排队方法&#xff0c;使得售票员总能找得开零钱。注意&#xff1a;两个拿一元零钱的小孩&#xff0c;他们的位置互…

Windows 10快速启动怎么关闭?

有的用户电脑在开启快速启动后&#xff0c;发现电脑的开机速度确实变快了&#xff0c;但有的用户开启快速启动后开机速度反而变慢了&#xff0c;所以想关闭快速启动。那电脑快速启动怎么关闭&#xff1f; 快速启动与休眠 快速启动与电脑的休眠功能相似&#xff0c;但又有所不同…

获取网络包的硬件时间戳

转自&#xff1a;如何获取网络包的硬件时间戳_飞行的精灵的博客-CSDN博客 在一些应用中我们需要获取网路报文进出MAC的精准的时间戳。相比较于软件时间戳&#xff0c;硬件时间戳排除了系统软件引起的延时和抖动。如下图所示意&#xff1a; 下面我们使用北京飞灵科技有限公司开…

在命令行执行命令后出现 Permission denied 的问题解决

解决在项目目录安装一个有 “bin” 配置的依赖包后&#xff0c;执行 “bin” 命令&#xff0c;出现了 Permission denied 的问题。 问题 比如有这样一个包 json2playwright &#xff0c;它的 package.json 中 “bin” 是&#xff1a; "bin": {"pince": &q…

如何让Vue项目本地运行的时候,同时支持http://localhost和http://192.168.X.X访问?

方法1&#xff1a;在package.json的"scripts":→ "dev":末尾追加 --host 0.0.0.0 方法2&#xff1a;将config\index.js的"dev":→ "host":修改为0.0.0.0

攻不下dfs不参加比赛(十八)

标题 为什么练dfs题目为什么练dfs 相信学过数据结构的朋友都知道dfs(深度优先搜索)是里面相当重要的一种搜索算法,可能直接说大家感受不到有条件的大家可以去看看一些算法比赛。这些比赛中每一届或多或少都会牵扯到dfs,可能提到dfs大家都知道但是我们为了避免眼高手低有的东…

CANoe-Symbol Mapping介绍

在CANoe的Environment菜单下有一个模块叫:Symbol Mapping。 打开后的界面为: 它的作用是: 在mapping对话框内,你可以映射系统变量、环境变量、信号、通信对象的值或分布式对象的成员以及系统变量的命名空间。当测量过程中源变量的值发生变化时,目标变量的值会自动设置。 你…

JDK安装

JDK安装 1、Windows环境下JDK的安装 1.1 下载 到 Java 的官网下载 JDK 安装包&#xff0c;下载地址&#xff1a; http://www.oracle.com/technetwork/java/javase/downloads/index.html 选择一个适合自己的 JDK 版本下载即可。 1.2 安装 通过双击软件并且点击下一步进行…

Fiddler抓包使用简介

目录 Fiddler简介 请求抓包 抓取PC端HTTPS请求 抓取移动端请求 请求查看 发送请求 Mock接口 断点调试 弱网模拟 请求重放 修改HOSTS 总结&#xff1a; Fiddler简介 Fiddler是一款免费的Windows平台的抓包工具&#xff0c;功能强大&#xff0c;使用简单。Fiddler抓…

【SCI征稿】老牌期刊2023年上涨质量高!中科院2/1区(TOP),国人发文友好!

您有一个评职称弯道超车的机会&#xff1f; 因为本期小编要推荐一本中科院2/1区&#xff08;TOP&#xff09;期刊&#xff0c;期刊质量不论是评职晋升求职毕业都是首选的好刊&#xff01;究竟怎么回事&#xff1f;且看下文&#xff1a; 期刊简介&#xff1a; 影响因子&#…

传感器信息系统中的节能收集(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

消息队列——spring和springboot整合rabbitmq

目录 spring整合rabbitmq——生产者 rabbitmq配置文件信息 倒入生产者工程的相关代码 简单工作模式 spring整合rabbitmq——消费者 spring整合rabbitmq——配置详解 SpringBoot整合RabbitMQ——生产者 SpringBoot整合RabbitMQ——消费者 spring整合rabbitmq——生产者 使…

分布式应用之存储(Ceph)

分布式应用之存储&#xff08;Ceph) 一、数据存储类型 存储类型说明典型代表块存储一对一&#xff0c;只能被一个主机挂载使用数据以块为单位进行存储硬盘文件存储一对多&#xff0c;能同时被多个主机挂载/传输使用&#xff0c;数据以文件的形式存储&#xff08;元数据和实际…

Appium+python自动化(十)- 元素定位秘籍助你打通任督二脉 - 上卷(超详解)

1、 常用定位方法讲解 对象定位是自动化测试中很关键的一步&#xff0c;也可以说是最关键的一步&#xff0c;毕竟你对象都没定位那么你想操作也不行。所以本章节的知识宏哥希望小伙伴们多动手去操作和实战&#xff0c;不要仅仅只是书本上的知识&#xff0c;毕竟这个我只能够举例…