img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

        ret.append(row[nv:])
return matrix(ret)

def find_ortho_zz(*vecs):
assert len(set(len(v) for v in vecs)) == 1
L = block_matrix(ZZ, [[matrix(vecs).T, matrix.identity(len(vecs[0]))]])
print(“LLL”, L.dimensions())
nv = len(vecs)
L[:, :nv] *= p
L = L.LLL()
ret = []
for row in L:
if row[:nv] == 0:
ret.append(row[nv:])
return matrix(ret)

Mhe = find_ortho_fp(h, e)
assert Mhe * h % p == 0
assert Mhe * e % p == 0
Lx = find_ortho_zz(*Mhe[: m - n]).T
Me = find_ortho_fp(e)
assert Me * e % p == 0
alpha = (Me * matrix(F, Lx)).solve_right(Me * h)
xa = Lx * alpha
s = (xa - h)[0] / e[0]
print(long_to_bytes(int(s)))

b’flag{66402e72844bf3c67a2bf7f7cab9a5fb}’



> 
> **`FLAG:66402e72844bf3c67a2bf7f7cab9a5fb`**
> 
> 
> 


## 3.数据分析:


## 数据分析(1)


### 数据分析1-1:


1.请填写正确答案  
 通过流量分析,可知流量包中采用的不安全协议是什么?同时请找出使用该不安全协议所用的用户名及密码。(最终提交的结果为md5(不安全协议缩写小写+用户名+密码)。如不安全协议为http,用户名为abc,密码为123,则md5(http+abc+123,)提交48346e4b413ad63aac2d7e528f1da1e6)


**知识点:首先分析一下发现很多`FTP`协议,通过FTP状态码可以判断`230`为登入成功**


**查看数据流发现账号密码`admin/adin123`**


**可以得到答案`(ftp+admin+admin123)`的`md5`值加密,第一次提交没加+所以没对,细心看题。**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d1a860f364f545c39e944d04c61ba045.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/5ba6f5dc570f4ed7bfa2d41417ebdfe7.png)



1xx - 肯定的初步答复
这些状态代码指示一项操作已经成功开始,但客户端希望在继续操作新命令前得到另一个答复。
• 110 重新启动标记答复。
• 120 服务已就绪,在 nnn 分钟后开始。
• 125 数据连接已打开,正在开始传输。
• 150 文件状态正常,准备打开数据连接。
2xx - 肯定的完成答复
一项操作已经成功完成。客户端可以执行新命令。
• 200 命令确定。
• 202 未执行命令,站点上的命令过多。
• 211 系统状态,或系统帮助答复。
• 212 目录状态。
• 213 文件状态。
• 214 帮助消息。
• 215 NAME 系统类型,其中,NAME 是 Assigned Numbers 文档中所列的正式系统名称。
• 220 服务就绪,可以执行新用户的请求。
• 221 服务关闭控制连接。如果适当,请注销。
• 225 数据连接打开,没有进行中的传输。
• 226 关闭数据连接。请求的文件操作已成功(例如,传输文件或放弃文件)。
• 227 进入被动模式 (h1,h2,h3,h4,p1,p2)。
• 230 用户已登录,继续进行。
• 250 请求的文件操作正确,已完成。
• 257 已创建“PATHNAME”。
3xx - 肯定的中间答复
该命令已成功,但服务器需要更多来自客户端的信息以完成对请求的处理。
• 331 用户名正确,需要密码。
• 332 需要登录帐户。
• 350 请求的文件操作正在等待进一步的信息。
4xx - 瞬态否定的完成答复
该命令不成功,但错误是暂时的。如果客户端重试命令,可能会执行成功。
• 421 服务不可用,正在关闭控制连接。如果服务确定它必须关闭,将向任何命令发送这一应答。
• 425 无法打开数据连接。
• 426 Connection closed; transfer aborted.
• 450 未执行请求的文件操作。文件不可用(例如,文件繁忙)。
• 451 请求的操作异常终止:正在处理本地错误。
• 452 未执行请求的操作。系统存储空间不够。
5xx - 永久性否定的完成答复
该命令不成功,错误是永久性的。如果客户端重试命令,将再次出现同样的错误。
• 500 语法错误,命令无法识别。这可能包括诸如命令行太长之类的错误。
• 501 在参数中有语法错误。
• 502 未执行命令。
• 503 错误的命令序列。
• 504 未执行该参数的命令。
• 530 未登录。
• 532 存储文件需要帐户。
• 550 未执行请求的操作。文件不可用(例如,未找到文件,没有访问权限)。
• 551 请求的操作异常终止:未知的页面类型。
• 552 请求的文件操作异常终止:超出存储分配(对于当前目录或数据集)。
• 553 未执行请求的操作。不允许的文件名。
常见的 FTP 状态代码及其原因
• 150 - FTP 使用两个端口:21 用于发送命令,20 用于发送数据。状态代码 150 表示服务器准备在端口 20 上打开新连接,发送一些数据。
• 226 - 命令在端口 20 上打开数据连接以执行操作,如传输文件。该操作成功完成,数据连接已关闭。
• 230 - 客户端发送正确的密码后,显示该状态代码。它表示用户已成功登录。
• 331 - 客户端发送用户名后,显示该状态代码。无论所提供的用户名是否为系统中的有效帐户,都将显示该状态代码。
• 426 - 命令打开数据连接以执行操作,但该操作已被取消,数据连接已关闭。
• 530 - 该状态代码表示用户无法登录,因为用户名和密码组合无效。如果使用某个用户帐户登录,可能键入错误的用户名或密码,也可能选择只允许匿名访问。如果使用匿名帐户登录,IIS 的配置可能拒绝匿名访问。
• 550 - 命令未被执行,因为指定的文件不可用。例如,要 GET 的文件并不存在,或试图将文件 PUT 到您没有写入权限的目录。


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d7e27ebfaf454e959993cfedaa819f3c.png)



> 
> **`FLAG:458e8dbe703531b99e3381853b3134ef`**
> 
> 
> 


### 数据分析1-2:


2.通过协议分析,基于不安全协议,可发现流量包中共计传输多少份文件,其中相对特殊的文件,其文件名是什么?本题按结果给分。最终提交的结果为md5(数量+文件名)。如数量为 1,文件名(不包含后缀)为 flag,则提交结果为 md5(1+flag),提交:13fdbdc6aa7c5412c598e30f5bdbfdc3


**筛选`ftp-data` 发现传了`100`个图片和一个`key.txt`但是这里加起来是`101`这个需要注意!!**


**知识点:`FTP-data`是指在文件传输协议`(FTP)`中使用的一种数据连接,它用于在客户端和服务器之间传输文件数据。`FTP-data`通常使用端口`20`进行数据传输,而控制连接通常使用端口`21`。**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/b16826f980704a18ab7b3ffdb2fdc3cb.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d9986685b82d4efbaeaa768e0576b9f2.png)


**所以是`101+key`的`md5`值。**



> 
> **`FLAG:717c0890a66bcf9524e87fdccb7d2bf4`**
> 
> 
> 


### 数据分析1-3:


3.该程序员喜欢猫,连采用隐写算法都和猫相关,请基于传输的文件提取出最终传输的数据。注意:数据中包含 flag 。最终提交结果为 flag 字符串。如找到的数据flag{e984b95caaf7240eacf4fa44ea596b9e},则提交结果即为大括号内的字符串。


**流量包使用`foremost`拆解到`100`个`png` 使用脚本进行拼接**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/96e2111a77ec4b7297ee10e88b2a1fc6.png)  
 **拼图脚本如下:**



import cv2,os
import numpy as np
ims = []
for i in os.listdir(‘./png’):
ims.append(cv2.imread(‘png/’+i))
im = np.concatenate(ims)
cv2.imwrite(‘0.png’,im)


**又根据`key.txt`的`A`和`B`(猫脸脚本)得到脚本如下:**



import cv2
import numpy as np
import matplotlib.pyplot as plt
def arnold_decode(image,a, b):
decode_image = np.zeros(shape=image.shape)
h, w = image.shape[0], image.shape[1]
N = h
for ori_x in range(h):
for ori_y in range(w):
new_x = ((a*b+1)*ori_x + (-b)* ori_y)% N
new_y = ((-a)*ori_x + ori_y) % N
decode_image[new_x, new_y, :] = image[ori_x, ori_y, :]
return decode_image
a = 0x6f6c53
b = 0x729e
im = cv2.imread(‘1.png’)
im = arnold_decode(im,b,a)
cv2.imwrite(‘1.png’,im)
plt.imshow(im)
plt.show()


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/39ac42d90c6944c795f5e76a1cb5e863.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/0e7e0e70b59e4fdaa4992ddc0195909d.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/1228e592d3bf484aabc043dcea6cab15.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/4aca8f568e944efc9e800092a7e786ff.png)


**`Base`三次得到`flag`,`zsteg`也可以。**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/1f85a9847de842daabf1d960622f7c8b.png)



> 
> **`FLAG:3f3c1b49504191faf6576866f99806cd`**
> 
> 
> 


## 数据分析(3)


### 数据分析3-1:


1.攻击者 通过爆破后台得到的用户名 和 密码是什么?  
 【 评测标准】本题按结果给分。最终提交结果为用户名与密码的 32位 md5(小写)值。例如用户名是 root,密码是 123456,则md5(root:123456),提交:972720049e7cc6a60c5052e426bb0a6d。


**导出`http`数据流发现一个`post.php` 对其进行爆破,查看`tcp`数据流,或者使用过滤规则过滤`POST`**



> 
> `http.request.method=="POST"`
> 
> 
> 


**得到账号密码 根据题目意思 所以是:`admin:admin@QWEzxc`的`md5`值**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/584f7f3b384b45c7ae7b7261c5da5f77.png)


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/2fda317ef9df4163a8f3744a6fbaf46a.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/832b6884b7e14d39841461ccf8a201a3.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/90e0c9b3503248fba4ffe23efe678119.png)



> 
> **`FLAG:95e1da8517497ee29e716a2835375eeb`**
> 
> 
> 


### 数据分析3-2:


2.数据库中有一条关键数据(thekey)被攻击者获取,请找出此数据内容 ?  
 【 评测标准】本题按结果给分。最终提交的结果为 thekey 数据内容。


**直接`ctrl+F` 搜`thekey` 发现在注入流量里面`tcp307`条数据流解码发现`thekey`**


**随机点几个附近的包都没发现 最终在`tcp`数据流 `308`发现 `thekey`值**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a30da2ee2d284cf8803a3ed099480247.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/8a21821e86b34f81a92adc8f9dfe8b23.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/8e45306f039a48868b29ac222445e2e2.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/404e3c86f8da4006ad2c93c952249c1d.png)



> 
> **`FLAG:D124759C42CDF90C`**
> 
> 
> 


### 数据分析3-3:


3.攻击者获得的数据库用户名和密码是什么?  
 【 评测标准】本题按结果给分。最终提交结果为用户名与密码的 32位 md5(小写)值。例如用户名是 root,密码是 123456,则md5(root:123456),提交:972720049e7cc6a60c5052e426bb0a6d


**筛选`http`协议最好一条`tcp`数据流`Base64`解码得到账号密码:`webuser:1q2w3e4r5t6y`**


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/f41ec2c8cbcf40b7917799bb7cfad8b3.png)


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7ea6d0a7d1b04b158560bcb4fec0fa84.png)


![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/cd2832509a664d79846011cf47080884.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/deb6a3d1d2984273b49b137c8daf5489.png)



> 


![img](https://img-blog.csdnimg.cn/img_convert/3517f7f5c0b11f63723d8be0f62caea1.png)
![img](https://img-blog.csdnimg.cn/img_convert/b32806151874661b974f9c268e25c6ab.png)

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**



[外链图片转存中...(img-52uaQIeU-1715518118439)]
[外链图片转存中...(img-JWzcWOHf-1715518118439)]

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐