首页 > 其他分享 >day3

day3

时间:2023-07-12 15:33:07浏览次数:31  
标签:cnt 00340 day3 00342 flag num print

一、简单的图片

1.得到png,zsteg分析发现特殊文本

image

2.zsteg导出 zsteg -a IM.png -E b1,bgr,lsb,xy > 1.txt,发现字符在xsctf之间,猜测分别对应的就是0、1、2、3、4,转换一下

image

3.猜测是5进制数,转化一下十进制再转化为字符串,写个脚本

点击查看代码
import math

ls = ['00402', '00413', '00342', '00403', '00443', '00332', '00441', '00143', '00432', '00340', '00342', '00424', '00401', '00340', '00230', '00420', '00340', '00144', '00414', '00342', '00403', '00201', '00340', '00414', '00342', '00430', '00431', '00401', '00424', '00142', '01000']
for i in ls:
    num = int(i)
    cnt = 0
    result = 0
    # print(num)
    while num != 0:
        #print(num % 10)
        result += (num % 10) * math.pow(5,cnt)
        cnt += 1
        num = int(num / 10)
    print(int(result),end=' ')

4.010转十六进制,得到flag

image

二、test.pyc

1.pyc文件,在线反编译后显示部分未成功,flag3()是缺少的,使用uncompyle6进行反编译,得到大约完整的

image

2.得到完整的编码,=cWbihGfyMzNllzZ0cjZzMWN5cTM4YjYygTOycmNycWNyYmM1Ujf,猜测是base64,但是是逆序,脚本转化解码,得到新的编码

~552f25g26g2982b681795c3f74g9e732|hbmg

3.没有明显的特点,猜测是凯撒,但是需要先进行逆序

gmbh|237e9g47f3c597186b2892g62g52f255~

4.在key为1的时候发现flag关键词

image

5.不完全是,对比一下十六进制值可发现|和{差为1,那就将后面的字符值向前移一位,脚本跑一下

点击查看代码
str = "|237d9f47e3b597186a2892f62f52e255~"
num1 = len(str)
for i in str:
    if i >="a" and i <= "z":
        print(hex(ord(i)),end=' ')
    else:
        print(hex((ord(i) - 1)),end=' ')
		

6.得到flag

flag{126d8f36e2b486075a1781f51f41e144}

标签:cnt,00340,day3,00342,flag,num,print
From: https://www.cnblogs.com/120211P/p/17546859.html

相关文章

  • week3 day3
    今天学习java俩小时 pta打算待会敲一会headfirstjava这本书真的很好看 是唯一一本我能自我安静看下去的教育类书今天学习要点:你的java程序应该从高层的设计开始你通常会在创建新的类时写出三种东西:伪代码测试码真实码 伪代码应该要描述要做什么事情而不是如何......
  • 【安全学习之路】Day32
    后面的明天再学......
  • python基础day39 生产者消费者模型和线程相关
    如何查看进程的id号进程都有几个属性:进程名、进程id号(pid--->processid)每个进程都有一个唯一的id号,通过这个id号就能找到这个进程importosimporttimedeftask():print("task中的子进程号:",os.getpid())print("主进程中的进程号:",os.getppid())#parent......
  • 【安全学习之路】Day30
    ......
  • python基础day38 并发编程
    进程概念进程、线程都是操作系统中的基本概念,也就是说进程和线程都是操作系统层面的东西,专业术语表达就是进程和线程都是由操作系统来调度的,而不是由我们程序员自己来操控的。在操作系统这门课里面,进程和线程是操作系统的概念,协程不是操作系统中的概念,而是我们程序员层面的协程......
  • python基础day37 基于TCP、UDP协议的套接字编程和粘包现象
    基于TCP协议的套接字编程(socket编程)什么是Socket?我们经常把Socket翻译为套接字,Socket是在应用层和传输层之间的一个抽象层,它把TCO/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信  套接字的分类:AF_UNIX:用在局域网中AF_INET:用在互联网中客户......
  • python基础day36 软件开发架构
    软件开发架构网络编程:我们要基于网络来编写一款B/S或者C/S架构的软件,比如ATM,我们现在写的都是单机版本的,没有接入网络的系统,别人是无法访问到的目的:以ATM为例,现在我们想把之前写的ATM系统变成基于网络传输的,别人如果想用,就必须把客户端下载到本地电脑上,以登录为例,用户把用户名......
  • [刷题记录Day3]Leetcode链表专题
    #ListNodedefinitionpublicclassListNode{//结点的值intval;//下一个结点ListNodenext;//节点的构造函数(无参)publicListNode(){}//节点的构造函数(有一个参数)publicListNode(intval){this.val=val;......
  • 第二阶段知识点总结【day32-day35】
    第二阶段知识点总结day321.面向过程和面向对象优缺点,使用场景2.如何定义类,写出一个例子,定义类的过程发生了那些事,如何产生对象,产生的对象有何特点3.如何定制对象自己的属性4.属性的查找顺序是怎样的day331.分别写出一个绑定方法,非绑定方法的例子2.如何隐藏属性,写一个例子,......
  • 第二阶段知识点总结解释版【day32-day35】
    知识点总结day321.面向过程和面向对象优缺点,使用场景面向过程和面向对象都是编程的两种不同的范式。面向过程的优点:1.执行速度比面向对象更快。2.简单易懂,且不需要大量的规则或语法。3.它适合在小型程序中使用。面向过程的缺点:1.没有高度的拓展性。2.系统难以......