Web
打比赛前先撸一只猫!
直接传参:
http://118.25.14.40:8110/?cat=dog
得到flag: Syc{I_actu4l1y_Lik3_d0gs}
你看见过我的菜刀么
flag:Syc{Such_a_cl3ar_b0y}
BurpSuiiiiiit!!!
flag:Syc{BurpExtender_Are_guns_F0r_Hack3rs}
Easysql
简单sql注入,试试万能密码:
用户名:admin' or '1'='1' or '1'='1' #
密码随意
得到Syc{sqL_inj3cti0n_1s_re4lly_fUn}
性感潇文清,在线算卦
查看源码:
1 | <!DOCTYPE html> |
先学一下条件漏洞先:
条件竞争漏洞是一种服务器端的漏洞,由于服务器端在处理不同用户的请求时是并发进行的,因此,如果并发处理不当或相关操作逻辑顺序设计的不合理时,将会导致此类问题的发生。
1 | # -*- coding: utf-8 -*- |
Misc
签到
Syc{w3lc0me_t0_th3_10th_geek!}
啊啊啊啊啊啊啊!!!我好兴奋!!!
这个我觉得很有问题,别人说直接在winhex中可以看到,但我这看不见
Syc{Do_You_know_Ayrain}
散打黑客的压缩包
我拼着生命危险从散打黑客的电脑里偷来的压缩包,大家快跟我一起破解开。看看藏着什么东西。
下载下来有一个压缩包,被加密了,使用暴力破解,得到密码为:3130
随后解压,得到另外一个压缩包,还是被加密了,同样用工具进行解密,得到密码7665
解压后,得到一个txt文件:
1 | 好吧,其实我已经提前破解掉了。 |
得到Syc{Weak_passwd_are_DANGER0us}
是谁杀了谁
注意自己的HP,别被气死了。
Pwn
Find tools
Find right tools,so easy!
nc pwnto.fun 9999
打开连接,看到:
1 | Hi boys, this game may be a new things for u. |
题目说find tools
,里面说pwntools是好工具,现在就可以写脚本捕获输出
1 | #coding=utf-8 |
现在就得到一段字符串,发现是base64
加密,这个就是password,输入password,getflag
完整脚本:
1 | #coding=utf-8 |
得到flag:Syc{pwn_1s_s0_fun}
Baby rop
下载文件分析一下安全设置:
没有打开栈溢出保护,用ida64打开看看源程序:
1 | int __cdecl main(int argc, const char **argv, const char **envp) |
存在read函数,所以可以考虑进行栈溢出,查看.data表
由于是静态地址,所以直接使用相应地址,但传参还是使用ROP链进行传参
1 | ╰─○ ROPgadget --binary ./hello --only "pop|ret" |
找到一个rdi可用,脚本如下:
1 | #coding=utf-8 |
得到flag:Syc{S0_easy_and_S0_good}
Baby Shellcode
打
CSGO
,它不香吗?P90 rush b, let's go.
checksec
一下:
1 | Arch: amd64-64-little |
开启了Full RELRO
,无法修改got
表,NX保护开启
,也就是栈中数据不能执行,可以尝试使用rop
进行绕过
用ida
打开,查看main函数:
1 | __int64 __fastcall main(__int64 a1, char **a2, char **a3) |
mmap
可以实现内存共享,那么,我们可以将shellcode
写入buf
里面,
RE
jiang’s fan 密码都记错?你个假粉丝!!
使用ida
打开,找到Syc{I_am_4_fan_of_Ji@ng}
secret
用ida打开,然后发现一行编码:
5379637B6E30775F794F755F6B6E6F775F6234736531367D
像个加密形式,试着解密,开始使用base64进行解码,发现不行,后来使用hex解码得到Syc{n0w_yOu_know_b4se16}
Easy VB
我的IDA怎么不能F5了,这可怎么办啊?
file一下
1 | Easy VB.exe: PE32 executable (GUI) Intel 80386, for MS Windows |
用ida
打开,发现只有一个函数,
冰菓
千反田不小心把重要的东西落在了古典文学社,你能帮她找到吗?
点开界面,发现:
说点他有惊喜,点几次发现:
使用这个工具进行逆向,找到关键加密函数:
1 | using System; |
将此函数进行逆向就可得到flag
1 |
|
flag:Syc{1_Am_s0_curi0uS}
PYC是啥子嘛?
听说
py
不需要逆向,那pyc
呢,pyc
是什么呢?
在线工具逆向:
1 | #!/usr/bin/env python |
逆向脚本如下:
1 |
|
得到字符串$$$$33333&&666&&33333$$$$$$$6666666&
所以flag为:Syc{$$$$33333&&666&&33333$$$$$$$6666666&}
Andriod
Sign_in
用jadx-gui进行反编译:
找到关键代码:
1 | public void onClick(View view) { |
getString函数通过id查找字符串,在resource文件查找
一段base64码
,直接解密:Syc{Si9n_1n_I3_E4sy!}
Coding
Dragon Quest
按照题目要求编写C语言程序
1 | Program description: |
直接编程就行,注意一定是C语言,C++都不行
1 |
|