首页 > 其他分享 >stream wp 及近期学习

stream wp 及近期学习

时间:2023-02-22 22:15:03浏览次数:26  
标签:00 stream text 学习 result key wp 256

stream wp 及近期学习

在做stream题目的时候 顺便学的东西

首先stream.exe文件,看图标 考虑python解包

 

 

解包后尝试寻找stream文件,并在PYZ-00.pyz_extracted文件中找到pyc文件,随便点开一个用hex打开找到前十六个字节 magic number

``` 6F 0D 0D 0A 00 00 00 00 00 00 00 00 00 00 00 00 ```

将stream改后缀为stream.pyc 并将magic number 添加进去

 

 

 

 

 

 

 

 

 

 

 

 

 

然后尝试uncompyle6反编译stream.pyc文件,发现不行(uncompyle6 只能编译版本低的python 这是用python3.10写的,无法编译,后来发现可以在线。。。)

反编译后得出

import base64
​
def gen(key):
    s = list(range(256))
    j = 0
    for i in range(256):
        j = (j + s[i] + ord(key[i % len(key)])) % 256
        tmp = s[i]
        s[i] = s[j]
        s[j] = tmp
    i = j = 0
    data = []
    for _ in range(50):
        i = (i + 1) % 256
        j = (j + s[i]) % 256
        tmp = s[i]
        s[i] = s[j]
        s[j] = tmp
        data.append(s[(s[i] + s[j]) % 256])
    return data
​
​
def encrypt(text, key):
    result = ''
    for c, k in zip(text, gen(key)):
        result += chr(ord(c) ^ k)
    result = base64.b64encode(result.encode()).decode()
    return result
​
text = input('Flag: ')
key = 'As_we_do_as_you_know'
enc = encrypt(text, key)
if enc == 'wr3ClVcSw7nCmMOcHcKgacOtMkvDjxZ6asKWw4nChMK8IsK7KMOOasOrdgbDlx3DqcKqwr0hw701Ly57w63CtcOl':
    print('yes!')
    return None
None('try again...')

 

base64 加rc4(在线解也可)解得

 

标签:00,stream,text,学习,result,key,wp,256
From: https://www.cnblogs.com/fallrain/p/17146126.html

相关文章

  • ssm学习笔记23001-mybatis-config.xml配置详解
    mybatis-config.xml是mybatis的配置文件,具体的一些标签和属性如下:需要注意的是1、配置项是有顺序要求的2、简写的配置有要求:例如类型别名,如果要简写,需要省掉alias属性,m......
  • ssm学习笔记23001-spring+mybatis修改删除和查询
    spring+mybatis修改删除和查询1、在UserMapper接口类中,创建接口在UserMapper接口类中,创建接口packagecom.wjw.mybatis.mapper;importcom.wjw.mybatis.pojo.User;......
  • 努力学习第二天
    学习了javaweb里的增packageceshi;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;public......
  • app学习1
    1.APP应用架构app和web使用的后端服务器是相同的,前后端都使用HTTP协议进行交互。(部分APP使用socket进行交互)。APP是C/S结构,web浏览器是B/S结构;APP前后端交互的数据格式......
  • 学习记录(2.22)
    今天总共学习了h,其中有1.5h是在课上学习了网络的相关知识,为考研的专业课打下了一点点基础。之后用了1h的时间对蓝桥杯的题目进行了一些练习,并讲练习内容上传至github......
  • 学习进度
    今天完成了对android的学习,用了1小时的时间。我了解了在一个大的环境布局下,又有View,TextView等等的多种布局。TextView是一个文本标签,用来描写文本的,当然,也可以在代码里面......
  • 【Vue Router】019-动态路由 和 学习总结
    1.19动态路由1.19.1概述添加路由到你的路由上通常是通过​​routes​​​,但是在某些情况下,你可能想在应用程序已经运行的时候添加或删除路由。具有可扩展接口(如​​Vue......
  • Python 学习04 文件操作
    40、接收用户输入......
  • Docker入门学习
    一、安装Docker(Linux)#1、yum包更新到最新yumupdate#2、安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的yuminstall......
  • 今日学习总结-03-开始学习安卓-安装Genymotion虚拟机
    今天先安装一个Genymotion虚拟机,日后用起来更加方便首先去官网下载:点第二个有vbox的版本然后是简单的安装步骤 注册并登录进入主页面  新建一个虚拟设备  ......