每天CTF小练--ctfshow新手村

news2024/12/28 19:32:53

easy_base

密文:=0XezFWZfNXafRjNlNXYit3dvh2cmR3Y

等号在前面,直接倒序后解码

ctfshow{base64_is_easy}

代码解:

s = '=0XezFWZfNXafRjNlNXYit3dvh2cmR3Y'
print(s[::-1])   #翻转字符串
print(s[::-1])   #翻转字符串
print(s[::-1])   #翻转字符串
#Y3Rmc2hvd3tiYXNlNjRfaXNfZWFzeX0=
#ctfshow{base64_is_easy}

天知地知

电话号码加密
好不容易要到了妹子手机号,却是加密的,怎么办,兄弟们很急,在线等!听说妹子是佛山的 加密后的手机号:

(+86)981935301754

格式ctfshow{妹子手机号} 提交的时候,不用+86, * 不要给机主打电话,更不要骚扰机主,不然我报警啦*

分析发现,电话是12位的,而且是9开头,那么国内绝大部分手机号是1开头,所以用10相减就是1了
然后12位,所以减去的数要比他大,所以被减数就是13位,第一位是1,后面12位是0,得到1000000000000

print("ctfshow{"+str(1000000000000-981935301754)+"}")
#ctfshow{18064698246}

凯撒密码:
题目:

from string import ascii_lowercase
from random import shuffle,randint

table=list(ascii_lowercase)
shuffle(table)
flag='ctfshow{xxx}'
key=randint(0,25)
text=[]
for i in flag:
    if i in table:
        text.append(table[(table.index(i)+key)%26])
    else:
        text.append(i)
print(table)
print(text)
# ['h', 'g', 'u', 'p', 'o', 'v', 'n', 'b', 'i', 'j', 'y', 'k', 'a', 'z', 'w', 'q', 't', 'l', 'r', 'd', 'x', 'e', 's', 'm', 'c', 'f']
# ['r', 'y', 'd', 't', 'x', 'c', 'i', '{', 'y', 'x', '1', 't', '_', 'u', 't', '_', 'z', '1', 'd', 'd', 'a', 'q', 'h', 'y', '_', 'r', '4', 'q', 't', 'n', 'a', '!', '!', '}']
wp:主要考查代码能力

代码解释:

from string import ascii_lowercase
from random import shuffle,randint
#1.前面的引入模块,不用管



table=list(ascii_lowercase)
"""
2.在这行代码中,table = list(ascii_lowercase) 的作用是将 ascii_lowercase 字符串转换为一个字符列表,并赋值给变量 table;(将字符串转化为列表)
ascii_lowercase 是一个字符串,它包含了所有的小写英文字母,按顺序排列,即 'abcdefghijklmnopqrstuvwxyz'。通过使用 list() 函数,这个字符串被转换成一个列表,其中每个元素都是字符串中的一个字符。因此,table 会变成一个包含26个小写英文字母的列表。
"""


shuffle(table)
# 3.打乱这个列表,作为替换表

flag='ctfshow{xxx}'
key=randint(0,25)
"""
4.在这行代码中,key = randint(0, 25) 是用于生成一个随机整数key,其值在0到25之间(包含0和25)。这个随机整数在接下来的加密过程中将作为密钥使用。
"""



text=[]
for i in flag:
    if i in table:
        text.append(table[(table.index(i)+key)%26])
        """
        5.因为英文字母表只有26个字母,所以我们需要确保加密后的索引仍然落在字母表的范围内。使用模运算(%)可以确保结果是一个0到25之间的数,无论table.index(i) + key的和有多大。这样做是为了防止索引超出字母表的边界,并实现一个循环移位的效果。
        """
        
    else:
        text.append(i)
        #6.添加i到text列表(数组)中
print(table)
print(text)
# ['h', 'g', 'u', 'p', 'o', 'v', 'n', 'b', 'i', 'j', 'y', 'k', 'a', 'z', 'w', 'q', 't', 'l', 'r', 'd', 'x', 'e', 's', 'm', 'c', 'f']
# ['r', 'y', 'd', 't', 'x', 'c', 'i', '{', 'y', 'x', '1', 't', '_', 'u', 't', '_', 'z', '1', 'd', 'd', 'a', 'q', 'h', 'y', '_', 'r', '4', 'q', 't', 'n', 'a', '!', '!', '}']

运用for循环爆破key,其他一切正常,看似难,实则简单

table=['h', 'g', 'u', 'p', 'o', 'v', 'n', 'b', 'i', 'j', 'y', 'k', 'a', 'z', 'w', 'q', 't', 'l', 'r', 'd', 'x', 'e', 's', 'm', 'c', 'f']
text=['r', 'y', 'd', 't', 'x', 'c', 'i', '{', 'y', 'x', '1', 't', '_', 'u', 't', '_', 'z', '1', 'd', 'd', 'a', 'q', 'h', 'y', '_', 'r', '4', 'q', 't', 'n', 'a', '!', '!', '}']
# 爆破秘钥
for key in range(0,26):
    flag=''
    for i in text:
        if i in table:
            flag+=(table[(table.index(i)+key)%26])
        else:
            flag+=i
    print(str(flag))
# ctfshow{th1s_is_d1ffrent_c4esar!!}

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

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

相关文章

运放应用2 - 同相放大电路

1. 前置知识 同相放大电路存在 负反馈电路 ,工作在线性区,可以利用 虚短 概念来分析电路。 注:运放的 虚断 特性是一直存在的,虚短 特性则需要运放工作在 线性区 有关运放的基础知识,可以参考我的另外一篇文章&#x…

【深度学习】目标检测,Faster-RCNN算法训练,使用mmdetection训练

文章目录 资料环境数据测试 资料 https://mmdetection.readthedocs.io/zh-cn/latest/user_guides/config.html 环境 Dockerfile ARG PYTORCH"1.9.0" ARG CUDA"11.1" ARG CUDNN"8"FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}…

掘金AI商战宝典-系统班:2024掘金AIGC课程(30节视频课)

课程下载:掘金AI商战宝典-系统班:2024掘金AIGC课程(30节视频课)-课程网盘链接提取码下载.txt资源-CSDN文库 更多资源下载:关注我。 课程目录 1-第一讲学会向Al提问:万能提问公式_1.mp4 2-第二讲用AI写视频脚本_1.mp4 3-第三讲…

教科书般的充电桩平台多租户技术架构设计,建议收藏!-慧哥充电桩开源平台

慧哥充电桩开源平台V2.5.2_----- SpringCloud 汽车 电动自行车 云快充1.5、云快充1.6 https://liwenhui.blog.csdn.net/article/details/134773779?spm1001.2014.3001.5502 一、多租户的概念 多租户本质上是一种软件的技术架构,它最核心的特征是多个租户可以共享一…

Mamba v2诞生:1 儒(Transformers)释(SSD)道(Mamba)本是一家?!

大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调或者LLM背后的基础模型新阅读。而最新科技(Mamba,xLSTM,KAN)则提…

基于MinGW64 GCC编译Windows平台上的 libuvc

安装cmake 打开cmake官网 https://cmake.org/download/,下载安装包: 安装时选择将cmake加到系统环境变量里。安装完成后在新的CMD命令窗口执行cmake --version可看到输出: D:\>cmake --version cmake version 3.29.3 CMake suite mainta…

Hotcoin精彩亮相Consensus 2024 Austin,探索行业风向标

5 月 31 日,由CoinDesk主办的“Consensus 2024”大会在德克萨斯州的奥斯汀市正式落下帷幕。作为全球规模最大、最具影响力的加密货币、区块链、Web3盛会,本次Consensus 2024 Austin吸引来自 100 多个国家/地区的 15,000 多名与会者、6,800 家公司、850 多…

LeetCode-2246. 相邻字符不同的最长路径【树 深度优先搜索 图 拓扑排序 数组 字符串】

LeetCode-2246. 相邻字符不同的最长路径【树 深度优先搜索 图 拓扑排序 数组 字符串】 题目描述:解题思路一:找路径背诵版:解题思路三: 题目描述: 给你一棵 树(即一个连通、无向、无环图)&…

python中实现队列功能

【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 python中实现队列功能 选择题 以下代码最后一次输出的结果是? from collections import deque queue deque() queue.append(1) queue.append(2) queue.append(3) print(【显示】…

Nginx 配置:gzip动态压缩、静态压缩

动态压缩 动态压缩开启的现象 Nginx配置 http {# 启用 gzip 压缩gzip on;# 设置 gzip 压缩级别,范围是1-9,数字越大压缩率越高但CPU消耗也越大gzip_comp_level 5;# 设置最低压缩的文件大小(大于1KB的文件才进行压缩)gzip_min_le…

【Linux进程篇】Linux进程管理应用——虚假的shell脚本

W...Y的主页 😊 代码仓库分享💕 前言:我们已经了解了进程的工作原理,并且学习了进程创建、进程终止、进程等待以及进程程序替换。为了更好的巩固这些知识,我们可以创建一个简易的shell命令行。 目录 做一个简易的s…

【DevOps】网站安全案例分析:真实事件中的经验与教训

目录 一、常见的网站安全事故案例 1. Equifax 数据泄露事件(2017年) 2. WannaCry 勒索软件攻击事件(2017年) 3. GitHub DDoS 攻击事件(2018年) 二、网站安全事件的一般分析方法 1、事件背景调查 2、…

09-spring的bean创建流程(一)

文章目录 spring中bean的创建流程finishBeanFactoryInitialization(beanFactory)beanFactory.preInstantiateSingletons();getMergedLocalBeanDefinition(beanName);流程实现FactoryBean接口,里面的对象实例化过程 spring中bean的创建流程 finishBeanFactoryInitialization(be…

14-ShardingSphere的分布式主键实现

1 ShardingSphere自动生成键 MySQL自增键、Oracle自增序列等。分片场景下问题就复杂了,不能依靠单实例上的自增键来实现不同数据节点之间的全局唯一主键,分布式主键的需求应运而生。ShardingSphere 作为一款优秀分库分表开源软件,同样提供分…

Ubuntu18.04安装pwntools报错解决方案

报错1:ModuleNotFoundError: No module named ‘setuptools_rust’ 报错信息显示ModuleNotFoundError: No module named setuptools_rust,如下图所示 解决方案:pip install setuptools_rust 报错2:pip版本低 解决方案&#xff…

【Test 49 】OSI 七层模型初识、网络传输的流程、IP地址和MAC地址! 面试高频考点!

文章目录 1. OSI七层模型2. TCP/IP五层(或四层)模型3. 网络传输基本流程 🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧&#…

MyBatis中的接口代理机制及其使用

1. MyBatis中的接口代理机制及其使用 文章目录 1. MyBatis中的接口代理机制及其使用2. 实操2.1 准备工作2.2 insert 增加操作2.3 delete 删除操作2.4 update 修改操作2.5 select 查询一条记录操作2.6 select 查询多条记录操作 3. 总结:4. 最后: MyBatis …

五、数据源池化技术实现

学这一节的时候重新梳理了DataSource、DriverManager、Driver、DriverProxy、Connection之间的关系,如下图 在整体流程中,这一块就是通过配置文件配置,在解析配置文件的时候就创建对应的数据源封装到Environment中,在执行sql的时…

使用Qt对word文档进行读写

目录 开发环境原理使用的QT库搭建开发环境准备word模板测试用例结果Gitee地址 开发环境 vs2022 Qt 5.9.1 msvc2017_x64,在文章最后提供了源码。 原理 Qt对于word文档的操作都是在书签位置进行插入文本、图片或表格的操作。 使用的QT库 除了基本的gui、core、…

3072. 将元素分配到两个数组中 II

题目 给你一个下标从 1 开始、长度为 n 的整数数组 nums 。 现定义函数 greaterCount ,使得 greaterCount(arr, val) 返回数组 arr 中 严格大于 val 的元素数量。 你需要使用 n 次操作,将 nums 的所有元素分配到两个数组 arr1 和 arr2 中。在第一次操…