Excaliflag

  一张图片,winhex打开没什么发现,分值不高,应该属于常见的图片隐写题目。如果对于图片的格式有详细的了解,应该很容易就能够知道了属于最低有效位(LSB)隐写,下面是通过photoshop来处理得到的flag.

签到题

  Base64、栅栏、凯撒;可以直接通过在线网站解密了,在这里使用python来求解(纯属练习练习下代码)

import base64

# base64解密
def b64Decode():
s="Z2dRQGdRMWZxaDBvaHRqcHRfc3d7Z2ZoZ3MjfQ=="
temp=str(base64.b64decode(s),encoding = "utf-8")
return temp # 栅栏密码
def zhalan(s):
#确定可能的栏数
s_len = len(s)
field=[]
for i in range(2,s_len):
if(s_len%i==0):
field.append(i)
mingwen=""
for j in field:
k=int(s_len/j)
for a in range(j):
for m in range(k):
mingwen=mingwen+s[a]
a=a+j
# 分割字符串
n=0
list=[]
for i in range(int(len(mingwen)/s_len)):
list.append(mingwen[n:n+s_len])
n=n+s_len
return list # 凯撒密码
# coding:utf-8
def kaisa(args):
for j in range(26):
for i in range(len(args)):
if(ord(args[i])<65 or ord(args[i])>122):
print(args[i],end="")
elif(ord(args[i])>90 and ord(args[i])<97):
print(args[i],end="")
else:
temp=ord(args[i])+j
if(ord(args[i])>=97):
if(temp>122):
print(chr(temp-26),end="")
else:
print(chr(temp),end="")
else:
if(temp>90):
print(chr(temp-26),end="")
else:
print(chr(temp),end="")
print() #编程能力和算法都太菜了,写的有些复杂了
if __name__ == '__main__':
s = b64Decode()
args=zhalan(s)
print(args)
for i in args:
kaisa(i)

Avatar

就知道下outguess

outguess -r 1.jpg out

得到:We should blow up the bridge at midnight

What-is-this

得到两张图片通过StegSolve异或得到:

Training-Stegano-1

easycap

追踪TCP流得到:FLAG:385b87afc8671dee07550290d16a8071

Get-the-key.txt

通过file命令查看了下文件类型:Linux rev 1.0 ext2 filesystem data (mounted or unclean), UUID=0b92a753-7ec9-4b20-8c0b-79c1fa140869

通过mout挂载:

mount -o loop /root/forensic100 /root/mnt/misc

更具标题需要查找key.txt

grep -r key.txt

# 匹配到二进制文件 1

1: gzip compressed data, was "key.txt", last modified: Wed Oct 1 06:00:52 2014, from Unix, original size 30

gunzip < 1

# SECCON{@]NL7n+-s75FrET]vU=7Z}

embarrass

直接Ctrl+F查找一波就有了

肥宅快乐题

题目描述:

真正的快乐的游戏题,打通就给flag哦,与肥宅快乐水搭配更佳。 Flash游戏,通关后,注意与NPC的对话哦;)

下载是一个swf文件, 百度得知:SWF是一种基于矢量的Flash动画文件, SWF格式文件广泛用于创建吸引人的应用程序,它们包含丰富的视频、声音、图形和动画。

打通关游戏或者通过potplayer定位到57帧

小小的PDF

binwalk分析下发现存在三张图片

直接通过foremost工具提取就得到flag再第三张图片里面

Test-flag-please-ignore

十六进制

glance-50

把每一帧提取出来拼接就可以了

# 图片拼接
import PIL.Image as Image
import os, sys
Temp=Image.open('Frame0.jpg')
w,h=Temp.size
toImage = Image.new('RGB', (w*201, h))
for y in range(201):
fname = "Frame%d.jpg" %y
fromImage = Image.open(fname)
toImage.paste(fromImage, (y * w, 0))
toImage.save('mage.jpg')

4-2

古典替换密码,通过 https://quipqiup.com/ 网站跑一下得到:

In cryptography a substitution cipher is a ?ethod of encoding by which units of plaintext are replaced with ciphertext If you know the way of encoding u will get the flag which is classical-cipher_is_not_security_hs

misc1

d4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd

hex编码,解码后不是可见字符的范围,然后模128之后,得到flag

s='d4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd'
flag=""
for i in range(len(s)/2):
flag+=chr(int(s[:2],16)%128)
s=s[2:]
print flag

hit-the-core

通过strings命令,发现一个疑似字符串

cvqAeqacLtqazEigwiXobxrCrtuiTzahfFreqc{bnjrKwgk83kgd43j85ePgb_e_rwqr7fvbmHjklo3tews_hmkogooyf0vbnk0ii87Drfgh_n kiwutfb0ghk9ro987k5tfb_hjiouo087ptfcv}

然后可以得出规律:

cvqAeqacLtqazEigwiXobxrCrtuiTzahfFreqc{bnjrKwgk83kgd43j85ePgb_e_rwqr7fvbmHjklo3tews_hmkogooyf0vbnk0ii87Drfgh_n kiwutfb0ghk9ro987k5tfb_hjiouo087ptfcv}

那么通过python每个四个字符提取就得到了最后的flag:

s='cvqAeqacLtqazEigwiXobxrCrtuiTzahfFreqc{bnjrKwgk83kgd43j85ePgb_e_rwqr7fvbmHjklo3tews_hmkogooyf0vbnk0ii87Drfgh_n kiwutfb0ghk9ro987k5tfb_hjiouo087ptfcv}'
flag=''
for i in range(3,len(s),5):
flag+=s[i]
print(flag)

Cephalopod

搜索关键字符串发现一个flag.png文件,导出来即得到了flag:

pure_color

借助工具StegSolve:

(之后尝试不用工具,自己写个脚本试试看)

2-1

png文件,发现文件头不对,修改后依旧无法打开,binwalk也没发现什么东西。然后发现宽度被修改为了0,那么很明显通过CRC爆破出宽度了

import struct
import binascii
import os m = open("1.png","rb").read()
for i in range(1024):
c = m[12:16] + struct.pack('>i', i) + m[20:29]
crc = binascii.crc32(c) & 0xffffffff
if crc == 0x932f8a6b:
print(hex(i))

这里直接贴的师傅的代码:https://blog.csdn.net/zz_Caleb/article/details/89927673

(之后再好好研究下关于CRC的问题)

János-the-Ripper

爆破即可

神奇的Modbus

搜索字符串得到的是:sctf{Easy_Mdbus},但是得改成sctf{Easy_Modbus}提交

2017_Dating_in_Singapore

题目描述

01081522291516170310172431-050607132027262728-0102030209162330-02091623020310090910172423-02010814222930-0605041118252627-0203040310172431-0102030108152229151617-04050604111825181920-0108152229303124171003-261912052028211407-04051213192625

脑洞······

攻防世界 MISC篇的更多相关文章

  1. 攻防世界misc——János-the-Ripper

    攻防世界misc---János-the-Ripper 附件题目,题目的文件名为:misc100. 下载后,拖入linux中,binwalk发现有隐藏文件.用"strings  János- ...

  2. 攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup

    攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup 题目介绍 题目考点 隐写术 摩斯密码 Writeup 下载附件是PDF文件打开,研究一 ...

  3. 攻防世界 Misc 新手练习区 ext3 bugku Writeup

    攻防世界 Misc 新手练习区 ext3 bugku Writeup 题目介绍 题目考点 WinHex工具的使用 linux磁盘挂载mount命令 Writeup 下载附件拖进winhex分析一下,查 ...

  4. 攻防世界 Misc 新手练习区 gif Writeup

    攻防世界 Misc 新手练习区 gif Writeup 题目介绍 题目考点 仔细联想 字符转换 Writeup 下载附件并打开 104张黑白图 发现是一堆黑色和白色的图片,按某种规律排列,猜想flag ...

  5. 攻防世界 Misc 新手练习区 坚持60s Writeup

    攻防世界 Misc 新手练习区 坚持60s Writeup 题目介绍 题目考点 java反编译 jd-gui 的使用 Writeup 下载附件并打开 kali执行命令 java -jar 9dc125 ...

  6. 攻防世界 Misc 新手练习区 give_you_flag Writeup

    攻防世界 Misc 新手练习区 give_you_flag Writeup 题目介绍 题目考点 gif图片分离 细心的P图 二维码解码 Writeup 下载附件打开,发现是一张gif图片,打开看了一下 ...

  7. 攻防世界 Misc 新手练习区 如来十三掌 Writeup

    攻防世界 Misc 新手练习区 如来十三掌 Writeup 题目介绍 题目考点 佛曰加密.base64.Rot13等加密方法的了解 Writeup 下载并打开附件 联想到佛曰加密,复制内容到 佛曰加密 ...

  8. 攻防世界MISC进阶之签到题

    攻防世界MISC进阶之签到题    第一步:分析    第二步:实操    第三步:答案第一步:分析难度系数:1星题目来源: SSCTF-2017题目描述:SSCTF线上选举美男大赛开始了,泰迪拿着他 ...

  9. 攻防世界-MISC:glance-50

    这是攻防世界MISC高手进阶区的题目,题目如下: 点击下载附件一,得到一张GIF动图如下 找个网站给分离一下,将gif分离为图片,共201张,然后拼接在一起即可得到flag 所以这道题的flag如下: ...

随机推荐

  1. nucleus plus代码学习

    int.S: ;************************************************************************ ;* ;* FUNCTION ;* ; ...

  2. C#排列组合类,写彩票算法的朋友们可以来看一看

    public class PermutationAndCombination<T>    {        /// <summary>        /// 交换两个变量    ...

  3. delphi xe 正则表达式

    Delphi XE 中自带了正则表达式的处理类TRegEx,包含在单元 RegularExpressions,使用时要uses 一下.      TRegEx 是一个结构 ,使用时不用释放.他内部还是 ...

  4. JS基础入门篇(二十七)—BOM

    虽然上次写到js基础篇(二十四),这次直接写到(二十七).是为了提醒自己中间有几篇没写.特此说明一下啊. 1.window.open() 使用a标签呢,点击一下a标签页面才会跳转,有时候我们需要做的操 ...

  5. thinkcmf5 pc切换手机

    1.在simplewind\cmf\common.php 里找到“获取当前主题名”添加 if(cmf_is_mobile()){ $theme = config('cmf_mobile_default ...

  6. poi提取docx中的文字和图片

    package com.fry.poiDemo.dao; import java.io.File; import java.io.FileInputStream; import java.io.Fil ...

  7. shell 读取配置文件的用法

    https://blog.csdn.net/qq_36684665/article/details/81134179 亲测有用!

  8. LCD中6800和8080的区别【转】

    8080是通过“读使能(RE)”和“写使能(WE)”两条控制线进行读写操作6800是通过“总使能(E)”和“读写选择(W/R)”两条控制线进行 很多MCU或者LCD模块外部接口一般采用并行方式,并行接 ...

  9. java 重新学习 (一)

    一 垃圾回收特点 1.垃圾回收的工作目标是回收物对象的内存空间,这些内存空间都是jvm堆内存里的空间,垃圾回收器值回收内存资源,对他的物理资源:数据库连接,磁盘I/O等资源则无能为力 2.更快进行垃圾 ...

  10. java中接口的简单运用&java中的一些异常(运用myeclipse)

    package test;//创建一个名为test的包 public class A4paper implements Paper { public String getSize(){ return& ...