2025.03.wolvctf-wp.md
比赛时间 250322-250326
BenginnerREverseOverAndOver - Crypto直接丢进Cyberchef base64一直解密得到flag
EtTuCaesar - CryptoPicturePerfect - Forensics右键查看图片的属性后在详细信息中可以看到flag
DigginDir - Forensics解压后估计flag存在某个目录下的文本文件中,使用windows的findstr命令查找flag的开头wctf findstr /s "wctf" *
p0wn3d - Pwn题目代码如下
123456789101112131415161718192021222324252627282930313233343536#include <stdio.h>#include <string.h>#include <unistd.h>struct __attribute__((__packed__)) data { char buf[32]; int guard;} ...
洛谷题目-顺序结构-golang
B2002 Hello,World!分析print就行
代码12345678910package mainimport ( "fmt")func main() { fmt.Println("Hello,World!")}
B2025 输出字符菱形分析print5行就好
代码1234567891011121314package mainimport ( "fmt")func main() { fmt.Println(" *") fmt.Println(" ***") fmt.Println("*****") fmt.Println(" ***") fmt.Println(" *")}
信息搜集的艺术
资产搜集icp备案天眼查:https://www.tianyancha.com/ICP备案查询网:http://www.beianbeian.com/国家企业信用信息公示系统:http://www.gsxt.gov.cn/index.html爱站的备案查询:https://icp.aizhan.com备案历史:https://icplishi.com/
icpsearch工具地址https://github.com/A10ha/ICPSearch.git
工具用法查询单个域名/公司备案信息
ICPSearch.exe -d XXX.com
ICPSearch.exe -d XXX公司
子域名搜集人员搜集大多数人会习惯在社交网站上使用一个用户名,可利用此习惯对特定用户搜集其他社交平台信息
在国内若掌握其常用手机号码也可通过社交平台可能认识的人搜集
sherlock工具地址https://github.com/sherlock-project/sherlock
工具用法Sherlock test
2024-11-ISCTF-Crypto-wp
2024年11月的ISCTF Crypto方向wp
数论-快速幂运算
关于矩阵快速幂运算的笔记
rsa-smooth攻击
涉及知识点
光滑数:指能分解成小素数乘积的正整数
B-光滑数:若一个光滑数的最大小质数因子<=B,则称该光滑数为B-光滑数
费马小定理:
p-1光滑
由于p为质数,设a为整数且与p互质,则有
又因为p-1为因子互不相同的B-光滑数,所以
故p的倍数可以求出来,且我们有n=p*q。所以
Pollard’s p-1
由于我们只关注gcd的结果,不需要计算B!的值,我们只需要令B=1,2,3,…,计算出gcd结果即可
12345678910111213from gmpy2 import *a = 2n = 2while True: a = powmod(a, n, N) res = gcd(a-1, N) if res != 1 and res != N: q = N // res d = invert(e, (res-1)*(q-1)) m = powmod(c, d, N) print(m) break n += 1
p+1光滑
Williams’s p + 1
12345678 ...
2024.10.SICTF#Round4-wp
Misc
模型的秘密
使用字典爆破压缩包密码
搜索blend找到与3D文件格式有关的blender
发现题目附件中文件头被更改,修改之后使用blender打开查看flag
派森
根据音译,文件为py文件,修改后缀后发现代码也被音译,还原大致代码
123456from import xorfrom import *flag = "************"int = []for i in range(0,len(),4): int.append(xor(ord(flag[i]),ord(flag[i+2])))
差不多就是将flag每四个分为一组,第一位与第三位进行异或,第二位和第四位异或,密文中含有第三位和第四位。异或即可得到flag的原文。
签到
关注公众号即可
Crypto
SignBase
base64即可
Smooth
根据代码,n首先是小素数的乘积,之后+1,所以p-1是光滑的,使用smooth攻击
exp:
123456789101112131415161718192021from Crypto.Util.number import * ...
编码与古典密码
常见工具CyberChef地址:https://github.com/gchq/CyberChef
随波逐流 CTF编码工具地址:http://1o1o.xyz/
编码ascii码
ASCII(发音:,American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语,而其扩展版本延伸美国标准信息交换码则可以部分支持其他西欧语言,并等同于国际标准ISO/IEC 646。ASCII 由电报码发展而来。第一版标准发布于1963年 ,1967年经历了一次主要修订[5][6],最后一次更新则是在1986年,至今为止共定义了128个字符;其中33个字符无法显示(一些终端提供了扩展,使得这些字符可显示为诸如笑脸、扑克牌花式等8-bit符号),且这33个字符多数都已是陈废的控制字符。控制字符的用途主要是用来操控已经处理过的文字。在33个字符之外的是95个可显示的字符。用键盘敲下空白键所产生的空白字符也算1个可显示字符(显示为空白)。
ascii码对照表:https://blog.csd ...
office_tool安装visio
office tool安装visio
MathType安装与激活
MathType的安装与使用