MENU

ctf

JarvisOJ Misc 部分题解

上帝之音

这是一段神奇的声音,可是上帝之音似乎和无字天书一样,是我们这些凡人无法理解的,你能以上帝的角度,理解这段WAV的含义么?
Hint1: 你们做音频题都不喜欢看时域图?
Hint2: 在数据传输过程中,我们往往会使用一种自带时钟的编码以减少误码率
godwave.wav.26b6f50dfb87d00b338b58924acdbea1

Audacity 打开就是一段稀奇古怪的音频信号,仔细观察,发现不同段落其幅值有明显差异,应该是调幅了,MATLAB 导入 wav 文件看数据,发现大概是以 64 个点为周期,那么取幅值高的为 1,幅值低的为 0。

Read More

RSA 私钥恢复和最优非对称加密填充

看着大神们的 WP 做了一下 Jarvis OJ 上的 God Like RSA 这一题,WP 上写的都很简略,我来多说两句废话吧。

God Like RSA

既然你逼我到绝境,那就休怪我不客气了,代表上帝挑战你~
godlikeRSA.rar.bf1fcce7bdf9a1bb999df240de98ecd9

压缩包里有一个密文,一个部分缺失的私钥,一个公钥,读公钥可知 N 是 4096 位的,分解无望,肯定要从私钥着手。

Google 搜索 rsa private ctf 可以看到 Plaid CTF 2014 中的一道题和本题很类似,也是修复私钥,找到几篇 WP:

从第一篇里可以找到一个 Python 脚本。

Read More

64位 Kali 编译 32 位文件

之前一直在用 64 位的 Kali 虚拟机,最近开始学习 PWN,很多题目的可执行文件都是 32 位的,在 64 位下无法直接运行,后来就装了一个 32 位的 Kali,结果出现了各种稀奇古怪的毛病,同时也懒得浪费硬盘,就继续折腾 64 位的了。

Read More

百度杯 CTF 比赛第一场 writeup

每周都会有三道题,第一周的都是 WEB,可能之后的也都是 WEB吧。

YeserCMS

打开下发的题目链接,看那老土的界面感觉很像 CMSEASY,扫一下目录看到 robots.txt,根目录下有一个 flag.php,其实这个信息题目已经告诉了。。。这题可能是要文件包含或者读取一下。

Read More

HackingLab 综合关 writeup

渗透测试第一期

注意:该题目模拟真实环境,故具有排他性,请选择合适的时间段完成该题。 你只有一部可用手机,手机号码会在需要手机号码的页面中给出。
通关地址
修复
现在用户不用排他了,只要保证在一个session里即可。

注册要绑定一个手机号,用来接收验证码,而 key 在管理员那里,必须要重置管理员的密码,这就需要改管理员绑定的手机,直接在绑定手机那里抓包,username 改成 admin 即可绑定成功,重置密码登录即可。

Read More

HackingLab 上传、解密关 writeup

上传关

三道题用 burp 抓包,该后缀名可破。。。好像有点太简单了?

解密关

以管理员身份登录系统

以管理员身份登录即可获取通关密码(重置即可,无需登录)
通关地址
补充说明:假设除了admin用户,其它用户的邮箱都可被登录获取重置密码的链接。

这题还有点难,仔细研究一下吧。

随便用 admin1 账号重置密码两次,看到两个加密后的 sukey 值,md5 解密一下。

Read More

利用 pwntools 编写 socket 脚本

今天遇到了一道 ppc 的题目,并不难,连接服务器端口后,计算返回的一个算式,发送答案,连续答对十次拿到 flag。

这一操作一般是利用 Python 的 socket 编程实现,后来看到有人说用 pwntools 也可以做,就尝试了一下。

先放正常的 socket 编程脚本。

Read More

从一道 CTF 题学到的几个 Python 字符串处理 tricks

汪神的 Javis OJ 上了几道新题目,其中有一道 CFF 2016 的 “德军密码” 做了挺长时间的。原理也不难,就是一个异或加密,但是写脚本的时候学到了一点 Python 字符串处理的一些小技巧。

题目解析

已知将一个flag以一种加密形式为使用密钥进行加密,使用密钥WELCOMETOCFF加密后密文为
000000000000000000000000000000000000000000000000000101110000110001000000101000000001
请分析出flag。Flag为12位大写字母

密文很明显是二进制码,而一个字节 8 位,12位大写字母应该是 96 位的密文才对,而给出的密文只有 84 位,可能是做过处理,补个 0 看看吧。将密钥与补位后的密文异或一下就可以拿到 flag 了,还是挺简单的。

Read More

HackingLab 脚本关 writeup

HackingLab脚本关部分题目还是有点难度的。

0x01 key又又找不到了

小明这次哭了,key又找不到了!!! key啊,你究竟藏到了哪里,为什么我看到的页面上都没有啊!!!!!!
通关地址

点这个链接,跳转到了另一个没有key的页面,抓包看看,注意截断response包,拿到key。

<script>window.location="./no_key_is_here_forever.php"; </script>
key is : yougotit_script_now

Read More