Jarvis OJ - class10 -Writeup

转载请注明出处:http://www.cnblogs.com/WangAoBo/p/7552266.html

题目:

Jarivs OJ的一道misc,记录这道题的Writeup主要是想记录解题的脚本

分析:

文件下载后是纯数据,binwalk发现为两段zlib压缩后的数据,其中第2段为default compression,这是信息1;strings查看字符串,发现IHDR, RGB, IDAT等和图像相关的字符,这是信息2

步骤:

  • 分理出class10中的压缩数据

    binwalk -e class10

  • 查看分离后的数据

    由信息1,F4289.zlib为default compression的zlib数据,对其进行解压缩(当然binwalk厉害得很,binwalk -e分离后的F4289已经是解压缩过得数据了)

  • 如上,解压后为29 × 29位的01字符串,再结合信息2,设想生成一张29*29的方形图片,像素点与字符串对应,始0和1对应的像素点分别为不同黑白两种颜色,代码如下

     #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    __Auther__ = 'M4x' from PIL import Image SIZE = 29
    img = Image.new("RGB", (SIZE, SIZE))
    with open("./F4289") as f:
    str = f.read()
    # print str i = 0
    for y in xrange(SIZE):
    for x in xrange(SIZE):
    if str[i] == '':
    img.putpixel([x, y], (0, 0, 0))
    else:
    img.putpixel([x, y], (255, 255, 255))
    i = i + 1
    # img.show()
    img.save("img.png")
  • 生成了一个二维码,扫码即可拿到flag

Jarvis OJ - class10 -Writeup的更多相关文章

  1. Jarvis OJ - DD-Hello -Writeup

    Jarvis OJ - DD-Hello -Writeup 转载请注明出处http://www.cnblogs.com/WangAoBo/p/7239216.html 题目: 分析: 第一次做这道题时 ...

  2. jarvis OJ部分writeup

    [XMAN]level 0 [XMAN]level 1 —— 简单shellcode利用 [XMAN]level 2 [XMAN]level 3 —— ret2libc尝试 [XMAN]level2& ...

  3. Jarvis OJ - [XMAN]level1 - Writeup

    Jarvis OJ - [XMAN]level1 - Writeup M4x原创,转载请表明出处http://www.cnblogs.com/WangAoBo/p/7594173.html 题目: 分 ...

  4. Jarvis OJ - 栈系列部分pwn - Writeup

    最近做了Jarvis OJ的一部分pwn题,收获颇丰,现在这里简单记录一下exp,分析过程和思路以后再补上 Tell Me Something 此题与level0类似,请参考level0的writeu ...

  5. Jarvis OJ - 软件密码破解-1 -Writeup

    Jarvis OJ - 软件密码破解-1 -Writeup 转载请标明出处http://www.cnblogs.com/WangAoBo/p/7243801.html 记录这道题主要是想记录一下动态调 ...

  6. Jarvis OJ - 爬楼梯 -Writeup

    Jarvis OJ - 爬楼梯 -Writeup 本来是想逆一下算法的,后来在学长的指导下发现可以直接修改关键函数,这个题做完有种四两拨千斤的感觉,记录在这里 转载请标明出处:http://www.c ...

  7. Jarvis OJ - Baby's Crack - Writeup

    Jarvis OJ - Baby's Crack - Writeup M4x原创,欢迎转载,转载请表明出处 这是我第一次用爆破的方法做reverse,值得记录一下 题目: 文件下载 分析: 下载后解压 ...

  8. Jarvis OJ部分逆向

    Jarvis OJ部分逆向题解 很久没有写博客了,前天上Jarvis OJ刷了几道逆向,保持了一下感觉.都是简单题目,写个writeup记录一下. easycrackme int __cdecl ma ...

  9. jarvis OJ WEB题目writeup

    0x00前言 发现一个很好的ctf平台,题目感觉很有趣,学习了一波并记录一下 https://www.jarvisoj.com 0x01 Port51 题目要求是用51端口去访问该网页,注意下,要用具 ...

随机推荐

  1. CVE-2020-1938/CNVD-2020-10487 幽灵猫漏洞

    漏洞描述(后期跟进漏洞分析) Tomcat是由Apache软件基金会属下Jakarta项目开发的Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和Java ...

  2. 洛谷P1880 [NOI1995]石子合并 纪中21日c组T4 2119. 【2016-12-30普及组模拟】环状石子归并

    洛谷P1880 石子合并 纪中2119. 环状石子归并 洛谷传送门 题目描述1 在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石 ...

  3. SP11470 TTM - To the moon[主席树标记永久化]

    SP11470 TTM - To the moon C l r d:区间 \([L,R]\) 中的数都加 d ,同时当前的时间戳加 1. Q l r:查询当前时间戳区间 \([L,R]\) 中所有数的 ...

  4. ImportError: DLL load failed with error code -1073741795

    Win7,python3.6,pip安装tensorflow之后报错: >>> import tensorflow Traceback (most recent call last) ...

  5. 安装canvas

    本方法仅适用用于window系统 安装canvas需要当前工作环境拥有python环境,且只能适用python2.7版本,v3.x.x版本会造成系统报错 1.在管理员权限下 使用choco insta ...

  6. SqlServer 常用语句方法

    批量生成删表语句 select 'drop table '+b.name+'.'+a.name+';' from sys.tables a left join sys.schemas b on a.s ...

  7. 使用 Express 脚手架

    安装: npm install -g express-generator 创建项目: express myapp 安装依赖 install dependencies: > npm install ...

  8. Tomcat指定特定的java

    Tomcat指定特定的java 制作人:全心全意 安装好Tomcat后,进入bin目录,找到setclasspath.bat或setclasspath.sh文件,在文件前加入以下内容 Windows: ...

  9. Certificate Request Processor: Invalid provider specified. 0x80090013 (-2146893805 NTE_BAD_PROVIDER)

    通过INF文件创建CSR时遇到Certificate Request Processor: Invalid provider specified. 0x80090013 (-2146893805 NT ...

  10. 在 Node 中使用 formidable 处理文件上传

    具体使用方式参照官方文档:https://www.npmjs.com/package/formidable 第一:安装: # npm install --save formidable yarn ad ...