ctf
文章平均质量分 70
逃课的小学生
这个作者很懒,什么都没留下…
展开
-
ASISCTF
warm up题目代码如下图所示,我们会发现整个加密过程如下所示,先在flag后面加上p长度的随机字符,然后选择pow(s,i,p)的结果选择字符重新连接字符串实现加密#!/usr/bin/env python3from Crypto.Util.number import *import stringfrom secret import is_valid, flagdef random_str(l): rstr = '' for _ in range(l): rstr += s原创 2021-10-31 23:40:16 · 693 阅读 · 0 评论 -
PBCTF2021
PBCTF20211 MISC1.1 幽灵作家 Ghost Writer2 Crypto2.1 Alkaloid Stream2.2 Steroid Stream1 MISC1.1 幽灵作家 Ghost Writer【题目介绍】当我在写我的新畅销小说的开头时,一个鬼魂占据了我的键盘并开始输入旗帜!我试图完成这个故事,但不久之后电脑就死机了。幸运的是,我的数字录音机记录了这一切。你能恢复吗?我是个写手很慢的人,我的自定义键盘只有 27 个唯一键;“az”和“”(空格)。没有使用其他键。另外,我似乎原创 2021-10-17 19:44:46 · 812 阅读 · 0 评论 -
陇剑杯 2021 write up整理
竞赛 write up 收集和整理陇剑杯 2021 write up整理1 签到题1.12 JWT2.12.22.32.42.52.63 webshell3.13.23.33.43.53.63.74 日志分析4.14.24.35 流量分析5.15.25.36 内存分析6.16.27 简单日志分析7.17.27.38 SQL注入8.18.28.39 wifi9.110 IOS10.110.210.310.410.510.6 暂未发现write up10.710.811 加密的大文件11.1陇剑杯 202转载 2021-10-17 19:43:20 · 1590 阅读 · 2 评论 -
TCTF writeup
cryptocheckin题目如下图所示我们发现题目是要求算一个比较复杂的算数,且要求十秒内出结果。这里需要调数学库gmpy2计算,使用python来算会超时。解题过程如下from pwn import *import hashlibimport mathimport gmpy2io=remote("111.186.59.11",16256)io.recvuntil("(2^")tian=int(io.recvuntil(")")[:-1],10)io.recvuntil原创 2021-08-08 23:00:39 · 522 阅读 · 0 评论 -
Cybrics ctf
1.Signer阅读源码,同时nc一下我们会发现,该题是ECDSA签名。选项1是使用ECDSA对一个当前时间戳+salt进行签名,输出(R,S,HASH),。选项2是让我i们输入使用ECDSA对一个当前时间戳+get_flag进行签名的结果,输入正确获得flag。我们发现在签名过程中除了明文以外所用的参数都没有发生更改,所以我们可以使用k共享的方式对改签名进行攻击。其原理如下已知ECDSA的签名过程是,所以当我们有两组同参数的签名明文hash1,hash2和签名值(r,s1),(r,s2),那么,。原创 2021-08-08 22:39:05 · 643 阅读 · 0 评论 -
一些关于程序内存布局的问题
1.栈栈大小是有默认值的,当申请的临时变量太大或者函数调用深度过深会导致程序的栈空间不够用。这时我们需要修改栈大小1.Linux系统:ulimit -a #显示当前用户的栈大小ulimit -s 32768 #将当前用户的栈大小设置为32M bytes2. Windows (在编译过程中的设置):1). 选择 "Project->Setting".2). 选择 "Link".3. 选择 "Category"中的 "Output".3. 在 "Stack alloca原创 2020-07-28 17:43:13 · 326 阅读 · 0 评论 -
python 逆向浅析
1.编译过程简介python是一种解释性的语言,其原理是将代码块按照需求边运行边翻译给机器执行。python运行原理就是首先把python源文件解释成pyc二进制文件,然后再将pyc文件交由python虚拟机直接运行。但是有时候我们在运行的过程中并没有pyc文件。通常在默认编译的情况下,只有被调用库文件会生成pyc文件保证代码重用,主文件不会生成pyc文件。我们可以通过使用-m参数生成pyc文件2.python逆向在这里我们不详述pyc文件格式。由于在pyc文件中对字节码做了处理。我们使用库对p原创 2020-06-17 13:27:01 · 5076 阅读 · 0 评论 -
HSCTF-部分writeup
1.XORed根据题意,我们很容易发现这是一个异或加密,根据异或的运算法则,我们很容易解密,下面是我们的writeupKey1 = 0x5dcec311ab1a88ff66b69ef46d4aba1aee814fe00a4342055c146533Key13 = 0x9a13ea39f27a12000e083a860f1bd26e4a126e68965cc48bee3fa11bKey235 = 0x557ce6335808f3b812ce31c7230ddea9fb32bbaeaf8f0d4a原创 2020-06-07 17:57:13 · 1169 阅读 · 0 评论 -
defcon-ctf qualifer crypto writeup
ooo-flag-sharing阅读题目,我们发现这是一个密钥分享的密码系统。题目使用100*5的矩阵A对填充为5*1明文向量C(向量第一个数是明文)加密得到100*1的向量B。在系统中保存部分向量数据b1,b2……,并将剩下的向量数据b3,b4……分发。当我们和系统由于5个向量数据b1,b2,b3,b4,b5。我们就可以将A中对应向量行组合成一个新矩阵,并求得逆矩阵。我们将的第一行(s1,s2,s3,s4,s5)和密文向量(b1,b2,b3,b4,b5)相乘即为明文。...原创 2020-05-29 16:17:01 · 882 阅读 · 0 评论 -
2020-网鼎杯部分writup-3
1.simple根据下载题目提示,这可能是一个仿射编码,根据仿射密码求解import gmpy2miwen="kgws{m8u8cm65-ue9k-44k5-8361-we225m76eeww}"minwen=""k=8b=22for i in miwen: if ord(i)>=ord('a') and ord(i)<=ord('z'): miwenint=ord(i)-ord('a') for j in xrange(26):原创 2020-05-20 16:51:17 · 1840 阅读 · 1 评论 -
de1ctf 部分writeup解析
1.NLFSR:在ctf-wiki中我们可以找到一种对NLFDSR的攻击方法——https://wiki.x10sec.org/crypto/streamcipher/fsr/nfsr/。由于对多个LFSR组合时不能实现均匀混合吗,我们可以发现有的值和最后结果相近,我们可以据此对NLFSR中的部分LFSR进行爆破。最后我们可以对剩下的LFSR进行爆破。首先我们可以根据多个LFSR组合判断哪些LF...原创 2020-05-09 00:21:19 · 1867 阅读 · 1 评论 -
安恒月赛-dasctf 部分writeup
1.crypto-not rsa题目很简单,r是一个随机数,g=n+1,已知(pow(g,m,n*n)*pow(r,n,n*n))%(n*n)=c,即密文c,求解明文m。我们根据二项式定理易知可将pow(g,m,n*n)=pow(n+1,m,n*n)=pow(m*n+1,n*n)。由于n=p*q,所以我们知道phi(n*n)=p*(p-1)*q*(q-1)。我们对加密公式两侧同时加(p-1)*...原创 2020-04-26 16:56:28 · 39057 阅读 · 0 评论 -
虎符-ctf crypto writeup
1.GM由于题目中描述了这时一个GM密码系统,所以我们在网上查到FM密码系统破解方式https://blog.csdn.net/qq_26816591/article/details/82957481首先根据n,phin建立一元二次方程求解n的因子p,q,再带入到解密公式中求解import gmpy2phi=943345166174941322591941459524332131...原创 2020-04-23 14:58:38 · 1872 阅读 · 0 评论 -
红帽杯-ctf
1,cryptorelated:题目看起来是一个prng随机数生成器,实际上是在考察RSA,阅读源码我们找到了几个成立的等式:flag=state1+state2+state3state1^17modn=106072354000985866999943925848418065920006608161913150089479177736054763658845720565446214...原创 2019-11-13 17:52:57 · 1511 阅读 · 0 评论 -
广东省强网杯
1:美丽的回忆打开源码文件阅读我们发现其加密算法为CBC,加密模式是CBC模式,加密以8位字符长度为一块,如下图所示我们已知开头明文为“have a good time”和加密后的密文,即已知plaintext1,plaintext2和所有密文,于是我们可以得到ciphertext2=ciphertext1^plaintext2^key,那么key=ciphertext2^cipher...原创 2019-09-11 12:29:36 · 9611 阅读 · 0 评论 -
Pragyan CTF 2019
Cryptography1.Spoiler将pdf文件下载后发现pdf文件中有遗传字符串“3a2c3a35152538272c2d213e332e3c25383030373a15”,使用winhex打开pdf文件观察pdf文件二进制发现将00去掉剩下字符串“6a6f6e736e6f776973647261676f6e62796269727468”,我们发现两个字符串长度相同,尝试异...原创 2019-03-13 11:26:05 · 793 阅读 · 0 评论 -
ctf-BugkuCTF-crypto
1.滴答~滴很容易看出这是摩斯加密,直接解密即可,注意格式#encode=utf-8s='-... -.- -.-. - ..-. -- .. ... -.-. 'codebook = { 'A':".-",'B':"-...",'C':"-.-.",'D':"-..",'E':".",'F':"..-.",'G':"--.",'H':"原创 2018-07-23 21:42:24 · 658 阅读 · 0 评论 -
ctf-htctf-misc
1.GoogleCTF-Letter下载得到一个pdf文件,不过username和password被涂黑了,直接复制粘贴出来即可获得密码2.DDCTF (╯°□°)╯︵ ┻━┻看到一串较长的16进制字符串,首先想到的是在ascii上的移位加密,不过发现不需要移位,直接将16进制数通过ascii码转过来即可(对于大于128的16进制数求模)miwen="d4e8e1f4a0f7e1...原创 2018-07-24 13:58:11 · 589 阅读 · 0 评论 -
ctf-ichunqiu-crypto(rsa系列)
1.rsa256下载文件,解压得到4个文件,打开message后缀文件里面都是乱码。打开public.key,观察其格式明显是openssl的公钥文件,再根据题目提示可知,我们拿到的message后缀文件是由该公钥rsa加密得到的,用openssl命令获取public.key中的n和e,发现n并不是很大,可以用msieve分解得到p,q。这样我们就可已得到d,用n,d对密文解密,将得到的16进...原创 2018-07-24 18:41:07 · 8626 阅读 · 0 评论 -
ctf-ichunqiu-misc
1.ReCreators下载文件,解压可获得一个无后缀的文件,放入binwalk中检查时镜像文件,加载后可获得里面的MP4文件,放入weinhex中观察,发现一串16进制数,对其做2次hex解码,获得后面带等号的字符串,在做base解密,边做边观察便尝试,发现经过三次base32和两次base64后再次得到一串16进制数,再做hex解码后又获得后面带等号的字符串,再依次做base32解...原创 2018-07-25 16:58:56 · 842 阅读 · 0 评论 -
ctf-BugkuCTF-misc
1.这是一张单纯的图片使用winhex打开图片,在图片结尾发现一串&#开头的16进制串,直接对16进制字符hex解码即可2.隐写打开压缩包发现文件时坏的,放入tweakpng.exe中修复并加长高度,直接使用画图3D打开即可3.telnet解压发现是一个数据包,直接用wireshake打开,题目提到telnet,搜索telnet,按字节大小排序,阅读可直接看到答案4...原创 2018-08-03 19:24:50 · 1717 阅读 · 0 评论 -
实验吧-ctf-misc
1.欢迎来到地狱用winhex对第一个jpg文件补头,获取网址https://pan.baidu.com/s/1i49Jhlj,打开得到音乐文件,用Audacity打开获取摩斯电码,破解,获得密码KEYLETUSGO,打开word文档,查看隐藏字符获得image steganography提示,用网页版image steganography解密文档中的哈士奇图片,获得key{you are i...原创 2018-07-22 18:28:18 · 6298 阅读 · 2 评论 -
ctf-实验吧-crypto
1.trivial下载文件解压,得到一个py文件,里面又一个加密算法,这是一个类移位加密,加密算法的key和加密之后的密文已知,然后对每个明文在不同范围内进行移位加密,直接解密即可#!/usr/bin/env pythonimport sysalphaL = "abcdefghijklnmopqrstuvqxyz"alphaU = "ABCDEFGHIJKLMNOPQRSTUVQ...原创 2018-07-27 11:51:35 · 6801 阅读 · 1 评论 -
ctf-Ringzer0ctf
Cryptography:1.Some martian message使用rot13对字符串解密,即可获得答案2.File recovery拿到一个压缩包,打开发现一个RSA密钥文件和一个加密后存放于flag.enc的密文,用openssl找出rsa密钥文件的私钥,对密文解密即可得到答案def shuchu(mingwenstr): if mingwenstr[len...原创 2018-08-09 11:30:38 · 3691 阅读 · 0 评论 -
ctf-第一场网鼎杯
1.reverse-beijing放在kali下使用file命令发现这是一个32位的elf文件,直接运行获得一串乱码,放入ida中找到main函数进行反编译,发现里面有嵌套函数,打开嵌套函数,发现函数是根据外层参数做异或,猜测这里是将flag顺序打乱后与一个密钥做异或得到我们所看到的乱码,将做异或的两行数据取出再按外层函数调用参数选定的顺序排好即可(注意有部分参数不存在是因为他们的值为0而未被...原创 2018-09-04 18:01:46 · 2335 阅读 · 0 评论 -
ctf-夏令营-crypto
1.通过nc端口可以获得一个加密算法的五个参数n,e,d,c2,r。几次nc发现参数n,e,d不发生变化,而c2和r在不断的变化,所以猜测这是一个RSA加密,而c2和r都是密文,进行尝试,发现c2解出的明文与r^-1相乘可以获得一段有意义的明文,即为答案import gmpy2def shuchu(mingwenstr): if mingwenstr[len(mingwenstr)...原创 2018-09-02 16:24:33 · 1211 阅读 · 0 评论 -
ctf-网络安全技能挑战赛暨自主可控安全共测大赛-misc
1.warmup下载获得一张bmp图片,放入stegsolve中发现在red plane 0,green plane 0,blue plane 0下图片的开头有一些问题,使用data extract,在LSB下分别选择red 0,green 0,blue 0,在最前方发现Ook编码,Ook编码和brainfuck编码,在https://www.splitbrain.org/services/o...原创 2018-09-02 20:02:38 · 1524 阅读 · 0 评论 -
insomnihack teaser2019
beginner reservse对代码进行审计发现一个循环和对输入的比较,猜测这里是对输入的限制,通过在gdb中对0x55555555a991不断重复执行,检测rdi寄存器,获得flag:INS{y0ur_a_r3a1_h4rdc0r3_r3v3rs3r}...原创 2019-01-22 10:02:22 · 402 阅读 · 0 评论 -
MITRE CTF
1.Nyan打开链接是一个图片,隐约可以看到flag,将传输内容输入文件,直接查询即可得到flag2.gb100-1将文件放在kali之下会发现这时一个压缩文件,解压后会拿到一个较大的文本文件,文本文件中的内容是base64加密的字符串,使用base64解码又会得到压缩文件,反复解码,解压缩最终就会得到flag3.Rick Roll Do Not Listen下载文...原创 2019-02-24 12:15:12 · 666 阅读 · 0 评论 -
ctf-wechall-Crypto
1.Caesar I获得一段字符串,根据提示使用凯撒解密,即可获得唯一一句相对有意义的话QUICK BROWN FOX JUMPS OVER THE LAZY DOG OF CAESAR AND YOUR UNIQUE SOLUTION IS........。2.Transposition I获得一段字符串,根据提示使用置换加密,看到开头字符串“oWdnreuf.lY uoc”,猜测开...原创 2018-07-23 17:19:49 · 2346 阅读 · 0 评论