欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > 1.22学习记录

1.22学习记录

2025/1/30 16:04:59 来源:https://blog.csdn.net/2401_88422349/article/details/145312238  浏览:    关键词:1.22学习记录

注:题目均来自isctf2024

misc

老八奇怪自拍照

在这里插入图片描述这题有个提示,就是数字521,猜测是lsb隐写,而521可能是rgb的位宽在这里插入图片描述果然有压缩包,save bin看一下,压缩包提示损坏,但是可以用修复压缩包选项修复并提取文件,得到了另一张图片在这里插入图片描述用随波逐流一把梭看一下在这里插入图片描述发现这一串,打开属性看发现是作者,查了一下,这题需要用到steghide工具,将文件和工具放在一个文件夹下输入

.\steghide.exe extract -sf isctf.jpg -p 1ScTf2024!

得到一个txt,打开就是flag

秘密

这题下载附件后是一个伪加密,用binwalk直接分离出来得到一张图片,结合题目名字是秘密,盲猜是oursecret加密,在010里面搜索在这里插入图片描述发现了password,更## 标题确定了,用oursecret解密,解出来txt文档,点进去发现文件大小与字数不符,猜测是零宽隐写,用工具查看在这里插入图片描述确实是

游园地2

这题是一个找地点的题目在这里插入图片描述根据图里面的山崎居酒屋搜索定位在这里插入图片描述确定在武汉市江汉区,在用百度搜索一下,可以确定是鸣笛1988商业街,再去网上搜索武汉的圣地巡礼,三色绘恋是最多的答案,但是提交了不对,最后去搜了b站,试了一下《恋爱绮谭》中的充能国安路,猜对了

神秘ping

下载附件后用010查看,并没有找到有用的信息在这里插入图片描述用随波逐流一把梭看一下,也没信息,再回到010上来仔细找一下在这里插入图片描述在后面发现了流量包文件,只不过是反着写的,用hex提取出来放进whireshark分析
提取过程中去找了大佬的脚本

with open("ping",'rb') as f:   #以二进制的形式读取文件内容content=f.read()  reverse_content=content[::-1]  
with open("p1ng.pcap",'wb') as b:  #以二进制写入b.write(reverse_content)

去查了一下有关信息

Ping是工作在 TCP/IP网络体系结构中应用层的一个服务命令, 其原理是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo回显 请求(Echo Request)报文,并根据回复的ICMP回显应答消息(Echo Reply),测试目的站是否可达并获取连接的丢包率和平均往返时间等有关状态信息

就过滤了icmp流量,去搜了一下,使用kali进行

tshark -r inversion.pcap -Y "icmp.type == 8" -T fields -e ip.ttl > output.txt

在这里插入图片描述这里的加密方式不是很清楚,就去看了一下大佬的博客

f = open('out.txt', "r")  
str = ''  
Binary = ''  
number = ''  
while 1:  num = f.readline()  if not num:  break  if num.rstrip() == '63':  # 去掉每行后面的空格  Binary = '00'  elif num.rstrip() == '64':  Binary = ''  elif num.rstrip() == '127':  Binary = '01'  elif num.rstrip() == '191':  Binary = '10'  elif num.rstrip() == '255':  Binary = '11'  str += Binary  
for i in range(0, len(str), 8):  number += chr(int(str[i:i + 8], 2))  
print(number)

在kali里面运行在这里插入图片描述

watermark

根据名字,不难猜出是水印有关的题目
下载附件后有三个文件,第一个txt文档,根据提示,使用在线工具在这里插入图片描述得到了key1,
第二张图片。使用watermark盲水印工具查看在这里插入图片描述第三个压缩包的密码就是key1和key2,解压后得到txt在里面搜索isctf在这里插入图片描述发现flag

pwn

Netcat

今天做个水题了,巩固nc的格式和使用方法在这里插入图片描述注意域名里的冒号要改为空格

crypto

我和小蓝鲨的秘密

题目:

from PIL import Image
from Crypto.Util.number import bytes_to_long, long_to_bytes
import numpy as npn = 29869349657224745144762606999
e = 65537original_image_path = "flag.jpg"
img = Image.open(original_image_path)
img = img.convert("RGB")img_array = np.array(img)
h, w, _ = img_array.shapeencrypted_array = np.zeros((h, w, 3), dtype=object)
for i in range(h):for j in range(w):r, g, b = int(img_array[i, j, 0]), int(img_array[i, j, 1]), int(img_array[i, j, 2])encrypted_array[i, j, 0] = pow(r, e, n)encrypted_array[i, j, 1] = pow(g, e, n)encrypted_array[i, j, 2] = pow(b, e, n)np.save("encrypted_image.npy", encrypted_array)
print("图片已加密并保存为 encrypted_image.npy")

这题根据读代码发现是一个对像素进行加密,但本质还是rsa,就用了我脚本库里的脚本了

from PIL import Image
from Crypto.Util.number import bytes_to_long, long_to_bytes
import numpy as np
import gmpy2
n = 29869349657224745144762606999
e = 65537
phi = (160216064374859 - 1) * (186431677583461 - 1)
d = gmpy2.invert(e, phi)
encrypted_array = np.load("encrypted_image.npy", allow_pickle=True)
decrypted_array = np.zeros_like(encrypted_array, dtype=np.uint8)
h, w, _ = encrypted_array.shapefor i in range(h):for j in range(w):decrypted_array[i, j, 0] = pow(int(encrypted_array[i, j, 0]), d, n)decrypted_array[i, j, 1] = pow(int(encrypted_array[i, j, 1]), d, n)decrypted_array[i, j, 2] = pow(int(encrypted_array[i, j, 2]), d, n)
decrypted_img = Image.fromarray(decrypted_array, "RGB")
decrypted_img.save("flag.jpg")
print("flag.jpg")

最后输出的图片就是flag
ISCTF{success_bluesharkinfo_gogogo!}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com