https://cybrics.net
ctf-cybrics
- Warmup
- Zakukozh
- Oldman Reverse
- Tone
- Sender (Network, Baby, 10 pts)
- ProCTF
- Bitkoff Bank
Warmup 【ctf-cybrics】
![ctf-cybrics](https://img.it610.com/image/info8/39f459475c194167a949da8272dcf84e.jpg)
文章图片
下载该链接获取html即可:
![ctf-cybrics](https://img.it610.com/image/info8/333aac24460a457f9530c14ae4b3edbc.jpg)
文章图片
![ctf-cybrics](https://img.it610.com/image/info8/4365370d3716425397776d1ced6de864.png)
文章图片
Zakukozh
![ctf-cybrics](https://img.it610.com/image/info8/e4f418ec9df64cf188852e8cd78680eb.jpg)
文章图片
Zakukozh.bin:
![ctf-cybrics](https://img.it610.com/image/info8/390b29f449824cde9275cff9692c4628.jpg)
文章图片
题目说明文件是一个图像文件,但是被仿射密码加密。
![ctf-cybrics](https://img.it610.com/image/info8/dfe183d14fde41059ba3625dec028ae4.jpg)
文章图片
目前常见的图片文件有:jpg、png、bmp、gif。根据magic num来判断原文件格式。
jpg魔数:ff d8 ff e0,对比可知不是jpg文件。
![ctf-cybrics](https://img.it610.com/image/info8/53beca043ad2428e9d70188a5bed3e3e.jpg)
文章图片
png魔数: 89 50 4E 47 0D 0A 1A 0A,对比可知可能为png文件。
![ctf-cybrics](https://img.it610.com/image/info8/ebcae8c0e0f043f39f70a8c6684c6863.jpg)
文章图片
![ctf-cybrics](https://img.it610.com/image/info8/930928af6a4f45d6bbed3fa771229c83.jpg)
文章图片
![ctf-cybrics](https://img.it610.com/image/info8/11595d6a3d7e479ebe529c6e2aad8505.jpg)
文章图片
int main()
{
long inv_a = inverse(0xF, 0x100);
char c;
ifstream inFile("../Debug/zakukozh.bin", ios::binary | ios::in);
//以二进制读模式打开文件
if (!inFile) {
cout << "Source file open error." << endl;
return 0;
} ofstream outFile("../Debug/zakukozh.png", ios::binary | ios::out);
//以二进制写模式打开文件
if (!outFile) {
cout << "New file open error." << endl;
inFile.close();
return 0;
} while (inFile.get(c))//每次读取一个字符
{
char tmp = inv_a * (c - 0x59) % 0x100;
outFile.put(tmp);
//每次写入一个字符
}
outFile.close();
inFile.close();
return 0;
}
![ctf-cybrics](https://img.it610.com/image/info8/359b7c0074f245a8a2b25f1833ec5c54.jpg)
文章图片
Oldman Reverse
![ctf-cybrics](https://img.it610.com/image/info8/2b84c74628f7463fbcd66a0f6cabe635.jpg)
文章图片
oldman.asm
.MCALL.TTYOUT,.EXIT
START:
mov#MSG r1
mov #0d r2
mov #32d r3
loop:
mov#MSG r1
add r2 r1
movb(r1) r0
.TTYOUT
sub #1d r3
cmp #0 r3
beqDONE
add #33d r2
swab r2
clrb r2
swab r2
brloop
DONE:
.EXITMSG:
.ascii "cp33AI9~p78f8h1UcspOtKMQbxSKdq~^0yANxbnN)d}k&6eUNr66UK7Hsk_uFSb5#9b&PjV5_8phe7C#CLc#rh0dMzi>_KXGxv1cIs1q(QwpnONOU9PtP35JJ5
SWAB指令交换指定字的高字节和低字节,并且没有字节寻址。
![ctf-cybrics](https://img.it610.com/image/info8/646ac344801b4a21a3d563f4109c3813.jpg)
文章图片
以上资料来自维基百科。得知swab为word的字节交换,clrb为字节清除。还原为C代码如下所示。
#include int main()
{
char msg[] = "cp33AI9~p78f8h1UcspOtKMQbxSKdq~^0yANxbnN)d}k&6eUNr66UK7Hsk_uFSb5#9b&PjV5_8phe7C#CLc#rh0dMzi>_KXGxv1cIs1q(QwpnONOU9PtP35JJ5
![ctf-cybrics](https://img.it610.com/image/info8/fd8ce6c9573d47e0b44f61df23efbc3b.jpg)
文章图片
Tone
![ctf-cybrics](https://img.it610.com/image/info8/2277ecfe41d14eb3a2e1081db33b0600.jpg)
文章图片
该链接是一个y站的视频地址,画面没有啥的,有声音,下载并转换格式为wav,使用audacity打开。
![ctf-cybrics](https://img.it610.com/image/info8/d776dd7a4f284f5db552e4502a400396.jpg)
文章图片
对比频率一一获取到按键序号:
222 999 22 777 444 222 7777 7777 33 222 777 33 8 8 666 66 2 555 333 555 2 4电话按键对应字母:
cybricssecrettonalflag参考链接:https://www.freebuf.com/geek/5507.html
Sender (Network, Baby, 10 pts) 从txt中获取flag:https://cybrics.net/files/intercepted_text.txt
220 ugm.cybrics.net ESMTP Postfix (Ubuntu)
EHLO localhost
250-ugm.cybrics.net
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
AUTH LOGIN
334 VXNlcm5hbWU6
ZmF3a2Vz
334 UGFzc3dvcmQ6
Q29tYmluNHQxb25YWFk=
235 2.7.0 Authentication successful
MAIL FROM:
250 2.1.0 Ok
RCPT TO:
250 2.1.5 Ok
DATA
354 End data with .
From: fawkes
To: Area51
Subject: add - archive pw
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0=62=74=77=2E=0A=0A=70=61=73=73=77=6F=72=64 =66=6F=72 =74=68=65 =61=72=63=
=68=69=76=65 =77=69=74=68 =66=6C=61=67=3A =63=72=61=63=6B=30=57=65=73=74=
=6F=6E=38=38=76=65=72=74=65=62=72=61=0A=0A=63=68=65=65=72=73=21=0A
.
250 2.0.0 Ok: queued as C4D593E8B6
QUIT
221 2.0.0 Bye
扫描域名 ugm.cybrics.net,获取到三个开放端口。
![ctf-cybrics](https://img.it610.com/image/info8/6b43b0f618c3477a97a9b595a2a4503f.jpg)
文章图片
看起来就像是base64编码:
![ctf-cybrics](https://img.it610.com/image/info8/4f5e96f7547a44238aea00f9a2bae0d8.jpg)
文章图片
![ctf-cybrics](https://img.it610.com/image/info8/8aa7de9c00fd4c448bf5186ac5ad3eac.jpg)
文章图片
获取到用户名和密码,尝试远程登陆。其中pop3端口查看邮件,telnet ugm.cybrics.net 110
![ctf-cybrics](https://img.it610.com/image/info8/7fb92646029f4413823b1447cdda629e.jpg)
文章图片
![ctf-cybrics](https://img.it610.com/image/info8/f39298fdde4d434cb1cc2e3386fc8128.jpg)
文章图片
![ctf-cybrics](https://img.it610.com/image/info8/aca932c5661c44aebbebeb3b27a53697.jpg)
文章图片
很明显这是一个名为"secret_flag.zip"的压缩文件,将base64解密后的数据保存为zip文件。
![ctf-cybrics](https://img.it610.com/image/info8/55683f2af5164669a3dea48f23d9433f.jpg)
文章图片
最下面的等号加数字一串看起来像编码,尝试后为:url解码
![ctf-cybrics](https://img.it610.com/image/info8/16a0ae8a12bc492da2ccdc776991fadf.jpg)
文章图片
整理后得到:flag压缩包的密码为crack0Weston88vertebra。解压得到flag。
ProCTF
![ctf-cybrics](https://img.it610.com/image/info8/29e030b3e58f4ef58f1acbde879f0a48.jpg)
文章图片
登陆后环境swi-prolog相关链接:shell执行指令, 有人已经拿到了flag,在user目录下(emmmm,这就是经验吗)。
Bitkoff Bank
Need more money! Need the flag!
http://45.77.201.191/index.php
Mirror: http://95.179.148.72:8083/index.php
![ctf-cybrics](https://img.it610.com/image/info8/9bc6d6c96e32408b9db19b760c8cc324.jpg)
文章图片
使用1$购买flag, $通过btc兑换,btc需要手动点击mine btc按钮,每次增加一点点点点点点点点点点点点。一开始通过截获修改请求但是无效,最后解决办法是保存增加btc的请求,通过脚本循环点击一直到btc足够。
推荐阅读
- 解护网杯一道web(EasyChallenge)
- ctf|ctf-htctf-misc
- C++|一些关于程序内存布局的问题
- QCTF 2018xman夏令营选拔赛
- 第一届桂林电子科技大学绿盟杯CTF大赛 wp
- Capture the flag
- CTF|BUUOJ [2019红帽杯]easyRE
- Buuctf -web wp汇总(二)
- #|CTF-网络信息安全攻防学习平台(脚本关)
- ctf