# Misc

# signin

先 base64 解

image-20240324132345507

微信回复得 flag

image-20240324132435180

# Webshell_pro

通过 base 解密某一返回包获得加密脚本

image-20240325170453651

通过加密脚本写出解密脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

import base64
import libnum
from Crypto.PublicKey import RSA

pubkey_str = """-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCK/qv5P8ixWjoFI2rzF62tm6sDFnRsKsGhVSCuxQIxuehMWQLmv6TPxyTQPefIKufzfUFaca/YHkIVIC19ohmE5X738TtxGbOgiGef4bvd9sU6M42k8vMlCPJp1woDFDOFoBQpr4YzH4ZTR6Ps+HP8VEIJMG5uiLQOLxdKdxi41QIDAQAB
-----END PUBLIC KEY-----
"""

def dec_replace(base64_str: str):
base64_str = base64_str.replace("e5Lg^FM5EQYe5!yF&62%V$UG*B*RfQeM", "/")
base64_str = base64_str.replace("n6&B8G6nE@2tt4UR6h3QBt*5&C&pVu8W", "+")
return base64_str.replace("JXWUDuLUgwRLKD9fD6&VY2aFeE&r@Ff2", "=")

# Decryption function
def decrypt(cipher_text):
cipher_text = base64.b64decode(dec_replace(cipher_text))
plain_text = b""
for i in range(0, len(cipher_text), 128):
part = cipher_text[i:i+128]
dec = libnum.n2s(pow(libnum.s2n(part), pubkey.e, pubkey.n))
plain_text += dec
return plain_text

# Main execution
if __name__ == '__main__':
pubkey = RSA.import_key(pubkey_str)

c = "Encrypted Data Here"

decrypted_message = decrypt(c)
print(f"Decrypted data: {decrypted_message}")

通过解密 shell 请求包得到密文

image-20240324133142236

在返回包里发现密钥线索

image-20240325170618802

后利用密钥在在线网站 aes 解密得 flag

image-20240325170940049

# Minecraft:SEED

利用 19MisterX98/SeedcrackerX (github.com) 这个 mod 跑图大概 30min 以内即得 seed,后通过 /getflag seed 的命令得 flag

# world.execute.me

题目意思要搜寻 secrets.Heart 值

image-20240324132709567

通过 github issue 问问题的方式输入命令,得到反馈

通过尝试 echo $HEART 这一代码可以获得 flag

image-20240324133012360

# ctf80

通过 nc 连接得到题目意思:用五种语言写代码输出人名,但得在五种运行环境下分别输出,还得在同一串代码之中

image-20240324133444603

利用宏定义,以及五种代码之间注释的特性可写出解密脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

#/*tanji<?php exit();?>*/
#include <stdio.h>/*
print ( 0 and "Randark_JMT" or "rec");
"""""
*/
#if __cplusplus
char msg[4] = {'C', 'a', 'i', 'n'};
#else
char msg[9] = {'c', 'r', 'a', 'z', 'y', 'm', 'a', 'n', '\n'};
#endif
int main() { int i; for(i = 0; i < 9; ++i) putchar(msg[i]); return 0;}
/*
"""
#*/

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

泠鹇 微信支付

微信支付

泠鹇 支付宝

支付宝

泠鹇 贝宝

贝宝